विषयसूची:
- आपूर्ति
- चरण 1: प्रेरणा
- चरण 2: NVIDIA जेटबॉट और परियोजना अवलोकन
- चरण 3: JetBot बनाएँ और Jupyter नोटबुक अपलोड करें
- चरण 4: JetBot पर प्रशिक्षण डेटा एकत्र करना
- चरण 5: GPU मशीन पर तंत्रिका नेटवर्क को प्रशिक्षित करें
- चरण 6: JetBot पर लाइव डेमो चलाएं
वीडियो: NVIDIA JetBot के साथ ट्रांसफर लर्निंग - ट्रैफिक कोन्स के साथ मज़ा: 6 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:19
द्वारा dvillevaldMy GithubFollow के बारे में: मुझे AI और मशीन लर्निंग एप्लिकेशन पसंद हैं, विशेष रूप से रोबोटिक्स में dvillevald के बारे में अधिक »
अपने रोबोट को कैमरा और अत्याधुनिक डीप लर्निंग मॉडल का उपयोग करके ट्रैफ़िक शंकु के चक्रव्यूह में रास्ता खोजना सिखाएं।
आपूर्ति
-
एनवीडिया जेटबॉट
NVIDIA JetBot Wiki का सामग्री का बिल पृष्ठ लोकप्रिय विक्रेताओं से लिंक खरीदने के साथ-साथ JetBot बनाने के लिए आवश्यक सभी चीज़ों को सूचीबद्ध करता है।
-
NVIDIA GPU के साथ कंप्यूटर
मॉडल को प्रशिक्षित करने की आवश्यकता
- ब्लूडॉट ट्रेडिंग 4”आरसी रेसिंग चपलता शंकु, नारंगी - 20 का सेट
चरण 1: प्रेरणा
हर बार जब मैं संकुचन क्षेत्र में ड्राइव करता हूं तो मैं सोचता हूं कि ट्रैफिक शंकु के माध्यम से नेविगेट करने के लिए एक सेल्फ-ड्राइविंग कार के लिए यह कितना चुनौतीपूर्ण होगा। यह पता चला है कि नए एनवीआईडीआईए के जेटबॉट के साथ यह इतना मुश्किल नहीं है - केवल दो सौ छवियों के साथ, आप अपने रोबोट को खिलौना यातायात शंकु के चक्रव्यूह में रास्ता खोजने के तरीके को सिखाने के लिए एक अत्याधुनिक गहन शिक्षण मॉडल को प्रशिक्षित कर सकते हैं। केवल ऑनबोर्ड कैमरे का उपयोग करना और कोई अन्य सेंसर नहीं।
चरण 2: NVIDIA जेटबॉट और परियोजना अवलोकन
जेटबॉट एक ओपन सोर्स रोबोट है जो एनवीआईडीआईए जेटसन नैनो किट पर आधारित है। आप इसे बनाने और स्थापित करने के तरीके के बारे में विस्तृत निर्देश यहाँ पा सकते हैं।
यह परियोजना NVIDIA JetBot Wiki से एक संशोधित टकराव से बचाव का उदाहरण है। इसमें तीन प्रमुख चरण होते हैं, प्रत्येक को एक अलग ज्यूपिटर नोटबुक में वर्णित किया गया है:
- JetBot पर डेटा एकत्र करें - नोटबुक data_collection_cones.ipynb
- अन्य GPU मशीन पर ट्रेन मॉडल - नोटबुक train_model_cones.ipynb
- JetBot पर लाइव डेमो चलाएँ - नोटबुक live_demo_cones.ipynb
आप ये तीन ज्यूपिटर नोटबुक यहाँ पा सकते हैं
चरण 3: JetBot बनाएँ और Jupyter नोटबुक अपलोड करें
- जेटबॉट का निर्माण और सेटअप करें जैसा कि यहां बताया गया है
- https://:8888 पर नेविगेट करके अपने रोबोट से कनेक्ट करें डिफ़ॉल्ट पासवर्ड जेटबोट के साथ साइन इन करें
- कर्नेल का चयन करके अन्य सभी चल रही नोटबुक्स को शट डाउन करें -> सभी कर्नेल को शटडाउन करें…
- ~/नोटबुक/ पर नेविगेट करें
- नया सबफ़ोल्डर बनाएं ~/नोटबुक/ट्रैफ़िक_कोन्स_ड्राइविंग/
- data_collection_cones.ipynb और live_demo_cones.ipynb को ~/Notebooks/traffic_cones_ddriveing/ पर अपलोड करें
महत्वपूर्ण: इस निर्देश में संदर्भित ज्यूपिटर नोटबुक data_collection_cones.ipynb और live_demo_cones.ipynb को JetBot पर चलाया जाना चाहिए जबकि train_model_cones.ipynb - GPU वाले कंप्यूटर पर।
इसलिए हमें जेटबॉट पर data_collection_cones.ipynb और live_demo_cones.ipynb को अपलोड करना होगा और उन्हें ~/Notebooks/traffic_cones_ddriveing/ में रखना होगा।
चरण 4: JetBot पर प्रशिक्षण डेटा एकत्र करना
हम एक छवि वर्गीकरण डेटासेट एकत्र करेंगे जिसका उपयोग जेटबॉट को ट्रैफिक शंकु के चक्रव्यूह में संचालित करने में मदद करने के लिए किया जाएगा। JetBot चार परिदृश्यों (वर्गों) की संभावनाओं का अनुमान लगाना सीखेगा:
- मुफ़्त - जब आगे बढ़ना सुरक्षित हो
- अवरोधित - जब रोबोट के सामने कोई बाधा हो
- बायां - जब रोबोट को बाईं ओर घूमना चाहिए
- दाएं - जब रोबोट को दाईं ओर घूमना चाहिए
JetBot पर प्रशिक्षण डेटा एकत्र करने के लिए हम Jupyter नोटबुक data_collection_cones.ipynb का उपयोग करेंगे जिसमें इसे करने के तरीके के बारे में विवरण निर्देश शामिल हैं। इस नोटबुक को JetBot पर चलाने के लिए, अगले चरणों का पालन करें:
- https://:jetbot-ip-address::8888. पर नेविगेट करके अपने रोबोट से कनेक्ट करें
- डिफ़ॉल्ट पासवर्ड जेटबॉट के साथ साइन इन करें
- अन्य सभी चल रहे नोटबुक को कर्नेल का चयन करके शट डाउन करें -> सभी कर्नेल को शटडाउन करें
- ~/नोटबुक/ट्रैफिक_कोन्स_ड्राइविंग/ पर नेविगेट करें
- data_collection_cones.ipynb नोटबुक खोलें और उसका पालन करें
चरण 5: GPU मशीन पर तंत्रिका नेटवर्क को प्रशिक्षित करें
इसके बाद, हम एकत्रित डेटा का उपयोग ट्रेन_मॉडल_कोन्स.ipynb चलाकर GPU मशीन (होस्ट) पर गहन शिक्षण मॉडल एलेक्सनेट को फिर से प्रशिक्षित करने के लिए करेंगे।
ध्यान दें कि इस ट्यूटोरियल में train_model_cones.ipynb एकमात्र ज्यूपिटर नोटबुक है जो जेटबॉट पर नहीं चलती है।
- एक GPU मशीन से कनेक्ट करें जिसमें PyTorch स्थापित हो और एक Jupyter Lab सर्वर चल रहा हो
- Train_model_cones.ipynb नोटबुक और इस मशीन पर अपलोड करें
- आपके द्वारा data_collection_cones.ipynb नोटबुक में बनाई गई डेटासेट_कोन्स.ज़िप फ़ाइल अपलोड करें और इस डेटासेट को निकालें। (इस चरण के बाद आपको फ़ाइल ब्राउज़र में डेटासेट_कोन्स नाम का एक फ़ोल्डर दिखाई देना चाहिए।)
- train_model_cones.ipynb नोटबुक खोलें और उसका पालन करें। इस चरण के अंत में, आप एक मॉडल बनाएंगे - फ़ाइल best_model_cones.pth जिसे लाइव डेमो चलाने के लिए JetBot पर अपलोड करना होगा।
चरण 6: JetBot पर लाइव डेमो चलाएं
यह अंतिम चरण JetBot पर best_model_cones.pth मॉडल को अपलोड करना और उसे चलाना है।
- USB बैटरी पैक से अपने रोबोट को पावर दें
- https://:jetbot-ip-address::8888. पर नेविगेट करके अपने रोबोट से वापस कनेक्ट करें
- डिफ़ॉल्ट पासवर्ड जेटबोट के साथ साइन इन करें
- कर्नेल का चयन करके अन्य सभी चल रही नोटबुक्स को शट डाउन करें -> सभी कर्नेल को शटडाउन करें…
- ~/नोटबुक/ट्रैफिक_कोन्स_ड्राइविंग पर नेविगेट करें
- live_demo_cones.ipynb नोटबुक खोलें और उसका अनुसरण करें
सतर्क शुरुआत करें और जेटबॉट को घूमने के लिए पर्याप्त जगह दें। विभिन्न शंकु विन्यास का प्रयास करें और देखें कि रोबोट विभिन्न वातावरणों, प्रकाश व्यवस्था आदि में कितना अच्छा प्रदर्शन करता है। जबकि नोटबुक live_demo_cones.ipynb सभी चरणों को विस्तार से बताता है, निम्न चार्ट मॉडल द्वारा अनुमानित संभावनाओं को देखते हुए रोबोट चाल के तर्क को दर्शाता है।
नोटबुक में यह भी बताया गया है कि मॉडल द्वारा भविष्यवाणी की गई मुफ्त/बाएं/दाएं/अवरुद्ध संभावनाओं के साथ रोबोट चाल के इतिहास को कैसे स्टोर किया जाए और सुपरइम्पोज़्ड टेलीमेट्री के साथ दो एफपीवी (फर्स्ट पर्सन व्यू) वीडियो (1 एफपीएस और 15 एफपीएस दरों पर) कैसे बनाया जाए। जेटबॉट कार्रवाई डेटा। वे डिबगिंग, पीआईडी नियंत्रक ट्यूनिंग और मॉडल सुधार के लिए उपयोगी हैं।
मज़े करो और अगर आपके कोई प्रश्न हैं तो मुझे बताएं!:-)
कोड गीथूब पर उपलब्ध है
सिफारिश की:
OLED डिस्प्ले और Arduino के साथ मज़ा: 12 कदम (चित्रों के साथ)
OLED डिस्प्ले और Arduino के साथ मज़ा: मुझे पूरा यकीन है कि आपने OLED डिस्प्ले तकनीक के बारे में जरूर सुना होगा। यह अपेक्षाकृत नया है और पुरानी एलसीडी तकनीक की तुलना में बेहतर गुणवत्ता प्रदान करता है। इस ट्यूटोरियल में हम सबसे सामान्य एकल सह में से एक पर डेटा प्रदर्शित करने के लिए आवश्यक चरणों की समीक्षा करना चाहते हैं
आईकेईए लैंप के साथ मज़ा: 9 कदम
आईकेईए लैंप के साथ मज़ा: कुछ खास नहीं। कुछ भी नया नहीं है। यह प्रसिद्ध आईकेईए माइलोनिट लैंप के साथ मूड लाइट का मेरा अपना संस्करण है
आसान वीबीएस के साथ मज़ा !!!: 5 कदम
फन विद ईज़ी वीबीएस!!!: ए बिगिनर्स गाइड टू फन, एंड इजी टू डू विजुअल बेसिक स्क्रिप्ट। VSB कुछ लोगों को कठिन लग सकता है, लेकिन वास्तव में यह वास्तव में आसान है। विंडोज़ इसे बिना कंपाइलर के भी चला सकता है! यदि आप जावास्क्रिप्ट जानते हैं, तो यह आपके लिए वास्तव में आसान होना चाहिए
नेटकैट के साथ और अधिक मज़ा !!: 4 कदम
नेटकैट के साथ अधिक मज़ा !!: अब अगर आपने नेटकैट बैकडोर के लिए डक्ट टेप की मार्गदर्शिका नहीं पढ़ी है, तो उसे पढ़ें, फिर यहां आएं। यह इंस्ट्रक्शनल बेसिक नेटकैट कमांड्स और उनका उपयोग करने के तरीके के बारे में बताता है। यह कुछ बुनियादी बैच कमांडों पर भी जाता है
बैच सीएमडी के साथ मज़ा !!: 3 कदम
बैच सीएमडी के साथ मज़ा !!: इस निर्देश में मैं आपको शुरुआती सिखाऊंगा (जब तक कि आप एक समर्थक न हों, जो आपको इस पर अपना समय बर्बाद नहीं करना चाहिए) बैच और सरल कमांड के बारे में कुछ जो आपके कंप्यूटर पर आपका समय थोड़ा कम कर सकता है इसे कुछ क्रे पर बर्बाद करने से बेहतर है