সুচিপত্র:

Zombie Detecting Smart Security Owl (Deep Learning): 10 ধাপ (ছবি সহ)
Zombie Detecting Smart Security Owl (Deep Learning): 10 ধাপ (ছবি সহ)

ভিডিও: Zombie Detecting Smart Security Owl (Deep Learning): 10 ধাপ (ছবি সহ)

ভিডিও: Zombie Detecting Smart Security Owl (Deep Learning): 10 ধাপ (ছবি সহ)
ভিডিও: Skibidi toilet zombie Vs cameraman 4 2024, নভেম্বর
Anonim

সবাইকে হাই, T3chFlicks এ স্বাগতম! এই হ্যালোইন টিউটোরিয়ালে, আমরা আপনাকে দেখাবো কিভাবে আমরা একটি জাগতিক গৃহস্থালী ক্লাসিকের উপর একটি সুপার স্পুকি টুইস্ট রাখি: নিরাপত্তা ক্যামেরা।

কিভাবে ?! আমরা একটি নাইট ভিশন পেঁচা তৈরি করেছি যা মানুষকে ট্র্যাক করতে ইমেজ প্রসেসিং ব্যবহার করে। ওহ, এবং এটা hoots, ঠিক বাস্তব জিনিস মত!

আমরা এই প্রকল্পটি নিয়ে খুব উচ্ছ্বসিত এবং নতুন রাস্পবেরি পাই 4 নামার পর থেকে আমরা এটি করার জন্য অপেক্ষা করছি। এটি 4GB র‍্যাম পেয়েছে, যা রিয়েল টাইমে ডিপ লার্নিং মডেলের সাথে কিছু ইমেজ প্রসেসিং সহ সত্যিই উত্তেজনাপূর্ণ সম্ভাবনার লোড খুলে দেয়।

আপনি যদি হ্যালোইনে জম্বি আসার জন্য নজর রাখতে চান, অথবা সারা বছর আপনার বাগানটি পরীক্ষা করে দেখুন, এটি আপনার জন্য। নিরাপত্তা কার্যকর হতে বিরক্তিকর হতে হবে না!

সরবরাহ

এই নির্মাণের জন্য, আপনার প্রয়োজন হবে:

  • রাস্পবেরি পাই 4 (4 গিগাবাইট র্যাম) আমাজন
  • নাইট ভিশন ক্যামেরা আমাজন
  • মাইক্রো সার্ভো অ্যামাজন
  • নকল পেঁচা আমাজন
  • আঠালো আমাজন
  • আমাজন আঁকা
  • আমাজন স্ক্রু
  • ইউএসবি স্পিকার আমাজন
  • বড় (5v+) পোর্টেবল পাওয়ার সাপ্লাই আমাজন
  • 3 ডি প্রিন্টার আমাজন

ধাপ 1: ধাপ 1: শিরচ্ছেদ

ধাপ 1: শিরচ্ছেদ
ধাপ 1: শিরচ্ছেদ
ধাপ 1: শিরচ্ছেদ
ধাপ 1: শিরচ্ছেদ
ধাপ 1: শিরচ্ছেদ
ধাপ 1: শিরচ্ছেদ

ক। পেঁচা থেকে মাথা টানুন (কখনও কখনও আপনাকে কেবল নিষ্ঠুর হতে হবে) তার মাথায় শক্ত করে টান দিয়ে যেখানে এটি বসন্তের সাথে সংযুক্ত থাকে।

খ। পেঁচার মাথা শরীরের সাথে একটি সিলিন্ডার দ্বারা সংযুক্ত থাকে যা একটি বড় ঝর্ণার উপরে বসে থাকে। স্ক্রু বের করে এই সিলিন্ডারটি সরান।

