विषयसूची:
- चरण 1: आपको आवश्यक हार्डवेयर इकट्ठा करें
- चरण 2: जूल पर उबंटू स्थापित करें और इसे चलाने के लिए आवश्यक पुस्तकालय।
- चरण 3: RealSense कैमरा स्ट्रीम करें
- चरण 4: वालाबोट सेटअप करें
- चरण 5: जूल से वाईफाई हॉटस्पॉट बनाना
- चरण 6: एंड्रॉइड को डिस्प्ले स्क्रीन के रूप में बनाना
- चरण 7: सब कुछ का परीक्षण
- चरण 8: असली कार पर परीक्षण करना
- चरण 9: दुनिया में इसका इस्तेमाल करें
वीडियो: वाहन पीछे की दृष्टि: 9 कदम (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
हम व्हीकल रियर विजन क्यों बनाते हैं?
बैक-अप टक्कर एक बड़ी समस्या रही है, द यू.एस. सेंटर फॉर डिजीज कंट्रोल ने बताया कि २००१-२००३ से, १५ वर्ष से कम आयु के अनुमानित ७, ४७५ बच्चों (प्रति वर्ष २, ४९२) का ऑटोमोबाइल बैक-ओवर घटनाओं के लिए इलाज किया गया था। प्रति वर्ष लगभग 300 मौतें बैकअप टकराव के परिणामस्वरूप होती हैं। 2018 तक संयुक्त राज्य में बेची जाने वाली सभी कारों को एक अनिवार्य बैकअप कैमरा की आवश्यकता होगी।
हम समस्या का समाधान कैसे करते हैं?
बाजार में मौजूद अधिकांश कारों में आज भी बैकअप कैमरा नहीं है, जिसमें आज अमेरिका में बिकने वाली कारों में से लगभग आधी और दुनिया भर में आधी से अधिक कारें शामिल हैं। हम लाइसेंस प्लेट की जगह का उपयोग करके, कार के पीछे एक कैमरा लगाकर इस समस्या को हल कर सकते हैं।
वालाबोट वाहन के निकटतम लक्ष्य की दूरी का पता लगाने में सक्षम होगा।
Intel RealSense R200 कैमरा हमें कम रोशनी की स्थिति सहित, जो कुछ भी देखा जा रहा है, उस पर अधिक विवरण देगा।
Intel Joule डेवलपर किट Walabot के साथ RealSense कैमरे चलाने के लिए पर्याप्त शक्तिशाली है। रास्पबेरी पाई एक RealSense 3D कैमरा चलाने के लिए पर्याप्त शक्तिशाली नहीं है, जिसमें हम भविष्य में बहुत अधिक सुविधाएँ जोड़ सकते हैं जो कार की कार्यक्षमता में सुधार कर सकते हैं। सामान्य यूएसबी कैमरे के साथ पाई के साथ समान संस्करण का उपयोग किया जा सकता है, लेकिन यह रात के समय के लिए अच्छा नहीं होगा।
बैकअप कैमरा प्रदर्शित करने के लिए एंड्रॉइड फोन/टैबलेट का उपयोग किया जा रहा है, यह एक अतिरिक्त स्क्रीन की लागत को कम करने के लिए है। आईओएस संस्करण अनुरोध पर बनाया जा सकता है।
उन घटकों के माध्यम से, हम एक रियर एंड विजन बनाने में सक्षम होंगे जो उपयोगकर्ता को कार के पीछे दिखाता है।
चरण 1: आपको आवश्यक हार्डवेयर इकट्ठा करें
- इंटेल जूल
- वालाबोट प्रो
- इंटेल R200 रियलसेंस कैमरा
- 5.0 या उच्चतर चलने वाला Android फ़ोन/टैबलेट
- प्लग आउटपुट के लिए कार का एडॉप्टर और 12VDC एसी एडॉप्टर (यह जूल को पावर देने के लिए डेमो के लिए है, प्रोडक्शन वर्जन में अलग पावर मैकेनिज्म होगा)
- कैमरा और वालाबोट को जोड़ने के लिए यूएसबी हब (कैमरा के लिए यूएसबी३ और वालाबोट के लिए यूएसबी२)
- डीसी से एसी डायरेक्ट प्लग-इन पावर इन्वर्टर
- कस्टम निर्मित लाइसेंस प्लेट फ्रेम का प्रिंट आउट लेने के लिए जेनेरिक 3D प्रिंटर
चरण 2: जूल पर उबंटू स्थापित करें और इसे चलाने के लिए आवश्यक पुस्तकालय।
चूंकि हमने लिनक्स रूट के साथ जाने का फैसला किया है, इसलिए जूल पर उबंटू स्थापित करने के लिए गाइड https://developer.ubuntu.com/core/get-started/intel-joule का पालन करें। उबंटू हमें आईओटी आधारित चिप पर एक वास्तविक ऑपरेटिंग सिस्टम चलाने के लिए बहुत लचीलापन देता है।
चरण 3: RealSense कैमरा स्ट्रीम करें
चूंकि हम सामग्री के बिल पर लागत बचाने के लिए एंड्रॉइड फोन/टैबलेट का उपयोग कर रहे हैं, उपयोगकर्ताओं के लिए भी अधिक सुलभ, हम सुरक्षा कैमरों के समान कैमरे को होस्ट करने के लिए मोशन लाइब्रेरी का उपयोग करेंगे। एक बार जब उबंटू स्थापित हो जाता है और वाईफाई से जुड़ा होता है, तो हम टर्मिनल खोल सकते हैं और निम्नलिखित कमांड का उपयोग कर सकते हैं। हम पहले USB3 पोर्ट के माध्यम से कैमरे को जूल से कनेक्ट करते हैं और फिर निम्न चरणों का पालन करते हैं।
ए। उबंटू पर गति स्थापित करना:
sudo apt-get updatesudo apt-get install गति
बी। कॉन्फ़िगर फ़ाइलों की प्रतिलिपि बनाएँ:
mkdir.motion sudo cp /etc/motion/motion.conf ~/.motion/motion.conf
सी। फ़ाइल को कॉन्फ़िगर करना, उन लोगों के लिए जो ubuntu से परिचित हैं, आसान पाठ संपादन करने के लिए उदात्त स्थापित कर सकते हैं, अन्यथा हम इसे कमांड लाइन के अंदर संपादित कर सकते हैं।
सुडो नैनो ~/.motion/motion.conf
डी। R200 कैमरा लगाने के बाद, हम निम्नलिखित पंक्तियों को गति में बदल सकते हैं
इसे पृष्ठभूमि मोड में रखना है:
# डेमॉन (पृष्ठभूमि) मोड में प्रारंभ करें और टर्मिनल जारी करें (डिफ़ॉल्ट: बंद) डेमॉन चालू
यह RealSense कैमरा के कैमरा व्यू का उपयोग करने के लिए है।
# वीडियोडिवाइस कैप्चरिंग के लिए उपयोग किया जाना है (डिफ़ॉल्ट / देव / वीडियो 0) # फ्रीबीएसडी डिफ़ॉल्ट के लिए / देव / बीकेटीआर 0 है
चौड़ाई और ऊंचाई को बदलना, 1280 x 720 ने मेरे लिए बहुत अच्छा काम किया, लेकिन आप आयामों के साथ खेल सकते हैं यह देखने के लिए कि आपकी आवश्यकता के अनुरूप क्या है।
# छवि चौड़ाई (पिक्सेल)। मान्य श्रेणी: कैमरा निर्भर, डिफ़ॉल्ट: 352 चौड़ाई 1280 # छवि ऊंचाई (पिक्सेल)। मान्य सीमा: कैमरा निर्भर, डिफ़ॉल्ट: 288 ऊंचाई 720
मैंने इसे 30 पर सेट किया है, जितना अधिक आप संख्या निर्धारित करेंगे उतनी ही अधिक कंप्यूटिंग शक्ति की आवश्यकता होगी। आप यह देखने के लिए चारों ओर खेल सकते हैं कि इसके लिए बेंचमार्क क्या है, लेकिन 30 ने मेरे लिए बहुत अच्छा काम किया है।
# फ्रेम की अधिकतम संख्या प्रति सेकंड कैप्चर की जानी है। # मान्य सीमा: 2-100। डिफ़ॉल्ट: 100 (लगभग कोई सीमा नहीं)। फ्रैमरेट 30
चूंकि हम हमेशा कार के पीछे स्ट्रीमिंग कर रहे हैं, हम एक समर्पित पोर्ट सेट कर सकते हैं, हम 5001. का उपयोग करते हैं
############################################# ######### # लाइव स्ट्रीम सर्वर ################################ ##################### # मिनी-एचटीटीपी सर्वर अनुरोधों के लिए इस पोर्ट को सुनता है (डिफ़ॉल्ट: 0 = अक्षम) स्ट्रीम_पोर्ट 5001 # जेपीईजी की गुणवत्ता (प्रतिशत में) उत्पादित छवियां (डिफ़ॉल्ट: 50) स्ट्रीम_क्वालिटी 50 # 1 एफपीएस पर आउटपुट फ्रेम जब कोई गति का पता नहीं चलता है और गति का पता चलने पर स्ट्रीम_मैक्सरेट द्वारा दी गई # दर तक बढ़ जाती है (डिफ़ॉल्ट: बंद) स्ट्रीम_मोशन बंद # स्ट्रीम स्ट्रीम के लिए अधिकतम फ्रैमरेट (डिफ़ॉल्ट: 1) स्ट्रीम_मैक्सरेट 60 # स्ट्रीम कनेक्शन को केवल लोकलहोस्ट तक सीमित करें (डिफ़ॉल्ट: चालू) स्ट्रीम_लोकलहोस्ट बंद
फिर आप ifconfig चला सकते हैं और आईपी पते का पता लगा सकते हैं और टर्मिनल में चला सकते हैं, पोर्ट 5001 होगा।
गति
यदि कोई त्रुटि नहीं है, तो आईपी का उपयोग करके अपने कंप्यूटर से कैमरे की जांच करना आसान है, त्रुटियों को ठीक करें जैसे अनुमति समस्याएं यदि कोई हो।
एक बार यह चलने के बाद, हम इसे उबंटू में स्टार्टअप एप्लिकेशन में जोड़ सकते हैं।
कैमरा के लिए मोशन स्टार्टअप
Motion.conf को कोड सेक्शन में अटैच किया जा रहा है, आप वहां और सेटिंग्स देख सकते हैं।
चरण 4: वालाबोट सेटअप करें
कैमरे के साथ, हमें अभी भी वालाबोट स्थापित करने की आवश्यकता है, यह वाहन के बीच की दूरी को पीछे की वस्तु के बीच की दूरी का पता लगा सकता है, यह स्पष्ट दृष्टि देता है कि हमें कैसे करना चाहिए
ए, https://www.walabot.com/WalabotInstaller/Latest/walabot-maker.deb से डिबेट फ़ाइल डाउनलोड करें
Walabot API को स्थापित करने के लिए https://api.walabot.com/_install.html#_linuxInstall से निर्देशों का पालन करें ताकि इसे पायथन परियोजनाओं में आयात किया जा सके।
वेबसाइट पर उस हिस्से में एक गलती है जहां यह वालाबोट एपीआई स्थापित कर रहा है https://walabot.com/api/_pythonapi.html#_installingwalabotapi जहां यह बताता है
पायथन-एम पाइप "/usr/share/walabot/python/WalabotAPI-1.0.21.tar.gz"
होना चाहिए
पायथन-एम पाइप स्थापित करें "/usr/share/walabot/python/WalabotAPI-1.0.21.tar.gz"
बी। USB 2 के माध्यम से Walabot Pro को कनेक्ट करें, मुझे USB3 काम नहीं मिला, लेकिन USB2 linux से कनेक्ट करने के लिए ठीक काम करता है। चूंकि जूल में केवल एक USB3 पोर्ट है, इसलिए Walabot Pro को यहां समायोजित करने के लिए एक अतिरिक्त USB2 पोर्ट कनेक्ट करें
सी। फोल्डर में निम्न कमांड चलाकर वालाबोट प्रोजेक्ट जैसे https://github.com/Walabot-Projects/Walabot-Senso… का परीक्षण करें
अजगर SensorTargets.py
यह आपको यह देखने के लिए एक अच्छा परीक्षण देना चाहिए कि क्या वालाबोट सही ढंग से चल रहा है, साथ ही साथ अपनी इच्छित चीज़ों पर दूरी कैसे मापें। डिस्टेंसमेजर उदाहरण मापन पर बहुत सुसंगत नहीं था, और zPosCm अत्यंत सटीक प्रतीत होता है, इसलिए मैंने डेमो के लिए zPosCM का उपयोग करने का निर्णय लिया है।
डी। हमें अभी भी डिस्प्ले डिवाइस को डेटा पास करने की आवश्यकता है, क्योंकि हम सामग्री की लागत को कम करने के लिए इसे एंड्रॉइड पर चला रहे हैं, हम सॉकेट का उपयोग कर सकते हैं। हम अजगर में सॉकेट और udp को सेटअप करने के लिए निम्नलिखित कोड का उपयोग करते हैं।
MYPORT = 5002 आयात sys, सॉकेट आयात से समय * s = सॉकेट (AF_INET, SOCK_DGRAM) s.bind (('', 0)) s.setsockopt (SOL_SOCKET, SO_REUSEADDR, 1) s.setsockopt (SOL_SOCKET, SO_BROADCAST, 1)
निम्न आदेश अद्यतन पर डेटा प्रसारित करेगा
s.sendto(str(targets[0].zPosCm), ('255.255.255.255', MYPORT))
इ। जब यह हो जाता है, तो हम इसे स्टार्टअप एप्लिकेशन में सेट कर सकते हैं
एफ। वालाबोट अब सेटअप है और यूडीपी के माध्यम से डेटा स्थानांतरित कर रहा है, कोड अटैचमेंट क्षेत्र में पूर्ण पायथन कोड देखा जा सकता है। नीचे दिया गया स्क्रीनशॉट इसका प्रिंट आउट है कि यह कैसा दिखना चाहिए जब कोई क्षेत्र न हो। कोड कोड अनुभाग में संलग्न है।
चरण 5: जूल से वाईफाई हॉटस्पॉट बनाना
हम एंड्रॉइड डिवाइस के लिए डेटा ट्रांसफर करने के लिए अपना खुद का वाईफाई हॉटस्पॉट बना रहे हैं। प्रारंभ में निम्न आदेश का उपयोग स्वचालित रूप से इसे सेट कर देगा। इसका उपयोग Ubuntu 16.04 या बाद के संस्करण के लिए किया जा रहा है, क्योंकि इसका उपयोग किया जा रहा है। हम इसे अगले चरण में Android ऐप के माध्यम से स्वचालित रूप से कनेक्ट कर देंगे। स्टार्टअप एप्लिकेशन में इस कमांड का प्रयोग करें।
एनएमसीएलआई डिवाइस वाईफाई हॉटस्पॉट कॉन-नेम व्हीकल-रियर-विजन एसएसआईडी व्हीकल-रियर-विजन बैंड बीजी पासवर्ड सेफड्राइविंग
वालाबोट की पायथन फ़ाइल के अंदर, हम इसे भी अपडेट करेंगे जहां हम निजी हॉटस्पॉट के माध्यम से जुड़े उपकरणों को udp संदेश भेजेंगे। यह सुनिश्चित करने के लिए है कि कोई पैकेट गुम न हो।
out = os.popen('ip neigh').read().splitlines() for i, लाइन इन एन्यूमरेट (आउट, स्टार्ट = 1): ip = लाइन.स्प्लिट ('') [0] s.sendto (str) (लक्ष्य [0].zPosCm), (आईपी, मायपोर्ट))
चरण 6: एंड्रॉइड को डिस्प्ले स्क्रीन के रूप में बनाना
एंड्रॉइड ऐप डिवाइस को प्रदर्शित करने के लिए बनाया गया है, मुख्यतः क्योंकि यह सामग्री के बिल को कम करता है अन्यथा एक अलग स्क्रीन महंगी और इंस्टॉल करने में मुश्किल दोनों हो सकती है। इस परियोजना के लिए हम एंड्रॉइड फोन/टैबलेट का उपयोग कर सकते हैं।
Android 3 भागों पर केंद्रित है जो हमने पहले किया है,
- IoT डिवाइस (इंटेल जूल) के माध्यम से बनाए गए वाईफाई हॉटस्पॉट से कनेक्ट करें
- वाईफ़ाई के माध्यम से गति के माध्यम से RealSense कैमरा स्ट्रीम करें
- Udp. के माध्यम से Walabot लक्ष्य से दूरी मापना
सब कुछ सेट करने और एंड्रॉइड ऐप इंस्टॉल करने के बाद (यहां ओपन सोर्स किया गया), आप कैमरा को वालाबोट के साथ काम करते हुए देख पाएंगे
चरण 7: सब कुछ का परीक्षण
अब हमारे पास सब कुछ चल रहा है, हमारे पास संलग्न सभी घटकों का एक बुनियादी सेटअप होना चाहिए। जब हम जूल बोर्ड शुरू करते हैं, तो हॉटस्पॉट स्वचालित रूप से सेटअप हो जाना चाहिए, इसके साथ गति और वालाबोट ऐप शुरू हो जाएगा, और जब हम अपने एंड्रॉइड ऐप को चालू करते हैं तो हमें कैमरे से स्ट्रीम करने में सक्षम होना चाहिए। इसका मतलब है कि IoT डिवाइस के काम करने के लिए अब कीबोर्ड/माउस और मॉनिटर की जरूरत नहीं है। यदि इस समय कोई समस्या होती है जैसे कि पुस्तकालय ठीक से स्थापित नहीं है तो हमें अगले चरण पर आगे बढ़ने से पहले इसे ठीक करना चाहिए।
3डी प्रिंटिंग केसिंग जो कैमरा पकड़ सकता है, बहुत महत्वपूर्ण है।
हार्डवेयर के निर्माण में, हमें अपने कस्टम 3डी प्रिंटेड केसिंग को कैमरे के लिए तैयार रखना चाहिए। चूंकि यह एक प्रोटोटाइप है, यह थोड़ा ढीला हो सकता है, लेकिन जब हम कस्टम लाइसेंस प्लेट धारक का निर्माण करते हैं तो हम उम्मीद कर रहे हैं कि सभी घटक धारक के अंदर होंगे।
चरण 8: असली कार पर परीक्षण करना
अब जब हमने सब कुछ काम कर लिया है, तो हम असली कार पर इसका परीक्षण करने में सक्षम होंगे। चूंकि यह एक प्रोटोटाइप है, चीजें थोड़ी खुरदरी हो सकती हैं, हम कुछ घटकों के लिए डक्ट टेप का उपयोग करते हैं।
जूल आईओटी किट को पावर देने के लिए, हमने डीसी से एसी डायरेक्ट प्लग-इन पावर इन्वर्टर का उपयोग किया, फिर बस ट्रंक में एक लंबा पावर आउटलेट चलाया।
हमारे पास आगे का हिस्सा और पीछे का हिस्सा होगा। यह अभी सिर्फ एक प्रोटोटाइप है, अगला संस्करण लाइसेंस प्लेट धारक के अंदर चिप्स को एकीकृत करेगा।
और सामने के हिस्से के लिए, हम या तो एक फोन धारक का उपयोग कर सकते हैं या सिर्फ डक्ट टेप एंड्रॉइड टैबलेट का उपयोग कर सकते हैं।
चरण 9: दुनिया में इसका इस्तेमाल करें
इस उपकरण का उपयोग करके, हम कार को अन्य कारों में सुरक्षित रूप से बैकअप कर सकते हैं और पैदल चलने वालों की निगरानी कर सकते हैं। आप शुरुआत में डेमो वीडियो देख सकते हैं। परियोजना का लक्ष्य सुरक्षित ड्राइविंग प्रथाओं को प्रोत्साहित करना है।
आप इस परियोजना को https://github.com/Nyceane/vehicle-rear-vision. से देख सकते हैं
सिफारिश की:
दृष्टि की DIY दृढ़ता: 6 कदम (चित्रों के साथ)
दृष्टि की DIY दृढ़ता: इस परियोजना में मैं आपको कुछ आपूर्ति के साथ दृष्टि या पीओवी डिस्प्ले के परिप्रेक्ष्य से परिचित कराऊंगा जैसे कि Arduino और हॉल सेंसर एक घूर्णन प्रदर्शन बनाने के लिए जो आपको टेक्स्ट, समय और अन्य विशेष पात्रों जैसे कुछ भी प्रदर्शित करता है।
गरीब आदमी का गूगल ग्लास/सुरंग दृष्टि वाले लोगों के लिए सहायता: 5 कदम (चित्रों के साथ)
टनल विजन वाले लोगों के लिए गरीब आदमी का Google ग्लास / सहायता: सार: यह प्रोजेक्ट फिश-आई कैमरे से पहनने योग्य हेड-अप डिस्प्ले पर लाइव वीडियो स्ट्रीम करता है। परिणाम एक छोटे से क्षेत्र के भीतर देखने का एक व्यापक क्षेत्र है (प्रदर्शन आपकी आंख से दूर 4" स्क्रीन १२" के बराबर है और ७२० पर आउटपुट है
सर्किटपायथन में पोटेंशियोमीटर द्वारा नियंत्रित डुअल 7-सेगमेंट डिस्प्ले - दृष्टि की दृढ़ता का प्रदर्शन: 9 कदम (चित्रों के साथ)
सर्किटपायथन में पोटेंशियोमीटर द्वारा नियंत्रित डुअल 7-सेगमेंट डिस्प्ले - विजन की दृढ़ता का प्रदर्शन: यह प्रोजेक्ट 7-सेगमेंट एलईडी डिस्प्ले (F5161AH) के एक जोड़े पर डिस्प्ले को नियंत्रित करने के लिए एक पोटेंशियोमीटर का उपयोग करता है। जैसे ही पोटेंशियोमीटर नॉब को घुमाया जाता है, प्रदर्शित संख्या 0 से 99 की सीमा में बदल जाती है। किसी भी क्षण केवल एक एलईडी जलाया जाता है, बहुत संक्षेप में, लेकिन
अपनी फ्लैश ड्राइव को प्लेन दृष्टि में छिपाएं: 5 कदम (चित्रों के साथ)
अपनी फ्लैश ड्राइव को सामान्य दृष्टि से छिपाएं: विभिन्न सरकारों द्वारा आपके एन्क्रिप्टेड डेटा तक पहुंच की मांग के लिए कानून पारित करने के साथ 1), 2), 3), यह कुछ 'अस्पष्टता से सुरक्षा' का समय है। यह 'Ible' USB फ्लैश ड्राइव बनाने के बारे में है जो एक केबल की तरह दिखता है। आप इसे अपने पीछे से बाहर निकाल सकते हैं
Arduino पर आधारित रोबोट आर्म के साथ एक किफायती दृष्टि समाधान: 19 कदम (चित्रों के साथ)
Arduino पर आधारित रोबोट आर्म के साथ एक किफायती विजन सॉल्यूशन: जब हम मशीन विजन के बारे में बात करते हैं, तो यह हमेशा हमारे लिए इतना अगम्य लगता है। जबकि हमने एक ओपन-सोर्स विजन डेमो बनाया है जो सभी के लिए बनाना बहुत आसान होगा। इस वीडियो में, OpenMV कैमरे के साथ, कोई फर्क नहीं पड़ता कि लाल घन कहाँ है, रोबोट ar