2012-06-14 21 views
7

मैं opencv सीखने की कोशिश कर रहा हूं। मेरे पास होमोग्राफी और एपिप्लोर ज्यामिति के बारे में एक सवाल है।क्या मैं 2 अलग-अलग कैमरों द्वारा ली गई एक ही दृश्य की 2 अलग-अलग छवियों से गणना की गई होमोग्राफी मैट्रिक्स का पुन: उपयोग कर सकता हूं?

मान लीजिए कि मैंने दो अलग-अलग दृश्य बिंदुओं से दो कैमरों के साथ ली गई दो स्थैतिक छवियों के मिलान किए गए फीचर पॉइंट्स का उपयोग करके cvFindHomography() फ़ंक्शन का उपयोग करके होमोग्राफी की गणना की है।

एक त्रुटि अगर मैं homography मैट्रिक्स का पुन: उपयोग कैमरा 1 (दाएं) छवि camera2 (बाएं) द्वारा उठाए गए से में इसी अंक पता लगाने के लिए (क्योंकि मुझे पता है कि x' = H.x जहां x' बाईं छवियों '2 डी समरूप सुविधा है, x यह है सही छवियों का 2 डी संबंधित समरूप विशेषता बिंदु और H होमोग्राफी मैट्रिक्स है) जहां होम्योरिटी मैट्रिक्स की गणना करने के लिए कैमरा 1 और कैमरा 2 में 2 डी अंक का उपयोग नहीं किया गया था?

मेरा क्या मतलब है कि क्या मैं उन दो छवियों की गणना की गई होमोग्राफी मैट्रिक्स का पुन: उपयोग कर सकता हूं ताकि किसी भी छवियों के लिए संबंधित अंक मिल सकें जिनका उपयोग होमोग्राफी मैट्रिक्स की गणना करने के लिए नहीं किया जाता है?

क्या इससे कोई फर्क पड़ता है कि जब मैं निश्चित छवियों द्वारा निर्धारित किया गया था तो मैं किस छवि का उपयोग करता हूं? या क्या मुझे हर बार इसकी गणना करने की ज़रूरत है?

उत्तर

8

आप एक छवि से दूसरी छवि तक प्रोजेक्ट पॉइंट्स के लिए होमोग्राफी का उपयोग कर सकते हैं जब तक कैमरे आगे नहीं बढ़ते हैं और दृश्य नहीं बदलता है।

मैं समझता हूं कि उन कैमरों (कैलिब्रेटेड) चित्र लेते हैं और फिर आप उन दो चित्रों के साथ हर समय काम करते हैं। ठीक है, अगर आप होमोग्राफी की गणना करते हैं, तो आप दोनों छवियों से इच्छित सभी बिंदुओं को प्रोजेक्ट कर सकते हैं। आपको निश्चित रूप से कुछ त्रुटि मिलेगी, लेकिन यह छवियों और गैर-रैखिकताओं में शोर के कारण है जो खोजथाम द्वारा उपयोग की जाने वाली रैखिक विधि को प्रभावित करती है।

यदि आप कैमरों के साथ छवियों को कैप्चर करते रहते हैं तो आपको छवियों की हर नई जोड़ी के लिए फिर से होमोग्राफी की गणना करना होगा, क्योंकि आपको एक प्राथमिक पता नहीं चलता कि दृश्य कैसे बदल जाएगा।

+0

आपके उत्तर के लिए बहुत बहुत धन्यवाद। – mvr950