গ। আপনি যে সিলিন্ডারটি সবেমাত্র সরিয়েছেন তা দুটি অংশ, একটি প্লাস্টিকের কাপ এবং একটি ভারবহন যা এর ভিতরে বসে। একটি স্ক্রু ড্রাইভার (বা অনুরূপ সরঞ্জাম) ব্যবহার করে সিলিন্ডার থেকে ভারবহনটি সরান।

ঘ। সিলিন্ডারকে বসন্তের সাথে সংযুক্ত স্ক্রু ব্যবহার করে, সিলিন্ডারের সাথে সার্ভো সংযুক্ত করুন।

ঙ। শরীরে সুরক্ষিত তিনটি স্ক্রু খুলে বসন্তটি সরান।

চ। পেঁচার শরীরের উপরের অংশে একটি গর্ত তৈরি করুন যা কিছু তারের এবং ক্যামেরার তারের জন্য যথেষ্ট বড়। আমরা এটি করার জন্য একটি ড্রিল এবং একটি স্ক্রু ড্রাইভার এর একটি অপ্রয়োজনীয় সমন্বয় ব্যবহার করেছি।

ধাপ 2: ধাপ 2: স্মার্ট যুক্ত করুন

ধাপ 2: স্মার্ট যুক্ত করুন
ধাপ 2: স্মার্ট যুক্ত করুন
ধাপ 2: স্মার্ট যুক্ত করুন
ধাপ 2: স্মার্ট যুক্ত করুন
ধাপ 2: স্মার্ট যুক্ত করুন
ধাপ 2: স্মার্ট যুক্ত করুন

ক। 3D ক্যামেরা কেস প্রিন্ট করুন এবং পেঁচার সাথে মিলিয়ে রং করুন - আমরা কিছু সস্তা এক্রাইলিক পেইন্ট ব্যবহার করেছি। পেইন্টিং একটি গুরুত্বপূর্ণ পদক্ষেপ নয়, তবে এটি নাটকীয়ভাবে সামগ্রিক চেহারা উন্নত করে!

খ। পেঁচাটির মাথা উল্টো করে, ক্যামেরা কেসের উপরের অংশটি তার মাথার ভিতরে স্ক্রু করুন, যেখানে চঞ্চু বের হয়।

গ। ক্ষেত্রে ক্যামেরা রাখুন এবং ক্যামেরা কেবল সংযুক্ত করুন।

ঘ। বসন্তের উপরের প্যানেলে সার্ভো আঠালো করুন।

ঙ। সার্ভ পিনের সাথে দীর্ঘ তারের সংযোগ করুন (5V, Gnd, সংকেত)

চ। ক্যামেরার ক্যাবল এবং তারের সাহায্যে বসন্তের মাধ্যমে এবং শরীরের উপরের অংশে আপনার তৈরি গর্তের মাধ্যমে যাতে তারা পেঁচার ফাঁপা শরীরের ভিতরে থাকে।

ধাপ 3: ধাপ 3: তাকে পূরণ করুন

ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন
ধাপ 3: তাকে পূরণ করুন

ক। পেঁচার নিচ থেকে প্লাগটি সরান এবং প্লাস্টিক কেটে এই গর্তের আকার বাড়ান। রাস্পবেরি পাই এবং স্পিকার পেঁচার শরীরে ফিট না হওয়া পর্যন্ত আকার বাড়ানো চালিয়ে যান।

খ। একবার সমস্ত উপাদান ভিতরে ফিট করার জন্য গর্তটি যথেষ্ট বড় হয়ে গেলে, ক্যামেরার তারটি টানুন যা আপনি পেঁচাটির উপরের অংশের ভিতর থেকে খাওয়ান এবং রাস্পবেরি পাইতে প্লাগ করুন।

গ। একইভাবে, servo তারের মাধ্যমে টানুন এবং রাস্পবেরি পাইতে তাদের প্লাগ করুন:

  • +5v servo => +5V on Pi
  • Gnd servo => gnd Pi
  • সিগন্যাল সার্ভো => পিন 12 পাই

ঘ। ইউএসবি স্পিকারটি পাইতে লাগান।

