कॉन्ट्रोस मैचिंग - कॉन्टोज़ विस्थापन ढूंढना


17

मुझे एक ही वस्तु के साथ दो छवियों पर आकृति मिली है और मैं इस वस्तु के विस्थापन और रोटेशन को खोजना चाहता हूं। मैंने इस कंट्रोल्स के रोटेटिंग बाउंडिंग बॉक्स और फिर इसके एंगल्स और सेंटर पॉइंट्स के साथ कोशिश की है, लेकिन बाउंडिंग बॉक्स्स के रोटेशन कॉन्टूर रोटेशन के बारे में सही तरीके से नहीं बताते हैं क्योंकि यह एंगल 0, a + 90, a + 180 आदि के लिए समान है। डिग्री कम है। क्या यह किसी अन्य तरीके से कंट्रोल्स के रोटेशन और विस्थापन का पता लगाने का है? शायद उत्तल पतवार, उत्तल दोष के कुछ उपयोग? मैंने लर्निंग OpenCv में मैचिंग कंट्रोल्स के बारे में पढ़ा है लेकिन इससे कोई मदद नहीं मिली। क्या कोई उदाहरण दे सकता है?

उदाहरण:

1 2 3 4

मैं उदाहरण के लिए गुलाबी वर्ग का पता लगाना चाहता हूं, और दूसरे मामले में कलम का। अन्य उदाहरण कुछ छेदों, तारों आदि के साथ वर्ग हो सकते हैं जैसा कि मैंने कहा कि मैं कुछ असमान चीज़ बनाना चाहता हूं। किसी भी सुझाव की सराहना की जाती है क्योंकि मैं यथासंभव कई तरीकों का परीक्षण करना चाहता हूं।


चित्र यहाँ मदद करेगा
दर्पण

मैं कुछ सार्वभौमिक कार्य करना चाहता हूं। तो जैसा कि परीक्षण चित्र कुछ भी हो सकता है। आयत के रूप में सरल आकार का तत्व, या थोड़ा अधिक जटिल आकार।
krzych

2
ठीक है, आप सभी मामलों में एकल विधि फिट नहीं कर सकते। प्रैक्टिकल विधि कंट्रास्ट रेंज, नॉइज़ एस्टीमेशन, बैकग्राउंड और शेप पर ही निर्भर करती है - यह स्मूथनेस, टोपोलॉजी इत्यादि है। क्यों की तस्वीर मदद करेगी।
दर्पण २।

जवाबों:


4

क्या आपको कंट्रोल्स के बीच के अंतर के बारे में चिंता करनी है? यदि नहीं तो आप बस प्रत्येक समोच्च का केन्द्रक पा सकते हैं, और एक से दूसरे को घटाकर विस्थापन की गणना कर सकते हैं। फिर आप आकृति के प्रमुख अक्षों की गणना कर सकते हैं, और उनके बीच रोटेशन कोण का पता लगा सकते हैं।

यदि स्केलिंग शामिल है, तो आप संबंधित प्रिंसिपल कुल्हाड़ियों के अनुपात को ले कर स्केल फैक्टर की गणना कर सकते हैं।


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

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

क्या आप अधिक विशिष्ट हो सकते हैं जैसे कि काम क्यों नहीं किया? क्या केवल अनुवाद, रोटेशन, और स्केलिंग से संबंधित हैं या वे अन्य तरीकों से विकृत हो सकते हैं? कुछ चित्र वास्तव में मदद करेंगे। यदि आपको गैर-एफ़िन परिवर्तनों या यादृच्छिक शोर को संभालने की आवश्यकता है, तो आप आकार के संदर्भ को आज़मा सकते हैं। मुझे पता है, मैं आपको कुछ कागजात की ओर इशारा कर सकता हूं।
दिमा

वे केवल अनुवाद, रोटेशन और स्केलिंग से संबंधित हैं, विकृतियां अलग-अलग तस्वीरों पर थोड़ा अलग समोच्च पहचान से जुड़ी हैं। आकार का संदर्भ? क्या आप इसका विस्तार कर सकते हैं?
krzych

