सिंगल कैमरा विजन और मैपिंग सिस्टम


17

कुछ समय पहले मैंने एक छोटे से 'टॉय टैंक' का डेमो देखा, जिसमें सिंगल कैमरा लगा था। यह टैंक फर्श के चारों ओर ड्राइव करने और वस्तुओं का पता लगाने और फिर उनसे बचने के लिए आगे बढ़ने में सक्षम था। दिलचस्प बात यह थी कि इसमें सिंगल कैमरा विज़न सिस्टम का इस्तेमाल किया गया था और जहाँ तक मुझे याद है वह फ़्लैट के सपाट होने का फ़ायदा उठा रहा था। और फिर एक दर का उपयोग करके दृश्य के मोटर्स और सापेक्ष दिशा में घूम रहा था मूल्यांकन करने के लिए और इसलिए दृश्य को मैप करता है।

क्या कोई मुझे संकेत भेज सकता है कि इस पर कुछ और जानकारी प्राप्त करने के लिए क्या खोज करनी चाहिए, या कुछ संकेतकर्ता कोडबिस करने के लिए जो ऐसा कर सकते हैं।

मेरे द्वारा पूछे जाने का कारण यह है कि यह कई साल पहले (5+) से सिंगल कैमरा सिस्टम था और इसलिए (जो मुझे याद है) अपेक्षाकृत कम गणना भार था। मैं एक रास्पबेरी पीआई पर एक कार / टैंक बनाने के लिए कोशिश कर रहा था जो एक कमरे या कमरों के सेट को मैप करता है।


2
रोबोटिक्स बेन में आपका स्वागत है । कृपया वास्तविक समस्याओं के आधार पर व्यावहारिक, उत्तर देने वाले प्रश्नों को लिखने के तरीके के बारे में कुछ संकेतों के लिए पूछें और दौरे कैसे करें, कृपया देखें । धन्यवाद,
मार्क बूथ

जवाबों:


4

यह कहना मुश्किल है कि वे वास्तव में क्या कर रहे थे, लेकिन आप जो शर्तें यहां चाहते हैं, वे " ऑप्टिकल प्रवाह " और " अहंकार " हो सकते हैं। ऐसा लगता है कि कुछ फीचर डिटेक्शन और मैचिंग (SURF या SIFT जैसी कोई चीज) या अग्रभूमि / बैकग्राउंड सेग्मेंटेशन में भी फेंके गए हों।

OpenCV संभवतः कंप्यूटर दृष्टि के लिए सबसे व्यापक रूप से इस्तेमाल किया जाने वाला कोडबेस है, उनके पास गति विश्लेषण के लिए बहुत अधिक कार्यक्षमता है । OpenCV को रास्पबेरी पाई पर चलना चाहिए, हालांकि आपके एल्गोरिदम को कंप्यूटिंग शक्ति द्वारा सीमित किया जा सकता है।


4

पर बिल्डिंग WildCrustcean की प्रतिक्रिया एक और possiblity होगा स्टीरियो दृष्टि । जबकि हम अक्सर दो कैमरों का उपयोग करते हुए स्टीरियो विजन के बारे में सोचते हैं, तकनीक को वास्तव में केवल अंतरिक्ष में विस्थापित छवियों और विस्थापन के मॉडल की आवश्यकता होती है। दूसरे शब्दों में, मैं एक छवि ले सकता हूं, स्थानांतरित कर सकता हूं, फिर दूसरी छवि ले सकता हूं। जब तक मैं इन दो छवियों के बीच परिवर्तन जानता हूं तब तक मैं छवि में एक बिंदु की दूरी की गणना करने के लिए स्टीरियो विज़न तकनीकों का उपयोग कर सकता हूं।


2
मुझे लगता है कि आप जिस तकनीक के बारे में बात कर रहे हैं उसे "मोशन से स्ट्रक्चर" कहा जाता है।
कोज़ुच

