टेक्सास इंस्ट्रूमेंट्स AM6x कई कैमरे विकसित कर रहा है
विशेष विवरण
- उत्पाद का नाम: AM6x उपकरणों का परिवार
- समर्थित कैमरा प्रकार: AM62A (अंतर्निहित ISP के साथ या बिना), AM62P (अंतर्निहित ISP के साथ)
- कैमरा आउटपुट डेटा: AM62A (रॉ/YUV/RGB), AM62P (YUV/RGB)
- ISP HWA: AM62A (हाँ), AM62P (नहीं)
- डीप लर्निंग HWA: AM62A (हाँ), AM62P (नहीं)
- 3-डी ग्राफिक्स HWA: AM62A (नहीं), AM62P (हाँ)
AM6x पर बहु-कैमरा अनुप्रयोगों का परिचय:
- आधुनिक दृष्टि प्रणालियों में एम्बेडेड कैमरे महत्वपूर्ण भूमिका निभाते हैं।
- एक सिस्टम में एकाधिक कैमरों का उपयोग करने से क्षमताएं बढ़ जाती हैं और ऐसे कार्य भी संभव हो जाते हैं जो एक कैमरे से संभव नहीं होते।
एकाधिक कैमरों का उपयोग करने वाले अनुप्रयोग:
- सुरक्षा निगरानी: निगरानी कवरेज, ऑब्जेक्ट ट्रैकिंग और पहचान सटीकता को बढ़ाता है।
- चारों ओर से घेरना View: बाधा का पता लगाने और वस्तु हेरफेर जैसे कार्यों के लिए स्टीरियो विजन सक्षम करता है।
- केबिन रिकॉर्डर और कैमरा मिरर सिस्टम: विस्तारित कवरेज प्रदान करता है और अंधे स्थानों को समाप्त करता है।
- मेडिकल इमेजिंग: सर्जिकल नेविगेशन और एंडोस्कोपी में उन्नत परिशुद्धता प्रदान करता है।
- ड्रोन और हवाई इमेजिंग: विभिन्न अनुप्रयोगों के लिए विभिन्न कोणों से उच्च-रिज़ॉल्यूशन छवियां कैप्चर करें।
एकाधिक CSI-2 कैमरों को SoC से जोड़ना:
SoC से कई CSI-2 कैमरे जोड़ने के लिए, उपयोगकर्ता पुस्तिका में दिए गए दिशानिर्देशों का पालन करें। सुनिश्चित करें कि प्रत्येक कैमरा SoC पर निर्दिष्ट पोर्ट से सही ढंग से संरेखित और जुड़ा हुआ है।
आवेदन पत्र
AM6x पर बहु-कैमरा अनुप्रयोगों का विकास
जियानझोंग जू, कुतैबा सालेह
अमूर्त
यह रिपोर्ट AM2x परिवार के उपकरणों पर कई CSI-6 कैमरों का उपयोग करके अनुप्रयोग विकास का वर्णन करती है। AM4A SoC पर 62 कैमरों पर डीप लर्निंग के साथ ऑब्जेक्ट डिटेक्शन का एक संदर्भ डिज़ाइन, प्रदर्शन विश्लेषण के साथ प्रस्तुत किया गया है। डिज़ाइन के सामान्य सिद्धांत CSI-2 इंटरफ़ेस वाले अन्य SoC, जैसे AM62x और AM62P, पर भी लागू होते हैं।
परिचय
आधुनिक विज़न सिस्टम में एम्बेडेड कैमरे महत्वपूर्ण भूमिका निभाते हैं। एक सिस्टम में कई कैमरों का उपयोग इन सिस्टम की क्षमताओं का विस्तार करता है और ऐसी क्षमताएँ प्रदान करता है जो एक कैमरे से संभव नहीं हैं। नीचे कुछ उदाहरण दिए गए हैंampएकाधिक एम्बेडेड कैमरों का उपयोग करने वाले अनुप्रयोगों की संख्या:
- सुरक्षा निगरानी: रणनीतिक रूप से लगाए गए कई कैमरे व्यापक निगरानी कवरेज प्रदान करते हैं। ये पैनोरमिक viewइससे ब्लाइंड स्पॉट्स में कमी आएगी, तथा ऑब्जेक्ट ट्रैकिंग और पहचान की सटीकता बढ़ेगी, जिससे समग्र सुरक्षा उपायों में सुधार होगा।
- चारों ओर से घेरना Viewस्टीरियो विज़न सेटअप बनाने के लिए कई कैमरों का इस्तेमाल किया जाता है, जिससे त्रि-आयामी जानकारी और गहराई का अनुमान लगाना संभव होता है। यह स्वचालित वाहनों में बाधाओं का पता लगाने, रोबोटिक्स में सटीक वस्तु हेरफेर और संवर्धित वास्तविकता अनुभवों की बेहतर यथार्थवादिता जैसे कार्यों के लिए महत्वपूर्ण है।
- केबिन रिकॉर्डर और कैमरा मिरर सिस्टम: कई कैमरों वाला एक कार केबिन रिकॉर्डर एक ही प्रोसेसर का इस्तेमाल करके ज़्यादा कवरेज प्रदान कर सकता है। इसी तरह, दो या ज़्यादा कैमरों वाला कैमरा मिरर सिस्टम ड्राइवर के कवरेज क्षेत्र का विस्तार कर सकता है। view और कार के सभी तरफ से अंधे स्थानों को खत्म करना।
- मेडिकल इमेजिंग: सर्जिकल नेविगेशन जैसे कार्यों के लिए मेडिकल इमेजिंग में कई कैमरों का इस्तेमाल किया जा सकता है, जिससे सर्जनों को बेहतर सटीकता के लिए कई दृष्टिकोण मिलते हैं। एंडोस्कोपी में, कई कैमरे आंतरिक अंगों की गहन जाँच संभव बनाते हैं।
- ड्रोन और हवाई इमेजिंग: ड्रोन अक्सर विभिन्न कोणों से उच्च-रिज़ॉल्यूशन वाली तस्वीरें या वीडियो कैप्चर करने के लिए कई कैमरों से लैस होते हैं। यह हवाई फोटोग्राफी, कृषि निगरानी और भूमि सर्वेक्षण जैसे अनुप्रयोगों में उपयोगी है।
- माइक्रोप्रोसेसरों की उन्नति के साथ, कई कैमरों को एक एकल सिस्टम-ऑन-चिप में एकीकृत किया जा सकता है।
(SoC) कॉम्पैक्ट और कुशल समाधान प्रदान करता है। उच्च-प्रदर्शन वीडियो/विज़न प्रोसेसिंग और डीप लर्निंग एक्सेलेरेशन वाला AM62Ax SoC, उपर्युक्त उपयोग के मामलों के लिए एक आदर्श उपकरण है। एक अन्य AM6x डिवाइस, AM62P, उच्च-प्रदर्शन एम्बेडेड 3D डिस्प्ले अनुप्रयोगों के लिए बनाया गया है। 3D ग्राफ़िक्स एक्सेलेरेशन से लैस, AM62P कई कैमरों से ली गई छवियों को आसानी से एक साथ जोड़कर एक उच्च-रिज़ॉल्यूशन वाला पैनोरमिक डिस्प्ले प्रदान कर सकता है। view. AM62A/AM62P SoC की नवीन विशेषताओं को विभिन्न प्रकाशनों में प्रस्तुत किया गया है, जैसे [4], [5], [6], आदि। यह एप्लिकेशन नोट उन फीचर विवरणों को नहीं दोहराएगा, बल्कि AM2A/AM62P पर एम्बेडेड विज़न अनुप्रयोगों में कई CSI-62 कैमरों को एकीकृत करने पर ध्यान केंद्रित करेगा। - तालिका 1-1 में छवि प्रसंस्करण के संबंध में AM62A और AM62P के बीच मुख्य अंतर दर्शाया गया है।
तालिका 1-1. इमेज प्रोसेसिंग में AM62A और AM62P के बीच अंतर
समाज | एएम62ए | AM62पी |
समर्थित कैमरा प्रकार | अंतर्निहित ISP के साथ या उसके बिना | अंतर्निहित ISP के साथ |
कैमरा आउटपुट डेटा | रॉ/YUV/RGB | वाईयूवी/आरजीबी |
आईएसपी एचडब्ल्यूए | हाँ | नहीं |
डीप लर्निंग HWA | हाँ | नहीं |
3-डी ग्राफिक्स HWA | नहीं | हाँ |
एकाधिक CSI-2 कैमरों को SoC से जोड़ना
AM6x SoC पर कैमरा सबसिस्टम में निम्नलिखित घटक शामिल हैं, जैसा कि चित्र 2-1 में दिखाया गया है:
- MIPI D-PHY रिसीवर: बाहरी कैमरों से वीडियो स्ट्रीम प्राप्त करता है, 1.5 लेन के लिए प्रति डेटा लेन 4 Gbps तक का समर्थन करता है।
- CSI-2 रिसीवर (RX): D-PHY रिसीवर से वीडियो स्ट्रीम प्राप्त करता है और या तो सीधे ISP को स्ट्रीम भेजता है या डेटा को DDR मेमोरी में डंप करता है। यह मॉड्यूल 16 वर्चुअल चैनलों तक का समर्थन करता है।
- SHIM: एक DMA रैपर जो कैप्चर की गई स्ट्रीम को DMA के माध्यम से मेमोरी में भेजने में सक्षम बनाता है। इस रैपर द्वारा कई DMA कॉन्टेक्स्ट बनाए जा सकते हैं, जिनमें से प्रत्येक कॉन्टेक्स्ट CSI-2 रिसीवर के एक वर्चुअल चैनल से संबंधित होता है।
CSI-6 RX के वर्चुअल चैनलों के उपयोग के माध्यम से AM2x पर कई कैमरों का समर्थन किया जा सकता है, भले ही SoC पर केवल एक CSI-2 RX इंटरफ़ेस हो। कई कैमरा स्ट्रीम को संयोजित करने और उन्हें एक SoC पर भेजने के लिए एक बाहरी CSI-2 एग्रीगेटिंग घटक की आवश्यकता होती है। दो प्रकार के CSI-2 एग्रीगेटिंग समाधानों का उपयोग किया जा सकता है, जिनका वर्णन निम्नलिखित अनुभागों में किया गया है।
SerDes का उपयोग करते हुए CSI-2 एग्रीगेटर
कई कैमरा स्ट्रीम को संयोजित करने का एक तरीका सीरियलाइज़िंग और डिसीरियलाइज़िंग (SerDes) समाधान का उपयोग करना है। प्रत्येक कैमरे से प्राप्त CSI-2 डेटा को एक सीरियलाइज़र द्वारा परिवर्तित किया जाता है और एक केबल के माध्यम से स्थानांतरित किया जाता है। डिसीरियलाइज़र केबलों से स्थानांतरित सभी सीरियलाइज़्ड डेटा (प्रति कैमरा एक केबल) प्राप्त करता है, स्ट्रीम को वापस CSI-2 डेटा में परिवर्तित करता है, और फिर SoC पर एकल CSI-2 RX इंटरफ़ेस पर एक इंटरलीव्ड CSI-2 स्ट्रीम भेजता है। प्रत्येक कैमरा स्ट्रीम की पहचान एक विशिष्ट वर्चुअल चैनल द्वारा की जाती है। यह एग्रीगेटिंग समाधान कैमरों से SoC तक 15 मीटर तक की लंबी दूरी के कनेक्शन की अनुमति देने का अतिरिक्त लाभ प्रदान करता है।
AM3x Linux SDK में समर्थित FPD-Link या V6-Link सीरियलाइज़र और डिसेरिएलाइज़र (SerDes), इस प्रकार के CSI-2 एग्रीगेटिंग समाधान के लिए सबसे लोकप्रिय तकनीकें हैं। FPD-Link और V3-Link डिसेरिएलाइज़र, दोनों में बैक चैनल होते हैं जिनका उपयोग सभी कैमरों को सिंक्रोनाइज़ करने के लिए फ़्रेम सिंक सिग्नल भेजने के लिए किया जा सकता है, जैसा कि [7] में बताया गया है।
चित्र 2-2 एक पूर्व दिखाता हैampSerDes का उपयोग करके एकाधिक कैमरों को एकल AM6x SoC से जोड़ने का प्रयास किया गया।
एक पूर्वampइस एग्रीगेटिंग सॉल्यूशन का एक उदाहरण Arducam V3Link कैमरा सॉल्यूशन किट में पाया जा सकता है। इस किट में एक डिसेरिएलाइज़र हब है जो 4 CSI-2 कैमरा स्ट्रीम, साथ ही 4 जोड़ी V3link सीरियलाइज़र और IMX219 कैमरों को एग्रीगेट करता है, जिसमें FAKRA कोएक्सियल केबल और 22-पिन FPC केबल शामिल हैं। आगे चर्चा किया गया संदर्भ डिज़ाइन इसी किट पर आधारित है।
SerDes का उपयोग किए बिना CSI-2 एग्रीगेटर
इस प्रकार का एग्रीगेटर सीधे कई MIPI CSI-2 कैमरों के साथ इंटरफेस कर सकता है और सभी कैमरों से डेटा को एकल CSI-2 आउटपुट स्ट्रीम में एकत्रित कर सकता है।
चित्र 2-3 एक पूर्व दिखाता हैampऐसी प्रणाली का उपयोग। इस प्रकार का एग्रीगेटिंग समाधान किसी भी सीरियलाइज़र/डिसीरियलाइज़र का उपयोग नहीं करता है, लेकिन यह CSI-2 डेटा स्थानांतरण की अधिकतम दूरी, जो 30 सेमी तक है, द्वारा सीमित है। AM6x Linux SDK इस प्रकार के CSI-2 एग्रीगेटर का समर्थन नहीं करता है।
सॉफ़्टवेयर में एकाधिक कैमरे सक्षम करना
कैमरा सबसिस्टम सॉफ्टवेयर आर्किटेक्चर
चित्र 3-1, AM62A/AM62P Linux SDK में कैमरा कैप्चर सिस्टम सॉफ्टवेयर का उच्च-स्तरीय ब्लॉक आरेख दिखाता है, जो चित्र 2-2 में HW सिस्टम के अनुरूप है।
- यह सॉफ़्टवेयर आर्किटेक्चर SoC को SerDes के उपयोग से कई कैमरा स्ट्रीम प्राप्त करने में सक्षम बनाता है, जैसा कि चित्र 2-2 में दिखाया गया है। FPD-Link/V3-Link SerDes प्रत्येक कैमरे को एक विशिष्ट I2C पता और वर्चुअल चैनल प्रदान करता है। प्रत्येक कैमरे के लिए विशिष्ट I2C पते के साथ एक विशिष्ट डिवाइस ट्री ओवरले बनाया जाना चाहिए। CSI-2 RX ड्राइवर विशिष्ट वर्चुअल चैनल संख्या का उपयोग करके प्रत्येक कैमरे को पहचानता है और प्रत्येक कैमरा स्ट्रीम के लिए एक DMA संदर्भ बनाता है। प्रत्येक DMA संदर्भ के लिए एक वीडियो नोड बनाया जाता है। फिर प्रत्येक कैमरे से डेटा DMA का उपयोग करके मेमोरी में प्राप्त और संग्रहीत किया जाता है। उपयोगकर्ता स्थान अनुप्रयोग कैमरा डेटा तक पहुँचने के लिए प्रत्येक कैमरे से संबंधित वीडियो नोड्स का उपयोग करते हैं। उदाहरणampइस सॉफ्टवेयर आर्किटेक्चर का उपयोग करने के तरीके अध्याय 4 - संदर्भ डिज़ाइन में दिए गए हैं।
- कोई भी विशिष्ट सेंसर ड्राइवर जो V4L2 फ्रेमवर्क के अनुरूप है, इस आर्किटेक्चर में प्लग एंड प्ले कर सकता है। लिनक्स SDK में नए सेंसर ड्राइवर को कैसे एकीकृत करें, इसके बारे में [8] देखें।
छवि पाइपलाइन सॉफ्टवेयर आर्किटेक्चर
- AM6x Linux SDK, GStreamer (GST) फ्रेमवर्क प्रदान करता है, जिसका उपयोग विभिन्न अनुप्रयोगों के लिए इमेज प्रोसेसिंग घटकों को एकीकृत करने हेतु सर्वर स्पेस में किया जा सकता है। SoC पर हार्डवेयर एक्सेलरेटर (HWA), जैसे कि विज़न प्री-प्रोसेसिंग एक्सेलरेटर (VPAC) या ISP, वीडियो एनकोडर/डिकोडर, और डीप लर्निंग कंप्यूट इंजन, GST के माध्यम से एक्सेस किए जाते हैं। pluginsवीपीएसी (आईएसपी) में स्वयं कई ब्लॉक हैं, जिनमें विजन इमेजिंग सब-सिस्टम (वीआईएसएस), लेंस डिस्टॉर्शन करेक्शन (एलडीसी) और मल्टीस्केलर (एमएससी) शामिल हैं, जिनमें से प्रत्येक एक जीएसटी प्लगइन से संबंधित है।
- चित्र 3-2 कैमरे से एन्कोडिंग या डीप इमेज प्रोसेसिंग तक एक विशिष्ट इमेज पाइपलाइन का ब्लॉक आरेख दिखाता है।
AM62A पर लर्निंग एप्लिकेशन। एंड-टू-एंड डेटा फ़्लो के बारे में अधिक जानकारी के लिए, EdgeAI SDK दस्तावेज़ देखें।
AM62P के लिए, छवि पाइपलाइन सरल है क्योंकि AM62P पर कोई ISP नहीं है।
प्रत्येक कैमरे के लिए एक वीडियो नोड बनाकर, GStreamer-आधारित इमेज पाइपलाइन एक साथ कई कैमरा इनपुट (एक ही CSI-2 RX इंटरफ़ेस के माध्यम से जुड़े) को प्रोसेस करने की अनुमति देती है। बहु-कैमरा अनुप्रयोगों के लिए GStreamer का उपयोग करके एक संदर्भ डिज़ाइन अगले अध्याय में दिया गया है।
संदर्भ डिजाइन
यह अध्याय 62 CSI-3 कैमरों को AM4A से जोड़ने के लिए Arducam V2Link कैमरा समाधान किट का उपयोग करते हुए, तथा सभी 62 कैमरों के लिए ऑब्जेक्ट डिटेक्शन चलाते हुए, AM4A EVM पर बहु-कैमरा अनुप्रयोगों को चलाने का संदर्भ डिजाइन प्रस्तुत करता है।
समर्थित कैमरे
अर्दुकैम V3Link किट FPD-Link/V3-Link-आधारित कैमरों और Raspberry Pi-संगत CSI-2 कैमरों, दोनों के साथ काम करता है। निम्नलिखित कैमरों का परीक्षण किया गया है:
- D3 इंजीनियरिंग D3RCM-IMX390-953
- तेंदुआ इमेजिंग LI-OV2312-FPDLINKIII-110H
- अर्दुकैम V219लिंक कैमरा सॉल्यूशन किट में IMX3 कैमरे
चार IMX219 कैमरे स्थापित करना
SK-AM62A-LP EVM (AM62A SK) सेटअप करने के लिए AM62A स्टार्टर किट EVM क्विक स्टार्ट गाइड में दिए गए निर्देशों का पालन करें और V3Link किट के माध्यम से कैमरों को AM62A SK से कनेक्ट करने के लिए ArduCam V3Link कैमरा सॉल्यूशन क्विक स्टार्ट गाइड में दिए गए निर्देशों का पालन करें। सुनिश्चित करें कि फ्लेक्स केबल, कैमरे, V3Link बोर्ड और AM62A SK पर पिन सभी ठीक से संरेखित हों।
चित्र 4-1 इस रिपोर्ट में संदर्भ डिज़ाइन के लिए प्रयुक्त सेटअप को दर्शाता है। सेटअप के मुख्य घटक इस प्रकार हैं:
- 1X SK-AM62A-LP EVM बोर्ड
- 1X अर्दुकैम V3Link d-ch अडैप्टर बोर्ड
- अर्दुकैम V3Link को SK-AM62A से जोड़ने वाली FPC केबल
- 4X V3Link कैमरा एडाप्टर (सीरियलाइज़र)
- V4Link सीरियलाइज़र को V3Link d-ch किट से जोड़ने के लिए 3X RF कोएक्सियल केबल
- 4X IMX219 कैमरे
- कैमरों को सीरियलाइज़र से जोड़ने के लिए 4X CSI-2 22-पिन केबल
- केबल: HDMI केबल, SK-AM62A-LP को पावर देने के लिए USB-C और V12Link d-ch किट के लिए 3V पावर स्रोत)
- चित्र 4-1 में नहीं दिखाए गए अन्य घटक: माइक्रो-एसडी कार्ड, SK-AM62A-LP तक पहुँचने के लिए माइक्रो-यूएसबी केबल, और स्ट्रीमिंग के लिए ईथरनेट
कैमरा और CSI-2 RX इंटरफ़ेस कॉन्फ़िगर करना
Arducam V3Link त्वरित आरंभ मार्गदर्शिका में दिए गए निर्देशों के अनुसार सॉफ़्टवेयर सेटअप करें। कैमरा सेटअप स्क्रिप्ट, setup-imx219.sh चलाने के बाद, कैमरे का फ़ॉर्मेट, CSI-2 RX इंटरफ़ेस फ़ॉर्मेट, और प्रत्येक कैमरे से संबंधित वीडियो नोड तक के रूट ठीक से कॉन्फ़िगर हो जाएँगे। चार IMX219 कैमरों के लिए चार वीडियो नोड बनाए जाते हैं। कमांड "v4l2-ctl –list-devices" सभी V4L2 वीडियो डिवाइस प्रदर्शित करता है, जैसा कि नीचे दिखाया गया है:
tiscsi6rx के अंतर्गत 1 वीडियो नोड और 2 मीडिया नोड हैं। प्रत्येक वीडियो नोड CSI2 RX ड्राइवर द्वारा आवंटित DMA संदर्भ से मेल खाता है। 6 वीडियो नोड्स में से, 4 का उपयोग 4 IMX219 कैमरों के लिए किया जाता है, जैसा कि नीचे दी गई मीडिया पाइप टोपोलॉजी में दिखाया गया है:
जैसा कि ऊपर दिखाया गया है, मीडिया इकाई 30102000.ticsi2rx में 6 स्रोत पैड हैं, लेकिन केवल पहले 4 का उपयोग किया जाता है, प्रत्येक एक IMX219 के लिए। मीडिया पाइप टोपोलॉजी को ग्राफ़िक रूप से भी दर्शाया जा सकता है। डॉट उत्पन्न करने के लिए निम्न कमांड चलाएँ। file:
फिर PNG फ़ाइल बनाने के लिए Linux होस्ट PC पर नीचे दिए गए कमांड को चलाएँ file:
चित्र 4-2 ऊपर दिए गए कमांड्स का उपयोग करके बनाया गया एक चित्र है। चित्र 3-1 के सॉफ़्टवेयर आर्किटेक्चर के घटक इस ग्राफ़ में देखे जा सकते हैं।
चार कैमरों से स्ट्रीमिंग
हार्डवेयर और सॉफ़्टवेयर दोनों को ठीक से सेट अप करने पर, उपयोगकर्ता स्पेस से बहु-कैमरा एप्लिकेशन चलाए जा सकते हैं। AM62A के लिए, अच्छी छवि गुणवत्ता प्रदान करने के लिए ISP को ट्यून किया जाना आवश्यक है। ISP ट्यूनिंग कैसे करें, इसके लिए AM6xA ISP ट्यूनिंग गाइड देखें। निम्नलिखित अनुभाग उदाहरण प्रस्तुत करते हैं।ampकैमरा डेटा को डिस्प्ले पर स्ट्रीम करने, कैमरा डेटा को नेटवर्क पर स्ट्रीम करने और कैमरा डेटा को स्टोर करने के कई तरीके हैं। files.
प्रदर्शित करने के लिए कैमरा डेटा स्ट्रीमिंग
इस मल्टी-कैमरा सिस्टम का एक बुनियादी अनुप्रयोग सभी कैमरों से वीडियो को एक ही SoC से जुड़े डिस्प्ले पर स्ट्रीम करना है। निम्नलिखित एक GStreamer पाइपलाइन उदाहरण है।ampएक डिस्प्ले पर चार IMX219 स्ट्रीम करने की क्षमता (पाइपलाइन में वीडियो नोड संख्या और v4l-सबडेव संख्या संभवतः रीबूट से रीबूट तक बदल जाएगी)।
ईथरनेट के माध्यम से कैमरा डेटा स्ट्रीमिंग
उसी SoC से जुड़े डिस्प्ले पर स्ट्रीमिंग करने के बजाय, कैमरा डेटा को ईथरनेट के ज़रिए भी स्ट्रीम किया जा सकता है। प्राप्त करने वाला पक्ष या तो कोई अन्य AM62A/AM62P प्रोसेसर या कोई होस्ट PC हो सकता है। निम्नलिखित एक उदाहरण है।ampईथरनेट के माध्यम से कैमरा डेटा को स्ट्रीम करने की विधि (सरलता के लिए दो कैमरों का उपयोग करना) (पाइपलाइन में प्रयुक्त एनकोडर प्लगइन पर ध्यान दें):
निम्नलिखित एक पूर्व हैampकैमरा डेटा प्राप्त करने और किसी अन्य AM62A/AM62P प्रोसेसर पर डिस्प्ले पर स्ट्रीमिंग करने की विधि:
कैमरा डेटा संग्रहीत करना Files
किसी डिस्प्ले या नेटवर्क के माध्यम से स्ट्रीमिंग करने के बजाय, कैमरा डेटा को स्थानीय रूप से संग्रहीत किया जा सकता है fileनीचे दी गई पाइपलाइन प्रत्येक कैमरे के डेटा को संग्रहीत करती है file (एक उदाहरण के रूप में दो कैमरों का उपयोग करनाampसरलता के लिए)।
मल्टीकैमरा डीप लर्निंग इंफरेंस
AM62A में दो TOPS तक के डीप लर्निंग एक्सेलरेटर (C7x-MMA) लगे हैं, जो वर्गीकरण, ऑब्जेक्ट डिटेक्शन, सिमेंटिक सेगमेंटेशन आदि के लिए विभिन्न प्रकार के डीप लर्निंग मॉडल चलाने में सक्षम हैं। यह खंड दिखाता है कि AM62A चार अलग-अलग कैमरा फीड पर एक साथ चार डीप लर्निंग मॉडल कैसे चला सकता है।
मॉडल चयन
टीआई का एजएआई-मॉडलज़ू सैकड़ों अत्याधुनिक मॉडल प्रदान करता है, जिन्हें उनके मूल प्रशिक्षण ढाँचों से एक एम्बेडेड-अनुकूल प्रारूप में परिवर्तित/निर्यात किया जाता है ताकि उन्हें सी7एक्स-एमएमए डीप लर्निंग एक्सेलरेटर पर लोड किया जा सके। क्लाउड-आधारित एज एआई स्टूडियो मॉडल एनालाइज़र एक उपयोग में आसान "मॉडल चयन" टूल प्रदान करता है। इसे टीआई एजएआई-मॉडलज़ू में समर्थित सभी मॉडलों को शामिल करने के लिए गतिशील रूप से अपडेट किया जाता है। इस टूल के लिए किसी पूर्व अनुभव की आवश्यकता नहीं है और यह वांछित मॉडल में आवश्यक विशेषताओं को दर्ज करने के लिए एक उपयोग में आसान इंटरफ़ेस प्रदान करता है।
इस मल्टी-कैमरा डीप लर्निंग प्रयोग के लिए TFL-OD-2000-ssd-mobV1-coco-mlperf को चुना गया था। यह मल्टी-ऑब्जेक्ट डिटेक्शन मॉडल TensorFlow फ्रेमवर्क में 300×300 इनपुट रेज़ोल्यूशन के साथ विकसित किया गया है। तालिका 4-1 लगभग 80 विभिन्न वर्गों वाले cCOCO डेटासेट पर प्रशिक्षित होने पर इस मॉडल की महत्वपूर्ण विशेषताओं को दर्शाती है।
तालिका 4-1. मॉडल TFL-OD-2000-ssd-mobV1-coco-mlperf की मुख्य विशेषताएँ.
नमूना | काम | संकल्प | एफपीएस | एमएपी 50%
COCO पर सटीकता |
विलंबता/फ़्रेम (एमएस) | डीडीआर बीडब्ल्यू
उपयोग (एमबी/फ्रेम) |
टीएफएल-ओडी-2000-एसएसडी-
mobV1-कोको-mlperf |
बहु वस्तु पहचान | 300×300 | ~152 | 15.9 | 6.5 | 18.839 |
पाइपलाइन सेटअप
चित्र 4-3 4-कैमरा डीप लर्निंग GStreamer पाइपलाइन को दर्शाता है। TI, GStreamer का एक सूट प्रदान करता है plugins जो मीडिया प्रोसेसिंग और डीप लर्निंग इंफरेंस के कुछ काम को हार्डवेयर एक्सेलरेटर पर स्थानांतरित करने की अनुमति देते हैं। कुछ उदाहरणampइनमें से कम plugins इसमें tiovxisp, tiovxmultiscaler, tiovxmosaic, और tidlinferer शामिल हैं। चित्र 4-3 में दी गई पाइपलाइन में सभी आवश्यक जानकारी शामिल है plugins 4-कैमरा इनपुट के लिए एक मल्टीपाथ GStreamer पाइपलाइन के लिए, प्रत्येक में मीडिया प्रीप्रोसेस, डीप लर्निंग इंफरेंस और पोस्टप्रोसेस शामिल हैं। plugins प्रत्येक कैमरा पथ को आसान प्रदर्शन के लिए ग्राफ में स्टैक किया गया है।
उपलब्ध हार्डवेयर संसाधन चारों कैमरा पथों में समान रूप से वितरित हैं। उदाहरण के लिए, AM62A में दो इमेज मल्टीस्केलर हैं: MSC0 और MSC1। पाइपलाइन स्पष्ट रूप से MSC0 को कैमरा 1 और कैमरा 2 पथों को प्रोसेस करने के लिए समर्पित करती है, जबकि MSC1 कैमरा 3 और कैमरा 4 को समर्पित है।
चार कैमरा पाइपलाइनों के आउटपुट को tiovxmosaic प्लगइन का उपयोग करके छोटा करके एक साथ जोड़ा जाता है। आउटपुट एक ही स्क्रीन पर प्रदर्शित होता है। चित्र 4-4 ऑब्जेक्ट डिटेक्शन चलाने वाले डीप लर्निंग मॉडल के साथ चार कैमरों का आउटपुट दिखाता है। प्रत्येक पाइपलाइन (कैमरा) 30 FPS और कुल 120 FPS पर चल रही है।
अगला चित्र मल्टीकैमरा डीप लर्निंग उपयोग मामले के लिए पूर्ण पाइपलाइन स्क्रिप्ट है, जो चित्र 4-3 में दिखाया गया है।
अदाकारी का समीक्षण
V3Link बोर्ड और AM62A SK का उपयोग करने वाले चार कैमरों वाले सेटअप का परीक्षण विभिन्न अनुप्रयोग परिदृश्यों में किया गया, जिसमें सीधे स्क्रीन पर प्रदर्शित करना, ईथरनेट (चार UDP चैनल) पर स्ट्रीमिंग, 4 अलग-अलग नेटवर्क पर रिकॉर्डिंग करना शामिल है। fileगहन शिक्षण अनुमान के साथ। प्रत्येक प्रयोग में, हमने पूरे सिस्टम की क्षमताओं का पता लगाने के लिए फ्रेम दर और सीपीयू कोर के उपयोग पर नज़र रखी।
जैसा कि पहले चित्र 4-4 में दिखाया गया है, डीप लर्निंग पाइपलाइन CPU कोर लोड को स्क्रीन के निचले भाग में बार ग्राफ़ के रूप में दिखाने के लिए टिपरफ़ओवरले GStreamer प्लगइन का उपयोग करती है। डिफ़ॉल्ट रूप से, लोड को उपयोग प्रतिशत के रूप में दिखाने के लिए ग्राफ़ हर दो सेकंड में अपडेट होता है।tagई. टिपरफओवरले जीस्ट्रीमर प्लगइन के अलावा, परफ_स्टैट्स टूल एक दूसरा विकल्प है जो टर्मिनल पर सीधे कोर प्रदर्शन को दिखाता है, जिसमें सहेजने का विकल्प भी है। fileयह उपकरण tTiperfoverlay की तुलना में अधिक सटीक है क्योंकि यह ARMm कोर और DDR पर ग्राफ बनाने और उसे स्क्रीन पर ओवरले करने के लिए अतिरिक्त भार डालता है। perf_stats उपकरण का उपयोग मुख्य रूप से इस दस्तावेज़ में दिखाए गए सभी परीक्षण मामलों में हार्डवेयर उपयोग परिणाम एकत्र करने के लिए किया जाता है। इन परीक्षणों में अध्ययन किए गए कुछ महत्वपूर्ण प्रोसेसिंग कोर और एक्सेलरेटर में मुख्य प्रोसेसर (चार A53 आर्म कोर @ 1.25GHz), डीप लर्निंग एक्सेलरेटर (C7x-MMA @ 850MHz), VISS और मल्टीस्केलर (MSC0 और MSC1) के साथ VPAC (ISP), और DDR ऑपरेशन शामिल हैं।
तालिका 5-1 तीन उपयोग मामलों के लिए चार कैमरों के साथ AM62A का उपयोग करते समय प्रदर्शन और संसाधन उपयोग को दर्शाती है, जिसमें एक डिस्प्ले पर चार कैमरों को स्ट्रीम करना, ईथरनेट पर स्ट्रीमिंग करना और चार अलग-अलग कैमरों पर रिकॉर्डिंग करना शामिल है। fileएस। प्रत्येक उपयोग के मामले में दो परीक्षण लागू किए गए हैं: केवल कैमरे के साथ और गहन शिक्षण अनुमान के साथ। इसके अलावा, तालिका 5-1 में पहली पंक्ति हार्डवेयर उपयोग को दिखाती है जब केवल ऑपरेटिंग सिस्टम बिना किसी उपयोगकर्ता अनुप्रयोगों के AM62A पर चल रहा था। अन्य परीक्षण मामलों के हार्डवेयर उपयोग का मूल्यांकन करते समय तुलना करने के लिए इसका उपयोग आधार रेखा के रूप में किया जाता है। जैसा कि तालिका में दिखाया गया है, गहन शिक्षण और स्क्रीन डिस्प्ले वाले चार कैमरे 30 एफपीएस प्रत्येक पर संचालित होते हैं, चार कैमरों के लिए कुल 120 एफपीएस के साथ। यह उच्च फ्रेम दर गहन शिक्षण त्वरक (C86x-MMA) पूर्ण क्षमता के केवल 7% के साथ हासिल की जाती है। इसके अलावा, यह ध्यान रखना महत्वपूर्ण है कि इन प्रयोगों में गहन शिक्षण त्वरक को 850 मेगाहर्ट्ज के बजाय 1000 मेगाहर्ट्ज पर देखा गया था
तालिका 5-1. स्क्रीन डिस्प्ले, ईथरनेट स्ट्रीम, रिकॉर्ड टू के लिए 62 IMX4 कैमरों के साथ उपयोग किए जाने पर AM219A का प्रदर्शन (FPS) और संसाधन उपयोग Files, और डीप लर्निंग इन्फ़रेंसिंग करना
आवेदन n | पाइपलाइन (संचालन
) |
उत्पादन | एफपीएस औसत पाइपलाइन | एफपीएस
कुल |
एमपीयू ए53एस @ 1.25
गीगाहर्ट्ज [%] |
एमसीयू आर5 [%] | डीएलए (सी7एक्स-एमएमए) @ 850
मेगाहर्ट्ज [%] |
विज़ [%] | एमएससी0 [%] | एमएससी1 [%] | डीडीआर
रोड [एमबी/एस] |
डीडीआर
Wr [एमबी/एस] |
डीडीआर
कुल [एमबी/एस] |
कोई ऐप नहीं | आधार रेखा कोई ऑपरेशन नहीं | NA | NA | NA | 1.87 | 1 | 0 | 0 | 0 | 0 | 560 | 19 | 579 |
कैमरा केवल | धारा स्क्रीन करने के लिए | स्क्रीन | 30 | 120 | 12 | 12 | 0 | 70 | 61 | 60 | 1015 | 757 | 1782 |
ईथरनेट पर स्ट्रीम करें | पीडीयू: 4
पोर्ट 1920×1080 |
30 | 120 | 23 | 6 | 0 | 70 | 0 | 0 | 2071 | 1390 | 3461 | |
अभिलेख को files | 4 fileएस 1920×1080 | 30 | 120 | 25 | 3 | 0 | 70 | 0 | 0 | 2100 | 1403 | 3503 | |
सांचा गहन शिक्षा के साथ | गहन शिक्षण: वस्तु पहचान MobV1- कोको | स्क्रीन | 30 | 120 | 38 | 25 | 86 | 71 | 85 | 82 | 2926 | 1676 | 4602 |
डीप लर्निंग: ऑब्जेक्ट डिटेक्शन MobV1- कोको और स्ट्रीम ओवर ईथरनेट | पीडीयू: 4
पोर्ट 1920×1080 |
28 | 112 | 84 | 20 | 99 | 66 | 65 | 72 | 4157 | 2563 | 6720 | |
गहन शिक्षण: वस्तु पहचान MobV1- कोको और रिकॉर्ड files | 4 fileएस 1920×1080 | 28 | 112 | 87 | 22 | 98 | 75 | 82 | 61 | 2024 | 2458 | 6482 |
सारांश
यह एप्लिकेशन रिपोर्ट बताती है कि AM6x उपकरणों पर मल्टी-कैमरा एप्लिकेशन कैसे लागू करें। रिपोर्ट में अर्दुकैम के V3Link कैमरा सॉल्यूशन किट और AM62A SK EVM पर आधारित एक संदर्भ डिज़ाइन दिया गया है, जिसमें स्ट्रीमिंग और ऑब्जेक्ट डिटेक्शन जैसे कई कैमरा एप्लिकेशन चार IMX219 कैमरों का उपयोग करते हैं। उपयोगकर्ताओं को अर्दुकैम से V3Link कैमरा सॉल्यूशन किट प्राप्त करने और इन उदाहरणों को दोहराने के लिए प्रोत्साहित किया जाता है।ampरिपोर्ट में विभिन्न कॉन्फ़िगरेशन के तहत चार कैमरों का उपयोग करते समय AM62A के प्रदर्शन का विस्तृत विश्लेषण भी दिया गया है, जिसमें स्क्रीन पर डिस्प्ले करना, ईथरनेट पर स्ट्रीमिंग करना और रिकॉर्डिंग करना शामिल है। fileयह AM62A की चार अलग-अलग कैमरा स्ट्रीम पर समानांतर रूप से डीप लर्निंग इंफ़रेंस करने की क्षमता भी दर्शाता है। अगर इन एक्स को चलाने के बारे में कोई प्रश्न हैं, तो कृपया नीचे दिए गए निर्देशों का पालन करें।amples, TI E2E फोरम पर एक जांच प्रस्तुत करें।
संदर्भ
- AM62A स्टार्टर किट EVM त्वरित प्रारंभ मार्गदर्शिका
- ArduCam V3Link कैमरा समाधान त्वरित आरंभ मार्गदर्शिका
- AM62A के लिए Edge AI SDK दस्तावेज़ीकरण
- ऊर्जा-कुशल AM62A प्रोसेसर का उपयोग करने वाले एज AI स्मार्ट कैमरे
- AM62A पर कैमरा मिरर सिस्टम
- AM62A पर ड्राइवर और अधिभोग निगरानी प्रणाली
- चारों ओर के लिए क्वाड चैनल कैमरा अनुप्रयोग View और सीएमएस कैमरा सिस्टम
- AM62Ax Linux अकादमी CIS-2 सेंसर को सक्षम करने पर
- एज एआई मॉडलज़ू
- एज एआई स्टूडियो
- Perf_stats टूल
इस आवेदन में संदर्भित टीआई पार्ट्स नोट:
- https://www.ti.com/product/AM62A7
- https://www.ti.com/product/AM62A7-Q1
- https://www.ti.com/product/AM62A3
- https://www.ti.com/product/AM62A3-Q1
- https://www.ti.com/product/AM62P
- https://www.ti.com/product/AM62P-Q1
- https://www.ti.com/product/DS90UB960-Q1
- https://www.ti.com/product/DS90UB953-Q1
- https://www.ti.com/product/TDES960
- https://www.ti.com/product/TSER953
महत्वपूर्ण सूचना और अस्वीकरण
TI तकनीकी और विश्वसनीयता डेटा (डेटा शीट सहित), डिज़ाइन संसाधन (संदर्भ डिज़ाइन सहित), एप्लिकेशन या अन्य डिज़ाइन सलाह प्रदान करता है, WEB उपकरण, सुरक्षा जानकारी, और अन्य संसाधन "जैसा है" और सभी दोषों के साथ, और सभी वारंटी, व्यक्त और निहित, को अस्वीकार करते हैं, जिसमें बिना किसी सीमा के व्यापारिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता या तीसरे पक्ष की बुद्धि का उल्लंघन न करने की कोई निहित वारंटी शामिल है। यूएएल संपत्ति अधिकार .
ये संसाधन TI उत्पादों के साथ डिजाइन करने वाले कुशल डेवलपर्स के लिए हैं। आप इसके लिए पूरी तरह से जिम्मेदार हैं
- अपने अनुप्रयोग के लिए उपयुक्त TI उत्पादों का चयन करना,
- अपने आवेदन को डिजाइन करना, मान्य करना और परीक्षण करना, और
- यह सुनिश्चित करना कि आपका आवेदन लागू मानकों, तथा किसी भी अन्य सुरक्षा, संरक्षा, विनियामक या अन्य आवश्यकताओं को पूरा करता है।
ये संसाधन बिना किसी पूर्व सूचना के परिवर्तन के अधीन हैं। TI आपको इन संसाधनों का उपयोग केवल ऐसे एप्लिकेशन के विकास के लिए करने की अनुमति देता है जो संसाधन में वर्णित TI उत्पादों का उपयोग करते हैं। इन संसाधनों का अन्यत्र पुनरुत्पादन और प्रदर्शन निषिद्ध है। किसी अन्य TI बौद्धिक संपदा अधिकार या किसी तृतीय पक्ष बौद्धिक संपदा अधिकार के लिए कोई लाइसेंस नहीं दिया जाता है। TI इन संसाधनों के आपके उपयोग से उत्पन्न होने वाले किसी भी दावे, क्षति, लागत, हानि और देनदारियों के लिए ज़िम्मेदारी से इनकार करता है और आप TI और उसके प्रतिनिधियों को पूरी तरह से क्षतिपूर्ति करेंगे।
टीआई के उत्पाद टीआई की बिक्री शर्तों या अन्य लागू शर्तों के अधीन प्रदान किए जाते हैं ti.com या ऐसे TI उत्पादों के साथ संयोजन में प्रदान किया गया है। TI द्वारा इन संसाधनों का प्रावधान TI उत्पादों के लिए TI की लागू वारंटी या वारंटी अस्वीकरणों का विस्तार या अन्यथा परिवर्तन नहीं करता है।
टीआई आपके द्वारा प्रस्तावित किसी भी अतिरिक्त या भिन्न शर्त पर आपत्ति करता है तथा उसे अस्वीकार करता है।
महत्वपूर्ण सूचना
- डाक पता: टेक्सास इंस्ट्रूमेंट्स, पोस्ट ऑफिस बॉक्स 655303, डलास, टेक्सास 75265
- कॉपीराइट © 2024, टेक्सास इंस्ट्रूमेंट्स इनकॉर्पोरेटेड
अक्सर पूछे जाने वाले प्रश्नों
प्रश्न: क्या मैं AM6x परिवार के उपकरणों के साथ किसी भी प्रकार के कैमरे का उपयोग कर सकता हूँ?
AM6x परिवार विभिन्न प्रकार के कैमरों का समर्थन करता है, जिनमें अंतर्निहित ISP वाले या उसके बिना वाले भी शामिल हैं। समर्थित कैमरा प्रकारों के बारे में अधिक जानकारी के लिए विनिर्देश देखें।
: छवि प्रसंस्करण में AM62A और AM62P के बीच मुख्य अंतर क्या हैं?
प्रमुख भिन्नताओं में समर्थित कैमरा प्रकार, कैमरा आउटपुट डेटा, ISP HWA, डीप लर्निंग HWA और 3-D ग्राफ़िक्स HWA की उपस्थिति शामिल है। विस्तृत तुलना के लिए विनिर्देश अनुभाग देखें।
दस्तावेज़ / संसाधन
![]() |
टेक्सास इंस्ट्रूमेंट्स AM6x मल्टीपल कैमरा विकसित कर रहा है [पीडीएफ] उपयोगकर्ता गाइड AM62A, AM62P, AM6x मल्टीपल कैमरा विकसित करना, AM6x, मल्टीपल कैमरा विकसित करना, मल्टीपल कैमरा, कैमरा |