1
@kzych यह आपकी सबसे बड़ी समस्या की तरह लग रहा है यहाँ किनारे का पता लगाने में शोर होगा। आपको न्यूनतम घुमाया हुआ बॉक्स कैसे मिलेगा? मैं अभी भी स्पष्ट नहीं हूं कि यह सही काम क्यों नहीं करता है। आकृति संदर्भ एक समोच्च का प्रतिनिधित्व करने का एक तरीका है। विवरण यहाँ हैं: en.wikipedia.org/wiki/Shape_context
Dima

2

यदि आपको स्केल या प्रोजेक्टिव विकृतियों के बारे में चिंता करने की ज़रूरत नहीं है तो चेन कोड यहां मदद कर सकते हैं। यदि आपके पास समान आकार वाले लगभग समान आकार के चेन कोड हैं, तो आप एक आयामी एफएफटी चरण सहसंबंध के साथ अनुवाद पा सकते हैं। http://en.wikipedia.org/wiki/Phase_correlation

यदि आपको प्रोजेक्ट विकृति को ध्यान में रखना है तो आप कॉन्ट्रोवर्सीज़ के बजाय फीचर पॉइंट्स (कोनों की तरह) का उपयोग करने की संभावना पर भी विचार कर सकते हैं।


किसी भी सलाह कैसे अच्छा चेन कोड बनाने के लिए? OpenCv से कुछ के रूप में (जहाँ तक मुझे पता है कि यह केवल फ्रीमैन चेन है)? अभी के लिए मैं प्रत्येक समोच्च बिंदु का उपयोग करके चेन कोड बना रहा हूं और पड़ोसी बिंदुओं के एक्स अक्ष पर कोण की गणना कर रहा हूं, लेकिन शायद कुछ बेहतर विचार है? यदि आपके पास जंजीरों के बारे में किसी अच्छे कागजात का संदर्भ है तो इसकी सराहना की जाएगी।
krzych

2

सवाल में आप कहते हैं

जैसा कि मैंने कहा कि मैं कुछ असमान चीज बनाना चाहता हूं

लेकिन मुझे डर है कि समस्या का "सार्वभौमिक" समाधान ढूंढना काफी मुश्किल है।

आप एक वाणिज्यिक उपलब्ध पैटर्न लोकेटर सॉफ्टवेयर खरीद सकते हैं और इसे अपने आवेदन में एकीकृत कर सकते हैं, आमतौर पर वे आवेदनों की एक विस्तृत श्रृंखला के लिए काफी अच्छा प्रदर्शन करते हैं। बस आपको एक विचार देने के लिए इस तरह के उत्पाद के लिए संदर्भ मैनुअल है http://www.lmi3d.com/sites/default/files/support/4.2.0.70-hexsight_user_guide.pdf

इसके अलावा, आप किसी विशेष मामले (उदाहरण के लिए अपनी छवि में कलम के लिए) के लिए एक तदर्थ समाधान विकसित कर सकते हैं।

अन्यथा आप समस्या का कठिन अध्ययन कर सकते हैं, कम्प्यूटेशनल ज्यामिति ( http://www.cs.sunysb.edu/~algorith/files/shape-similarity.shtml ) में निहित बहुत बुनियादी नींव से शुरू करते हैं, जहां "कंट्रो" कहा जाता है "बहुभुज", पठन सामग्री जैसे:

एम। डी। बर्ग, ओ। डेविलर्स, एम। क्रेवेल्ड, ओ। श्वार्जकोफ और एम। टीलाउद। अनुवाद के तहत दो उत्तल बहुभुज के अधिकतम ओवरलैप की गणना करना। सैद्धांतिक कंप्यूटर विज्ञान, 31: 613-628, 1998।

तथा

एच। आह्न, ओ। चेयोंग, सी। पार्क, सी। शिन, और ए। विग्नरन। कठोर गतियों के तहत दो प्लेनर उत्तल सेटों के ओवरलैप को अधिकतम करना। कम्प्यूटेशनल ज्यामिति: सिद्धांत और अनुप्रयोग, 37: 3–15, 2007।

और मार्कस उलरिच द्वारा "छवियों में यौगिक वस्तुओं की श्रेणीबद्ध वास्तविक समय मान्यता" के साथ समाप्त होता है , जो एमवीटीईसी के साथ सहयोग करता है , जो एक अन्य सॉफ्टवेयर हाउस है जो ऑब्जेक्ट रिकग्निशन सॉफ्टवेयर टूल बेच रहा है।

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