ঙ। পাইতে এসডি কার্ড োকান।

চ। পোর্টেবল পাওয়ার সাপ্লাই ব্যবহার করে পাওয়ার পাই।

ছ। বেসের গর্তের মধ্য দিয়ে পেঁচা, পাওয়ার সাপ্লাই এবং স্পিকার োকান।

ধাপ 4: ধাপ 4: পাই সেটআপ করুন

ধাপ 4: পাই সেটআপ করুন
ধাপ 4: পাই সেটআপ করুন

সমস্ত কোড https://github.com/sk-t3ch/cctv-owl এ পাওয়া যাবে!

ক। রাস্পিয়ান ডাউনলোড করুন এবং বেলেনা ইচার ব্যবহার করে আপনার এসডি কার্ডে আপলোড করুন।

খ। দূর থেকে আপনার পাই অ্যাক্সেস করতে

  • আপনার বুট এসডি কার্ডে ssh নামে একটি ফাইল যোগ করুন
  • Wpa_supplicant.conf নামে একটি ফাইল যোগ করুন এবং আপনার ওয়াইফাই শংসাপত্রগুলি রাখুন

    ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1

    নেটওয়ার্ক = {ssid = "MySSID" psk = "MyPassword"}

গ। পাইতে এসডি কার্ড andোকান এবং ssh এর মাধ্যমে একটি অ্যাক্সেস চেষ্টা করুন।

ধাপ 5: ধাপ 5: মাথা সরানো

ধাপ 5: মাথা সরানো
ধাপ 5: মাথা সরানো

মাথা সরানোর জন্য কোড টিউটোরিয়াল (রাস্পবেরি পাই দিয়ে একটি সার্ভো নিয়ন্ত্রণ করা)

পাইতে চলমান একটি সার্ভো নিয়ন্ত্রণ করতে আমরা স্ক্রিপ্ট তৈরি করতে যাচ্ছি যা GPIO পিনগুলিকে নিয়ন্ত্রণ করে যা সার্ভো সংযুক্ত।

ক। সার্ভিকে পাই এর সাথে সংযুক্ত করুন:

  • +5v servo => +5V on Pi
  • Gnd servo => gnd on Pi
  • সিগন্যাল সার্ভো => পাই 12 তে পিন

খ। সার্ভার সিগন্যাল পিনে PWM ব্যবহার করার জন্য আপনাকে প্রথমে জিপিও পিন সেট আপ করতে হবে।

গ। তারপর, এটি সিগন্যাল পিনের ডিউটি চক্র নির্বাচন করার মতই সহজ (এখানে ব্যাখ্যা করা হয়েছে) o.৫ ডিগ্রি থেকে o.৫ থেকে degrees ডিগ্রী ডিউটি চক্রের সাথে সার্ভো সরানোর জন্য যখন ডিউটি সাইকেল ২.৫ এবং ডিউটি চক্রের সাথে ১ degrees০ ডিগ্রি 12.5

RPi. GPIO GPIO হিসাবে আমদানি করুন

আমদানির সময় GPIO.setmode (GPIO. BOARD) GPIO.setwarnings (মিথ্যা) GPIO.setup (12, GPIO. OUT) p = GPIO. PWM (12, 50) p.start (7.5) try: while true: p. ChangeDutyCycle (7.5) # 90 ডিগ্রী সময় ঘুম (1) p. ChangeDutyCycle (2.5) # 0 degree time.sleep (1) p. ChangeDutyCycle (12.5) # 180 degree time.sleep (1) কীবোর্ড ব্যতীত বিরতি: p.stop () GPIO.cleanup ()

ধাপ 6: ধাপ 6: এটি হুট করা

ধাপ 6: এটি হুট করা
ধাপ 6: এটি হুট করা
ধাপ 6: এটি হুট করা
ধাপ 6: এটি হুট করা

