में ज्ञात पहलू अनुपात के साथ आयताकार की दूरी ढूँढना मैं कैमरे से दूरी को एक ज्ञात पहलू अनुपात के साथ एक आयत में दूरी खोजने के लिए ओपनसीवी प्रोग्राम पर काम कर रहा हूं। एक आयत एक सामने वाले दृश्य से देखा के रूप में दूरी ढूँढना काम करता है ठीक:ओपनसीवी
wtarget · pimage d = c —————————————————————————— 2 · ptarget · tan(θfov/2)
कहाँ w:
वास्तविक दूरी बहुत दूरी इस द्वारा गणना के करीब है लक्ष्य लक्ष्य की वास्तविक चौड़ाई (इंच में) है, पी छवि समग्र छवि की पिक्सेल चौड़ाई है, पी लक्ष्य का पता चला चतुर्भुज के सबसे बड़े चौड़ाई (पिक्सेल में) की लंबाई है, और θ FOV हमारे वेब कैमरा के FOV है। इसके बाद कुछ स्थिर सी द्वारा गुणा किया जाता है।
मुद्दा यह है कि सामने वाले नहीं है तब होता है जब लक्ष्य आयत एक नजरिए से देखा जाता है:
इन दो झुकाव के बीच वास्तविक दूरी में अंतर छोटा है, लेकिन पता चला दूरी अलग है लगभग 2 फीट तक।
मैं क्या जानना चाहता हूं कि विभिन्न परिप्रेक्ष्य कोणों के लिए लेखांकन, लगातार दूरी की गणना कैसे करें। मैंने getPerspectiveTransform
के साथ प्रयोग किया है, लेकिन मुझे लक्ष्य के परिणामस्वरूप पैमाने को जानने की आवश्यकता है - मुझे केवल पहलू अनुपात पता है।
पहली बार उपयोग किए जाने पर संक्षेप में वर्तनी प्राप्त करने के लिए संभव है (SOAWFU)? क्या एक एफओवी है? क्या यह कैमरे के लेंस के दृश्य के कोण का कोण है? क्या कैमरे के लेंस में स्क्वाड बॉक्स को सामान्य करना संभव है, और उस तरह की दूरी की गणना करना संभव है?(परिप्रेक्ष्य बॉक्स को मध्य बिंदुओं का उपयोग करके शुद्ध आयताकार में परिवर्तित करें, फिर सामान्य दृश्य गणना का उपयोग करके दूरी निर्धारित करें?) – zipzit
@zipzit हां, यह कैमरे के दृश्य का क्षैतिज क्षेत्र है। ऐसा लगता है कि midpoints का उपयोग एक समानांतर बनाता है। यकीन नहीं है कि मैं इस समानांतर चक्र के साथ क्या करूँगा। – August