2012-12-17 10 views
7

यदि मेरे पास एक ज्ञात कैमरा पॉज़ (रोटेशन + स्थिति), और इंट्रिनिक्स (विरूपण गुणांक और कैमरा मैट्रिक्स) है, और 2 कैमरे एक ही दृश्य पर थोड़ा अलग कोण से इंगित करते हैं।बंडल समायोजन फ़ंक्शन

क्या कैमरा पॉज़ को परिष्कृत करने के लिए बंडल समायोजन का उपयोग करने का कोई तरीका है? अधिमानतः कुछ पहले से मौजूद एपीआई या फ़ंक्शन में जो उपयोग करने के लिए बहुत अधिक गणितीय ज्ञान की आवश्यकता होती है।

उत्तर

2

आप http://www.inf.ethz.ch/personal/chzach/opensource.html पर एसएसबीए को देखना चाहेंगे लेकिन इसे अभी भी कुछ गणितीय अंतर्दृष्टि की आवश्यकता होगी ताकि इसे ठीक से उपयोग किया जा सके।

+0

लिंक अब और काम नहीं करता है। – aledalgrande

+1

दरअसल यह गायब हो गया है, आप अभी भी इस रेपो के उपनिर्देश से एसएसबीए 3.0 के लिए कोड प्राप्त कर सकते हैं: https://github.com/royshil/SfM-Toy-Library/tree/master/3rdparty – dvhamme

2

आप OpenCV के अंदर कार्यान्वयन को आजमा सकते हैं। यह contrib मॉड्यूल में है। लेकिन मैं इसे अभी तक ठीक से काम नहीं कर सका ..:/ article about it

+1

यह केवल पैनोरैमिक छवियों तक ही सीमित है इस लेखन के समय के रूप में यदि आप उदाहरण के लिए कुछ अनुवाद करते हैं तो परिणाम भयानक हैं। – rbaleksandar

+2

मैं पैनोरैमिक छवियों की सामान्य अवधारणा का विरोध केवल एक घूर्णन कैमरा गति को मानने के बराबर करना चाहता हूं। सिर्फ इसलिए कि कैमरा फ्रेम को गोलाकार पर प्रक्षेपित किया जाता है, इसका मतलब यह नहीं है कि उन्हें इस तरह से कब्जा करना होगा। मुझे लगता है कि यह वर्तमान ओपनसीवी कार्यान्वयन में एक दोष है कि HomographyBasedEstimator और BundleAdjusterReproj के साथ-साथ BundleAdjusterRay सभी एक घूर्णन गति मॉडल मानते हैं। मेरी इच्छा है कि गति मॉडल गठबंधन होने पर अधिक सामान्य समस्या को सुलझाने के वैकल्पिक तरीके थे। –

5

आपको PBA (Multicore Bundle Adjustment) from Changchang Wu का उपयोग करना चाहिए। यह वास्तव में एक अच्छी पुस्तकालय है और यह सी ++ में लिखा गया है। इसके अलावा, इसमें मल्टी कोर कंप्यूटेशंस और यहां तक ​​कि लगभग 20 गुना गति के साथ GPU गणना भी शामिल है।

यह स्पष्ट रूप से संरचित और उपयोग करने में आसान है।

तो SBA from Lourakis का उपयोग करने या SSBA from Christopher Zach का उपयोग करने के बजाय आपको PBA का उपयोग करना चाहिए।

+0

पीबीए अच्छी तरह से अनुकूलित और बहुत तेज है, लेकिन एसएसबीए (उदाहरण के लिए एफएक्स/एफई) कम सुविधाओं का समर्थन करता है। चुनने के लिए कौन सी समस्या उस समस्या पर निर्भर करती है जिस पर आप काम कर रहे हैं। – simon

2

सेरेस सॉल्वर आज़माएं। एक उदाहरण कार्यान्वयन here उपलब्ध है। फिर, आपको बंडल समायोजन के गणितीय सिद्धांतों की समझ की आवश्यकता होगी। लेकिन यह अपरिहार्य है।