পেঁচা হুট তৈরির জন্য কোড টিউটোরিয়াল (রাস্পবেরি পাই দিয়ে অডিও বাজানো)

ক। ইউএসবি স্পিকার লাগান।

খ। একটি শব্দ ডাউনলোড করুন - আমরা একটি ভুতুড়ে হুট বেছে নিয়েছি।

গ। এই কমান্ডটি চালিয়ে শব্দ বাজান: omxplayer -o alsa: hw: 1, 0 owl_sound.mp3

[ঘ। যদি এটি কাজ না করে, আপনার পাই কোন আউটপুট ব্যবহার করছে এবং কোন ভলিউমে alsamixer কমান্ড ব্যবহার করে দেখুন - আপনাকে মিক্সার স্ক্রিন দিয়ে স্বাগত জানানো হবে যেখানে আপনি ভলিউম পরিবর্তন করতে পারেন এবং আপনার মিডিয়া ডিভাইস নির্বাচন করতে পারেন। আপনার সাউন্ডের ভলিউম বাড়াতে, এই omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500 এর মত কমান্ড করুন, পাইথন ব্যবহার করে এই সাউন্ডটি চালানোর জন্য, আমাদের পরীক্ষার স্ক্রিপ্টটি দেখুন

আমদানি উপপ্রক্রিয়া

কমান্ড = "omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500" player = subprocess. Popen (command.split ('), stdin = subprocess. PIPE, stdout = subprocess. PIPE, stderr = subprocess পাইপ)

ধাপ 7: ধাপ 7: পাই থেকে ভিডিও স্ট্রিম করুন

ধাপ 7: পাই থেকে ভিডিও স্ট্রিম করুন
ধাপ 7: পাই থেকে ভিডিও স্ট্রিম করুন
ধাপ 7: পাই থেকে ভিডিও স্ট্রিম করুন
ধাপ 7: পাই থেকে ভিডিও স্ট্রিম করুন

কোড টিউটোরিয়াল একটি রাস্পবেরি পাই ক্যামেরা স্ট্রিম তৈরি করছে

ক। Python app.py চালান এবং আপনার স্থানীয় নেটওয়ার্কে https://raspberrypi.local: 5000 দেখুন

খ। এই কোডটি নেওয়া হয়েছিল এবং মিগুয়েল গ্রিনবার্গ থেকে কিছুটা অ্যাডাপ্ট করা হয়েছিল https://blog.miguelgrinberg.com/post/flask-video-… তিনি কীভাবে এটি করা হয়েছে তা সুন্দরভাবে ব্যাখ্যা করেছেন এবং তার টিউটোরিয়ালগুলি দুর্দান্ত-ডেফো তাকে পরীক্ষা করে দেখুন! মূল ধারণা হল যে আমরা স্ট্রিমিং গতি উন্নত করতে থ্রেডিং এবং জেনারেটর ব্যবহার করি।

ধাপ 8: ধাপ 8: শরীর সনাক্তকরণ

ধাপ 8: শরীর সনাক্তকরণ
ধাপ 8: শরীর সনাক্তকরণ

শরীর সনাক্তকরণের জন্য কোড (রাস্পবেরি পাই সহ একটি ভিডিও স্ট্রিমে ImageNetSSD)

ক। যেহেতু আমরা রাস্পবেরি পাই 4 ব্যবহার করছি, তাই আমরা ভেবেছিলাম যে এই পর্যন্ত মৌলিক হারকাসকেড পদ্ধতির পরিবর্তে কিছু গভীর শেখার মডেলগুলি ব্যবহার করা ভাল।

খ। আমরা সেখানে কিছু প্রাক-প্রশিক্ষিত মডেল দেখেছি, যেমন YOLOv3 যা দেখতে খুব সুন্দর। YOLOv3 ছোট ওজন, যা পাই এর জন্য নিখুঁত হত, কিন্তু আমরা এটি চালাতে পারিনি:(গ। পরিবর্তে, আমরা MobileSSD মডেলটি বেছে নিয়েছি যা আমরা openCVs DNN (গভীর নিউরাল নেট) মডিউল ব্যবহার করে চালাতে পারি, যেমনটি আমরা এই কোড থেকে শিখেছি: https://heartbeat.fritz.ai/real-time-object-detection-on-raspberry -pi-using-opencv-dnn-98827255fa60 এবং ইমেজ প্রসেসিং টিউটোরিয়ালের নায়ক অ্যাড্রিয়ান রোজব্রক থেকে: https://www.pyimagesearch.com/2017/09/11/object-detection-with-deep-learning-and- opencv/

ঘ। যাইহোক, যেহেতু আমরা এই সামগ্রীটি প্রবাহিত করার চেষ্টা করছি এবং প্রতিটি ফ্রেমে মডেলগুলি চালানোর চেষ্টা করছি, এটি একটি ল্যাগি, খণ্ডিত ভিডিওতে পরিণত হয়। আমরা অ্যাড্রিয়ান রোজব্রক থেকে আবার শিখেছি যেখানে ক্যামেরা স্ট্রিমকে এত ভারীভাবে ব্লক না করে এগুলি প্রক্রিয়া করা যায়।

ঙ। কোডটি নিজে চালানোর চেষ্টা করুন:)

ধাপ 9: ধাপ 9: জম্বি বিজ্ঞপ্তি পাঠানো

ধাপ 9: জম্বি বিজ্ঞপ্তি পাঠানো
ধাপ 9: জম্বি বিজ্ঞপ্তি পাঠানো
ধাপ 9: জম্বি বিজ্ঞপ্তি পাঠানো
ধাপ 9: জম্বি বিজ্ঞপ্তি পাঠানো

একটি বিজ্ঞপ্তি পাঠানোর কোড (ফোনে অজগর)

ক। আমরা https://pushed.co বিজ্ঞপ্তি পরিষেবা ব্যবহার করার সিদ্ধান্ত নিয়েছি।

খ। আপনি একটি বিনামূল্যে অ্যাকাউন্ট পেতে পারেন এবং অ্যাপটি ডাউনলোড করতে পারেন এবং সত্যিই দ্রুত মোবাইল বিজ্ঞপ্তি তৈরি করতে পারেন। আমরা একটি পাইথন স্ক্রিপ্ট ব্যবহার করে বিজ্ঞপ্তি তৈরি করেছি।

আমদানি অনুরোধ

payload = {"app_key": "APP_KEY", "app_secret": "APP_SECRET", "target_type": "app", "content": "পেঁচা একটি জম্বি সনাক্ত করেছে।" } r = request.post ("https://api.pushed.co/1/push", ডেটা = পেলোড)

এটা খুবই সহজ এবং আপনি আপনার বিজ্ঞপ্তির নাম কাস্টমাইজ করতে পারেন!

ধাপ 10: কি একটি হুট

কি হুট!
কি হুট!

আমরা আশা করি আপনি আমাদের স্মার্ট সিকিউরিটি আউল প্রকল্পটি উপভোগ করেছেন! এটি একটি দারুণ মজার ঘটনা হয়েছে এবং আমার বিশ্বস্ত পেঁচা দ্বারা আমার বাড়ি রক্ষা করা হচ্ছে জেনে আমি সম্পূর্ণ নিরাপদ বোধ করছি।

যদি আপনি মনে করেন যে এটি আপনার স্মার্ট হোমের জন্য একটি দুর্দান্ত হ্যালোইন সংযোজন হবে, অনুগ্রহ করে ইন্সট্রাকটেবল হ্যালোইন প্রতিযোগিতায় আমাদের জন্য ভোট দিন এবং যথারীতি, দয়া করে লাইক, কমেন্ট এবং সাবস্ক্রাইব করতে ভুলবেন না!

আমাদের মেইলিং লিস্টে সাইন আপ করুন!

প্রস্তাবিত: