पर कैमरे से दूरी ढूंढना मैं वेबकैम से एक इंच के सफेद क्षेत्र में दूरी की गणना करने के लिए ओपनसीवी का उपयोग करके एक प्रोग्राम लिखने की कोशिश कर रहा हूं। मुझे लगता है कि यह बहुत आसान होना चाहिए, लेकिन किसी भी कारण से मैं एक खाली चित्र खींच रहा हूं। समय से पहले मदद के लिए धन्यवाद।ज्ञात आकार
उत्तर
आप कैमरा कोण को कैलिब्रेट करने और दूरी खोजने के लिए त्रिभुज समानता का उपयोग कर सकते हैं।
आप अपनी गेंद का आकार जानते हैं: D
इकाइयां (उदा। सेमी)। इसे एक ज्ञात दूरी Z
पर रखें, कैमरे के सामने 1 मीटर = 100 सेमी, और इसकी स्पष्ट चौड़ाई पिक्सेल में मापें। इस चौड़ाई को d
पर कॉल करें।
कैमरे की फोकल लम्बाई f
(जो कैमरे से कैमरे से थोड़ा अलग है) तो f=d*Z/D
है।
जब आप इस कैमरे के साथ फिर से इस गेंद देखते हैं, और अपनी स्पष्ट चौड़ाई d'
पिक्सल, तो त्रिकोण समानता के आधार पर है, आप जानते हैं कि f/d'=Z'/D
और इस तरह: Z'=D*f/d'
जहां Z'
कैमरे से गेंद की वर्तमान दूरी है।
क्या समस्या कैमरे की फ़ोकल लंबाई प्राप्त नहीं कर रही है? आपके स्मार्ट फोन का कैमरा कैलिब्रेशन आपको मीटर के संदर्भ में फोकल लम्बाई नहीं देता है, लेकिन एक्स-वाई अक्षों पर पिक्सेल के मामले में। वे एक स्केलिंग कारक से गुणा किया गया है। –
पहला पैराग्राफ बताता है कि पिक्सेल में फोकल लम्बाई कैसे प्राप्त करें। त्रिभुज समानता अनिवार्य रूप से पिक्सेल से मीटर तक रूपांतरण स्केलिंग कारक पाती है। –
मैं देख रहा हूं कि आप क्या कह रहे हैं। फिर भी, छवि सेंसर आकार और कैलिब्रेशन के डेटाबेस को केवल उसी समस्या के बारे में नहीं रखना है? –
मेरे दिमाग में आपको एक कैमरा मॉडल = एक अंशांकन मॉडल की आवश्यकता होगी यदि आप दूरी या अन्य चीजों को मापना चाहते हैं (असली दुनिया)। पिन्होल कैमरा मॉडल सरल, रैखिक है और अच्छे परिणाम देता है (लेकिन विकृतियों को सही नहीं करेगा, (चाहे वे रेडियल या टेंगेंशियल हों)
यदि आप इसका उपयोग नहीं करते हैं, तो आप गणना करने में सक्षम होंगे असमानता-गहराई का नक्शा, (उदाहरण के लिए यदि आप स्टीरियो दृष्टि का उपयोग करते हैं) लेकिन यह सापेक्ष है और यह आपको पूर्ण माप नहीं देता है, केवल पीछे क्या है और किसी अन्य वस्तु के सामने क्या है ....
इसलिए, मुझे लगता है कि जवाब है: आपको इसे किसी भी तरह से कैलिब्रेट करने की आवश्यकता होगी, शायद आप उपयोगकर्ता से कैमरे के क्षेत्र तक पहुंचने के लिए कह सकते हैं जब तक कि सभी छवि विमान गेंद से पूरी तरह से भर नहीं जाते हैं, और गेंद माप के पहले ज्ञात के साथ, आप फिर दूरी की गणना करने में सक्षम हो जाएगा ....
जूलियन,
- 1. भंडारण आकार ज्ञात नहीं है
- 2. C++ ज्ञात आकार typedefed सरणी
- 3. va_list - केवल बाइट आकार ज्ञात है!
- 4. आकार() संरचनाएं ज्ञात नहीं हैं। क्यूं कर?
- 5. सी ++ में ज्ञात आकार की एक सरणी लौटाएं?
- 6. ज्ञात आयामों के साथ जेपीईजी छवि का अधिकतम फ़ाइल आकार
- 7. ज्ञात IV
- 8. ज्ञात फ़ॉन्ट
- 9. ज्ञात इनोड
- 10. किसी ज्ञात पैरेंट तत्व
- 11. दो ज्ञात रंग
- 12. ज्ञात सामग्री-प्रकार
- 13. ज्ञात वीडियो आईडी
- 14. ज्ञात वैश्विक इष्टतम
- 15. सी - त्रुटि: 'एक' ज्ञात नहीं है
- 16. एक ज्ञात स्टार्ट एंड एंडइंडेक्स
- 17. डेटाकंट्रैक्टसाइराइज़र, ज्ञात टाइप और विरासत
- 18. जावा विधि: ज्ञात विशेषता मान
- 19. एंड्रॉइड वाईफ़ाई डायरेक्ट: ज्ञात पीयर
- 20. ओपनसीवी में ज्ञात वस्तुओं का पता लगाने के लिए कैसे?
- 21. सबसे बड़ा ज्ञात नियो 4j क्लस्टर क्या है?
- 22. डब्ल्यूसीएफ: ज्ञात प्रकारों को कॉन्फ़िगर करना
- 23. विजुअल स्टूडियो 2008: ज्ञात अच्छे टीएफएस 2010
- 24. नाम क्वेरी ज्ञात नहीं - एनोटेशन और हाइबरनेट
- 25. सी # 0-1 ज्ञात योग और सेट
- 26. सी ++ ज्ञात स्थिति पर वेक्टर में डालें
- 27. एक ज्ञात लेकिन पहुंच योग्य wsdl
- 28. डब्ल्यूसीएफ सिस्टम से ज्ञात प्रकार। कॉन्फ़िगर
- 29. ज्ञात टोमकैट 6.0 और जेडीके 1.7.0_02 मुद्दे?
- 30. कभी भी ज्ञात फ़ंक्शंस नहीं ढूंढें
क्या आपने अपने सिस्टम को "कैलिब्रेटिंग" करने का प्रयास किया है? मेरा मतलब है कि आप पिक्सेल आकार को माप सकते हैं जब क्षेत्र 50 सेमी, 1 मीटर, 2 मीटर वेबकैम से दूर है, और उसके बाद अंशांकन डेटा के वास्तविक समय माप की तुलना करें? –
यह एक अच्छा विचार है, लेकिन अगर मैं एक क्रॉस-प्लेटफ़ॉर्म एप्लिकेशन बनाने की योजना बना रहा हूं जो विभिन्न वेबकैम के सभी प्रकारों पर चलाया जाएगा, तो क्या प्रत्येक अलग-अलग कैमरे को इसकी अपनी अंशांकन की आवश्यकता होगी? या एक ही गुणवत्ता के विभिन्न कैमरे (कहें, उदाहरण के लिए वीजीए) गेंद को प्रत्येक दूरी पर पिक्सेल की एक ही संख्या के रूप में देखेंगे? –
दुर्भाग्य से आपको प्रत्येक कैमरे के लिए अंशांकन की आवश्यकता होगी, क्योंकि बहुत कम लोगों के पास "दृष्टि का कोण" होता है। कुछ दूसरों की तुलना में अधिक चौड़े कोण (ज़ूम किए गए) हैं, उदाहरण के लिए यहां देखें: http://www.tomshardware.com/reviews/webcam-quality-test-shootout,878-10.html। तो मैं समझता हूं कि यह सबसे अच्छा समाधान नहीं है। –