1

यह पेरेलल ट्रैकिंग और मैपिंग पीटीएएम का उपयोग कर सकता था । PTAM, Simultaneous Localization और Mapping (SLAM) समस्या का एक कार्यान्वयन है जो दुनिया के 3 डी मानचित्र बनाने और दृश्य सुविधाओं को ट्रैक करके स्थानीयकरण करने के लिए एकल कैमरे का उपयोग करता है।

मेरी टीम ने एक बार ROS में PTAM पैकेज का उपयोग करके प्रयोग किया था ।

हम एक इंटेल एटम पर उबंटू चला रहे थे, और जैसा कि मुझे याद है कि यह प्रोसेसर का बहुत अधिक अनाज नहीं था। हमने हालांकि इसका उपयोग करना समाप्त नहीं किया, मुख्यतः क्योंकि हम इसे उस वातावरण में पर्याप्त सुविधाएँ खोजने के लिए नहीं प्राप्त कर सकते थे जहाँ हमारा रोबोट चल रहा होगा।


0

सामान्य तौर पर आप मीट्रिक दूरी नहीं निकाल सकते एक छवि से माप , जब तक कि आपके पास दुनिया के बारे में अतिरिक्त जानकारी न हो। उदाहरण के लिए, यदि आप जानते हैं कि दुनिया प्लानर है (या आप फर्श का पता लगा सकते हैं, जो कि एक प्लैनर क्षेत्र है), तो आप एक होमोग्राफी का अनुमान लगा सकते हैं।

होमोग्राफी विमानों के बीच एक अनुमानित परिवर्तन है (3x3 मैट्रिक्स)। कैमरे के आंतरिक अंशांकन को देखते हुए, आप इस विमान-प्रेरित होमोग्राफी को एक रोटेशन और अनुवाद में विघटित कर सकते हैं। अनुवाद पैमाने पर है। आप कैमरे से फर्श (विमान) तक की दूरी को जानकर इस पैमाने की अस्पष्टता को हल कर सकते हैं।

एक बार जब आपके पास होमोग्राफी होती है, तो आप उन वस्तुओं का पता लगा सकते हैं जो विमान में नहीं हैं। होमोग्राफी आपको दूसरी पर पहली छवि को ताना देती है। विमान की वस्तुएं संरेखित होंगी और एक छोटी सी त्रुटि होगी। विमान पर नहीं ऑब्जेक्ट्स होगा नहीं संरेखित । इसे लंबन कहते हैं।

इसे लागू करने का एक तरीका हो सकता है

  1. दोनों छवियों से सुविधाएँ निकालें।
  2. सुविधाओं का मिलान करें, या उन्हें ट्रैक करें।
  3. RANSAC का उपयोग करके होमोग्राफी का अनुमान लगाएं।
  4. अंशांकन का उपयोग करके होमोग्राफी को एक रोटेशन और अनुवाद में तब्दील करें।

  5. दूसरी पर पहली छवि को ताना । बड़ी त्रुटियों वाले पिक्सेल फर्श पर नहीं हैं और
    बाधाएं हो सकती हैं ।

अधिकांश बिल्डिंग ब्लॉक opencv ( http://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html पर देखें) में लागू किए गए हैं ) पर ।

सौभाग्य।

PS होमोग्राफी अपघटन भी आपको विमान का सामान्य आकार देगा। लेकिन, चूंकि आप मान रहे हैं कि यह जमीनी विमान है, इसलिए हम ऊपर की दिशा में सामान्य संकेत दे रहे हैं। एक अधिक सटीक समाधान आपके अंशांकन प्रक्रिया में पूरा किया जा सकता है। आप एक चेकरबोर्ड लक्ष्य का उपयोग कर सकते हैं और इसकी मुद्रा का अनुमान लगा सकते हैं। पोज़ में एक प्लेन सामान्य होगा और कैमरे से दूरी होगी।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.