সুচিপত্র:
- ধাপ 1: অংশ তালিকা
- ধাপ 2: রাস্পবেরি পাই সেট আপ করা
- ধাপ 3: রাস্পবেরি পাই এবং ক্যামেরা মাউন্ট
- ধাপ 4: ট্রাফিক লাইট সমাবেশ
- ধাপ 5: ওয়্যারিং (পার্ট 1)
- ধাপ 6: পরিবেশ তৈরি করা
- ধাপ 7: পিভিসি ফ্রেম চূড়ান্ত করা
- ধাপ 8: তারের (অংশ 2)
- ধাপ 9: সমাপ্ত
- ধাপ 10: অতিরিক্ত (ছবি)
ভিডিও: লাইভ অবজেক্ট ডিটেকশন ব্যবহার করে ট্র্যাফিক প্যাটার্ন অ্যানালাইজার: 11 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
আজকের বিশ্বে, নিরাপদ সড়কের জন্য ট্রাফিক লাইট অপরিহার্য। যাইহোক, অনেক সময়, ট্রাফিক লাইটগুলি এমন পরিস্থিতিতে বিরক্তিকর হতে পারে যেখানে কেউ আলোর দিকে আসছে যেমনটি লাল হয়ে যাচ্ছে। এটি সময় নষ্ট করে, বিশেষ করে যদি রাস্তায় অন্য কেউ না থাকলে আলো একটি একক যানবাহনকে ছেদ দিয়ে যেতে বাধা দেয়। আমার উদ্ভাবন হল একটি স্মার্ট ট্রাফিক লাইট যা প্রতিটি রাস্তায় গাড়ির সংখ্যা গণনার জন্য ক্যামেরা থেকে লাইভ অবজেক্ট ডিটেকশন ব্যবহার করে। এই প্রকল্পের জন্য আমি যে হার্ডওয়্যার ব্যবহার করব তা হল রাস্পবেরি পাই 3, একটি ক্যামেরা মডিউল এবং আলোর জন্য বিভিন্ন ইলেকট্রনিক হার্ডওয়্যার। রাস্পবেরি পাইতে ওপেনসিভি ব্যবহার করে, সংগৃহীত তথ্য জিপিআইওর মাধ্যমে এলইডি নিয়ন্ত্রণ করে এমন কোডের মাধ্যমে চালানো হবে। এই সংখ্যার উপর নির্ভর করে, ট্রাফিক লাইট পরিবর্তন হবে, গাড়িগুলিকে সবচেয়ে অনুকূল ক্রমে যেতে দেবে। এই ক্ষেত্রে, সর্বাধিক গাড়ির লেন দিয়ে যেতে হবে যাতে কম গাড়ির লেনটি অলস হয়ে পড়ে, বায়ু দূষণ কমায়। এটি এমন পরিস্থিতির অবসান ঘটাবে যখন অনেকগুলো গাড়ি থামানো হয় যখন ছেদ সড়কে কোনো গাড়ি থাকে না। এটি কেবল সবার জন্য সময় বাঁচায় তা নয়, এটি পরিবেশকেও বাঁচায়। মানুষ যখন তাদের ইঞ্জিন অলস হয়ে একটি স্টপ সাইন এ থামায় তখন বায়ু দূষণের পরিমাণ বৃদ্ধি পায়, তাই একটি স্মার্ট ট্রাফিক লাইট তৈরি করে, আমি আলোর প্যাটার্নগুলিকে অপ্টিমাইজ করতে সক্ষম হচ্ছি যাতে গাড়িগুলি তাদের গাড়ি থামিয়ে কমপক্ষে সময় ব্যয় করতে পারে । পরিশেষে, এই ট্রাফিক লাইট সিস্টেম শহর, শহরতলী বা এমনকি গ্রামাঞ্চলে প্রয়োগ করা যেতে পারে যাতে মানুষের জন্য আরো দক্ষ হতে পারে বায়ু দূষণ।
ধাপ 1: অংশ তালিকা
উপকরণ:
রাস্পবেরি পাই 3 মডেল বি v1.2
রাস্পবেরি পাই ক্যামেরা v2.1
5V/1A মাইক্রো ইউএসবি পাওয়ার সাপ্লাই
রাস্পবিয়ান জেসির সাথে HDMI মনিটর, কীবোর্ড, মাউস এসডি কার্ড
রাস্পবেরি পাই জিপিআইও ব্রেকআউট কেবল
লাল, হলুদ, সবুজ LEDs (প্রতিটি রঙের 2 টি)
রাস্পবেরি পাই (7 অনন্য রং) জন্য মহিলা সংযোগকারী
মিশ্র 24 গেজ তারের (বিভিন্ন রং) + তাপ সঙ্কুচিত টিউবিং
2’x2’কাঠের প্যানেল বা প্ল্যাটফর্ম
কাঠের স্ক্রু
কালো পৃষ্ঠ (কার্ডবোর্ড, ফেনা বোর্ড, পোস্টার বোর্ড, ইত্যাদি)
রাস্তার চিহ্নের জন্য সাদা (বা কালো ছাড়া অন্য কোন রঙ) টেপ
কালো স্প্রে পেইন্ট (পিভিসি জন্য)
90”90 ডিগ্রি কনুই জয়েন্টের সাথে পিভিসি পাইপ (2), টি সকেট (1), মহিলা অ্যাডাপ্টার (2)
সরঞ্জাম
তাতাল
3D প্রিন্টার
বিভিন্ন ড্রিল বিট দিয়ে ড্রিল করুন
ব্রেডবোর্ড
তাপ বন্দুক
ধাপ 2: রাস্পবেরি পাই সেট আপ করা
রাস্পবেরি পাইতে এসডি কার্ড লোড করুন এবং বুট করুন।
প্রয়োজনীয় OpenCV লাইব্রেরি ইনস্টল করার জন্য এই নির্দেশিকা অনুসরণ করুন। আপনার এই পদক্ষেপটি করার সময় আছে তা নিশ্চিত করুন, কারণ OpenCV লাইব্রেরি ইনস্টল করতে কয়েক ঘন্টা সময় লাগতে পারে। এখানে আপনার ক্যামেরা ইনস্টল এবং সেট আপ করতে ভুলবেন না।
আপনি পিপ ইনস্টল করা উচিত:
পিকামেরা
জিপিওজিরো
RPi. GPIO
এখানে চূড়ান্ত কোড:
picamera.array থেকে PiRGBArray আমদানি করুন
Picamera থেকে PiCamera আমদানি করুন
picamera.array আমদানি করুন
np হিসাবে numpy আমদানি করুন
আমদানির সময়
আমদানি cv2
RPi. GPIO GPIO হিসাবে আমদানি করুন
আমদানির সময়
GPIO.setmode (GPIO. BCM)
আমি জন্য (23, 25, 16, 21):
GPIO.setup (i, GPIO. OUT)
ক্যাম = PiCamera ()
cam.resolution = (480, 480)
cam.framerate = 30
কাঁচা = PiRGBArray (ক্যাম, সাইজ = (480, 480))
সময় ঘুম (0.1)
colorLower = np.array ([0, 100, 100])
colorUpper = np.array ([179, 255, 255])
initvert = 0
inithoriz = 0
কাউন্টার = 0
cam.capture_continuous (কাঁচা, বিন্যাস = "bgr", use_video_port = সত্য) ফ্রেমে
ফ্রেম = ফ্রেম
hsv = cv2.cvtColor (ফ্রেম, cv2. COLOR_BGR2HSV)
মাস্ক = cv2.in Range (hsv, colorLower, colorUpper)
মুখোশ = cv2.blur (মুখোশ, (3, 3))
মুখোশ = cv2.dilate (মুখোশ, কিছুই নয়, পুনরাবৃত্তি = 5)
মাস্ক = cv2.erode (মুখোশ, কিছুই নয়, পুনরাবৃত্তি = 1)
মুখোশ = cv2.dilate (মুখোশ, কিছুই নয়, পুনরাবৃত্তি = 3)
আমি, thresh = cv2.threshold (মুখোশ, 127, 255, cv2. THRESH_BINARY)
cnts = cv2.findContours (থ্রেশ, cv2. RETR_TREE, cv2. CHAIN_APPROX_SIMPLE) [-2]
কেন্দ্র = কোনটি নয়
উল্লম্ব = 0
দিগ = 0
যদি len (cnts)> 0:
c এর জন্য cnts:
(x, y), ব্যাসার্ধ = cv2.minEnclosingCircle (c)
কেন্দ্র = (int (x), int (y))
ব্যাসার্ধ = int (ব্যাসার্ধ)
cv2. বৃত্ত (ফ্রেম, কেন্দ্র, ব্যাসার্ধ, (0, 255, 0), 2)
x = int (x)
y = int (y)
যদি 180 <x <300:
যদি y> 300:
vert = vert +1
এলিফ y <180:
vert = vert +1
অন্য:
vert = vert
যদি 180 <y <300:
যদি x> 300:
দিগন্ত = দিগ +1
এলিফ x <180:
দিগন্ত = দিগন্ত +1
অন্য:
দিগন্ত = দিগন্ত
যদি vert! = initvert:
"উল্লম্ব গলিতে গাড়ি:" + str (উল্লম্ব) মুদ্রণ করুন
initvert = vert
প্রিন্ট করুন "অনুভূমিক লেনে গাড়ি:" + str (দিগন্ত)
inithoriz = দিগন্ত
ছাপা '----------------------------'
দিগন্ত! = inithoriz:
"উল্লম্ব গলিতে গাড়ি:" + str (উল্লম্ব) মুদ্রণ করুন
initvert = vert
প্রিন্ট করুন "অনুভূমিক লেনে গাড়ি:" + str (দিগন্ত)
inithoriz = দিগন্ত
ছাপা '----------------------------'
যদি vert <horizont:
GPIO.output (23, GPIO. HIGH)
GPIO.output (21, GPIO. HIGH)
GPIO.output (16, GPIO. LOW)
GPIO.output (25, GPIO. LOW)
দিগন্ত <vert:
GPIO.output (16, GPIO. HIGH)
GPIO.output (25, GPIO. HIGH)
GPIO.output (23, GPIO. LOW)
GPIO.output (21, GPIO. LOW)
cv2.imshow ("ফ্রেম", ফ্রেম)
cv2.imshow ("HSV", hsv)
cv2.imshow ("থ্রেশ", থ্রেশ)
কাঁচা (0)
যদি cv2.waitKey (1) এবং 0xFF == ord ('q'):
বিরতি
cv2.destroyAllWindows ()
GPIO.cleanup ()
ধাপ 3: রাস্পবেরি পাই এবং ক্যামেরা মাউন্ট
3D প্রিন্ট কেস এবং ক্যামেরা মাউন্ট এবং একত্রিত।
ধাপ 4: ট্রাফিক লাইট সমাবেশ
ব্রেডবোর্ড দিয়ে ট্রাফিক লাইট পরীক্ষা করুন। LEDs এর প্রতিটি বিপরীত সেট একটি anode ভাগ করে, এবং তাদের সব একটি সাধারণ ক্যাথোড (স্থল) ভাগ। মোট 7 টি ইনপুট তার থাকতে হবে: 1 টি LEDS (6) + 1 স্থল তারের জন্য। ট্রাফিক লাইট সোল্ডার এবং একত্রিত করুন।
ধাপ 5: ওয়্যারিং (পার্ট 1)
মহিলা হেডার পিনগুলি প্রায় 5 ফুট তারের মধ্যে বিক্রি করুন। এই দিকগুলি হল যে এই তারগুলি পিভিসি পাইপের মাধ্যমে পরে সাপ দেবে। লাইটের বিভিন্ন সেট (2 x 3 রঙ এবং 1 স্থল) আলাদা করতে সক্ষম হতে ভুলবেন না। এই ক্ষেত্রে, আমি আরেকটি লাল, হলুদ এবং নীল তারের প্রান্তকে শার্পি দিয়ে চিহ্নিত করেছি যাতে আমি জানি কোনটি।
ধাপ 6: পরিবেশ তৈরি করা
পরিবেশ গড়ে তুলুন এইভাবে একটি 2 ফুট বর্গ কাঠের প্যালেট তৈরি করুন। স্ক্র্যাপ কাঠ ঠিক আছে কারণ এটি েকে দেওয়া হবে। আপনার অ্যাডাপ্টারের সাথে মানানসই একটি গর্ত ড্রিল করুন। পিভিসি পাইপকে জায়গায় সুরক্ষিত করার জন্য প্যালেটের পাশ দিয়ে ড্রিল স্ক্রু। নীচে কাঠের প্যালেট মেলাতে কালো ফেনা বোর্ড কাটুন। পিভিসি পাইপের চারপাশে একটি গর্ত ড্রিল করুন। বিপরীত কোণে পুনরাবৃত্তি করুন। কিছু সাদা টেপ দিয়ে রাস্তা চিহ্নিত করুন।
ধাপ 7: পিভিসি ফ্রেম চূড়ান্ত করা
উপরের পাইপে, একটি গর্ত ড্রিল করুন যা তারের একটি বান্ডিল ফিট করতে পারে। যতক্ষণ আপনি পাইপের ভিতরে প্রবেশ করতে পারেন ততক্ষণ একটি রুক্ষ গর্ত ঠিক আছে। পিভিসি পাইপ এবং কনুই জয়েন্টের মাধ্যমে তারের সাপ টেস্ট ফিটের জন্য। সবকিছু চূড়ান্ত হয়ে গেলে, প্রধান ফ্রেমের চেহারা পরিষ্কার করতে পিভিসি কিছু কালো স্প্রে পেইন্ট দিয়ে আঁকুন। একটি টি-জয়েন্ট ফিট করার জন্য পিভিসি পাইপের মধ্যে একটি ছোট ফাঁক কাটা। এই টি-জয়েন্টে একটি পিভিসি পাইপ যুক্ত করুন যাতে ট্রাফিক লাইট বন্ধ থাকে। ব্যাসটি মূল ফ্রেমের (১/২ ) সমান হতে পারে, যদিও আপনি যদি একটি পাতলা পাইপ ব্যবহার করেন তবে নিশ্চিত করুন যে wire টি তারের মধ্যে সাপ আছে।
ধাপ 8: তারের (অংশ 2)
পূর্বে পরীক্ষিত হিসাবে সবকিছু পুনরায় ওয়্যার করুন। সমস্ত সংযোগ তৈরি হয়েছে কিনা তা নিশ্চিত করার জন্য ট্র্যাফিক লাইট এবং একটি ব্রেডবোর্ড দিয়ে তারের ডবল চেক করুন। টি-জয়েন্ট আর্ম দিয়ে আসা তারের কাছে ট্রাফিক লাইট বিক্রি করুন। যেকোনো হাফপ্যান্ট রোধ করতে এবং ক্লিনার লুকের জন্য উন্মুক্ত তারগুলিকে বৈদ্যুতিক টেপ দিয়ে মোড়ানো।
ধাপ 9: সমাপ্ত
কোডটি চালানোর জন্য, আপনার উৎসকে project/.profile এবং cd হিসাবে আপনার প্রকল্পের অবস্থানে সেট করতে ভুলবেন না।
ধাপ 10: অতিরিক্ত (ছবি)
প্রস্তাবিত:
আইআর ব্যবহার করে অবজেক্ট কাউন্টার: 9 টি ধাপ (ছবি সহ)
আইআর ব্যবহার করে অবজেক্ট কাউন্টার: এই ছোট প্রকল্পে, আমরা একটি সাধারণ সেগমেন্ট ডিসপ্লে সহ একটি সম্পূর্ণ স্বয়ংক্রিয় বস্তু কাউন্টার তৈরি করব। এই প্রকল্পটি বরং সহজ এবং শুধুমাত্র সহজ ইলেকট্রনিক্স অন্তর্ভুক্ত করে। এই সার্কিটটি ইনফ্রারেডের উপর ভিত্তি করে বস্তুগুলি সনাক্ত করতে, আরও জানতে
অবজেক্ট ডিটেকশন W/ Dragonboard 410c বা 820c OpenCV এবং Tensorflow ব্যবহার করে ।: 4 ধাপ
অবজেক্ট ডিটেকশন W/ ড্রাগনবোর্ড 410c বা 820c ওপেনসিভি এবং টেন্সরফ্লো ব্যবহার করে।: এই নির্দেশাবলী বর্ণনা করে কিভাবে অবজেক্ট ডিটেকশন অ্যাপ্লিকেশন চালানোর জন্য পাইথন 3.5 এর জন্য ওপেনসিভি, টেন্সরফ্লো এবং মেশিন লার্নিং ফ্রেমওয়ার্ক ইনস্টল করতে হয়।
জেটসন ন্যানো চতুর্ভুজ রোবট অবজেক্ট ডিটেকশন টিউটোরিয়াল: 4 টি ধাপ
জেটসন ন্যানো চতুর্ভুজ রোবট অবজেক্ট ডিটেকশন টিউটোরিয়াল: এনভিডিয়া জেটসন ন্যানো একটি ডেভেলপার কিট, যা একটি SoM (মডিউল অন সিস্টেম) এবং একটি রেফারেন্স ক্যারিয়ার বোর্ড নিয়ে গঠিত। এটি প্রাথমিকভাবে এমবেডেড সিস্টেম তৈরির জন্য লক্ষ্য করা হয় যার জন্য মেশিন লার্নিং, মেশিন ভিশন এবং ভিডিওর জন্য উচ্চ প্রক্রিয়াকরণ শক্তি প্রয়োজন
একটি ক্যামেরা দিয়ে ভিজ্যুয়াল অবজেক্ট ডিটেকশন (TfCD): 15 টি ধাপ (ছবি সহ)
একটি ক্যামেরার মাধ্যমে ভিজ্যুয়াল অবজেক্ট ডিটেকশন (TfCD): আবেগ, মানুষের মুখ বা সাধারণ বস্তু চিনতে পারে এমন জ্ঞানীয় পরিষেবাগুলি বর্তমানে উন্নয়নের প্রাথমিক পর্যায়ে রয়েছে, কিন্তু মেশিন লার্নিংয়ের সাথে এই প্রযুক্তি ক্রমবর্ধমানভাবে বিকশিত হচ্ছে। আমরা এই জাদু আরও দেখতে আশা করতে পারি
রোবো কম্বল: ক্রস সেলাই প্যাটার্ন ব্যবহার করে একটি কম্বল ক্রোশেট করুন।: 3 ধাপ (ছবি সহ)
রোবো কম্বল: ক্রস সেলাই প্যাটার্ন ব্যবহার করে একটি কম্বল ক্রোশেট করুন: আমি ক্রোচেটিং পছন্দ করি। আমি ছোট থেকেই এটা করে আসছি। কিন্তু সম্প্রতি আমি আবিষ্কার করেছি কিভাবে ছবি ক্রোশেট করতে হয়। এখন আমি আপনাকে দেখাব কিভাবে। আপনার প্রয়োজন হবে: বিভিন্ন রঙের সুতা। একটি ক্রস সেলাই প্যাটার্ন একটি crochet হুক। (আমি সাইজ এইচ ব্যবহার করেছি) আপনি ক্রস পেতে পারেন