इस विशेष बदलाव / स्केल इनवेरिएंट टेम्पलेट मिलान के लिए कौन सी छवि-प्रसंस्करण तकनीक आदर्श हैं?


17

एक समस्या यह है कि मैं मूल रूप से चर्चा की थी यहां विकसित किया गया है, और के रूप में मैं यह कुछ अधिक और प्राप्त नई जानकारी में अध्ययन एक छोटे से सरल मिल गया है हो सकता है।

निचला रेखा, मैं कंप्यूटर-दृष्टि / छवि-प्रसंस्करण तकनीकों का उपयोग करके, यहां दिखाए गए इस पैटर्न का पता लगाने में सक्षम होना चाहूंगा। जैसा कि आप देख सकते हैं, आदर्श पैटर्न चार 'पिंग्स' से बना है। वस्तु-मान्यता होनी चाहिए:

  • पारी आक्रमणकारी
    • क्षैतिज रूप से, छवि चक्रीय होगी। (यानी, दाईं ओर धक्का, बाईं तरफ निकलता है, और इसके विपरीत)।
    • (सौभाग्य से) ऊर्ध्वाधर, यह चक्रीय नहीं है। (यानी, पुश या तो ऊपर या नीचे और यह बंद हो जाएगा)।
  • स्केल इनवेरिएंट (पिंग्स 'मोटाई' में भिन्न हो सकते हैं जैसा कि आप देख सकते हैं।)

मैं इसके बारे में आगे और आगे बढ़ सकता हूं, लेकिन मैंने जो चित्र खींचे हैं उनका मतलब है, कृपया नीचे देखें:

यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें

बेशक, वे एक अलग 'पैमाने' पर भी हो सकते हैं, जैसा कि इस परिवार से देखा जा सकता है:

यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें

और अंत में, यहां कुछ 'यथार्थवादी' परिदृश्य हैं जो मुझे वास्तव में प्राप्त हो सकते हैं, जहां शोर होगा, पंक्तियां 'फीका' हो सकती हैं जैसा कि आप नीचे की ओर जाते हैं, और निश्चित रूप से, छवि में बहुत अधिक चमकदार रेखाएं, कलाकृतियां होंगी। , आदि।

यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें

और निश्चित रूप से, एक भव्य समापन के रूप में, इस 'चरम' परिदृश्य की अलग संभावना है:

यहाँ छवि विवरण दर्ज करें

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

मुझे जोड़ना चाहिए, कि वास्तव में, मेरे पास रंगीन चित्र नहीं हैं - मुझे बस संख्याओं का एक मार्टिक्स मिलेगा, इसलिए मुझे लगता है कि हम 'ग्रीसेकेल' के बारे में बात कर रहे हैं।

अग्रिम में धन्यवाद!

PS क्या इसके लायक मैं शायद खुले सी वी का उपयोग कर रहा हूँ।

EDIT # 1:

टिप्पणियों के आधार पर, मैंने आपके द्वारा अनुरोधित विवरणों को यहाँ जोड़ा है:

डेटा को परिभाषित करने वाली विशेषताओं के लिए, हम निम्नलिखित मान सकते हैं:

  • प्रत्येक पिंग की क्षैतिज लंबाई भिन्न हो सकती है, लेकिन मैं इसके ऊपरी और निचले सीमा को जानता हूं। इस सीमा के भीतर किसी भी चीज़ के लिए हाँ, बाहर की किसी चीज़ के लिए NO। (उदाहरण के लिए, मुझे पता है कि पिंग्स की लंबाई 1 और 3 सेकंड के बीच कहीं भी हो सकती है, उदाहरण के लिए)।

  • हां के लिए सभी पिंग्स को 'दृश्यमान' होना चाहिए, हालांकि, अंतिम पंक्ति गायब हो सकती है, और अभी भी 'यस' कहना चाहते हैं। अन्यथा नहीं।

  • प्रत्येक पिंग की ऊर्ध्वाधर लंबाई, ('मोटाई') अलग-अलग हो सकती है, लेकिन फिर से, ऊपरी और निचले बाउंड को भी जानती है। (उन छवियों में आप जो देखते हैं, उसके समान)। उस बाध्य के भीतर कुछ भी के लिए हाँ। बाहर कुछ भी नहीं के लिए।

  • प्रत्येक पिंग के बीच ऊँचाई हमेशा हाँ के लिए समान होनी चाहिए। यदि वे नहीं हैं, तो NO। (उदाहरण, आप देख सकते हैं कि कैसे सभी पिंग्स एक दूसरे के सापेक्ष एक ही ऊंचाई के हैं, ऊर्ध्वाधर अक्ष पर ~ 110)। तो 110 +/- 5 एक हाँ हो सकता है, और कुछ भी नहीं होना चाहिए।

मुझे लगता है कि इसके बारे में - लेकिन मुझे पता है कि मैं और क्या जोड़ सकता हूं ... (इसके अलावा, यहां दिखाया गया सब कुछ YES, btw के रूप में पंजीकृत होना चाहिए)।


आपके कहने का क्या मतलब है detect this pattern shown here? क्या आप सिर्फ लाल / पीले रंग की रेखा को अलग करने में रुचि रखते हैं या क्या आप वास्तव में ऐसी अभिव्यक्ति चाहते हैं जो इस तरह की रेखाओं के बीच संबंध स्थापित करता हो। केवल खोजने वाली लाइनों को केवल कुछ थ्रेसहोल्ड या विभाजन की आवश्यकता हो सकती है। आप असल में चाहते क्या हो?
दीपन मेहता

@DipanMehta भ्रम के लिए क्षमा करें। मैं यह करना चाहता हूं: सबसे पहले रंगों पर ध्यान न दें, (इसका सिर्फ यह कहना है कि उन्हें प्लॉट किया गया था), मेरे पास क्या होगा बस संख्याओं का एक मैट्रिक्स है, इसलिए ग्रेस्केल। दूसरी बात, चूँकि कोई रंग नहीं हैं, मुझे केवल 'पैटर्न' के बारे में परवाह है जो आप 4 पिंग्स के साथ देख रहे हैं जिसे आप दोहरा रहे हैं। तो डिटेक्टर उस छवि टेम्पलेट के वेरिएंट को देखेगा जैसा कि ऊपर की छवियों में दिखाया गया है, और कहते हैं कि 'हां, यह पैटर्न मौजूद है'। भ्रम के लिए क्षमा करें, मुझे बताएं कि क्या मैं कुछ और स्पष्ट कर सकता हूं। धन्यवाद!
स्पेसी

ठीक है, इसलिए यदि आप सही ढंग से समझते हैं, तो यह देखते हुए कि शीर्ष पर पहली पंक्ति है, आप यह पता लगाना चाहते हैं कि क्या शेष राशि भी उसी स्थान पर है। यदि हां, तो आप यह निष्कर्ष निकालेंगे कि पैटर्न मौजूद है! सही?
दीपन मेहता

@DipanMehta हां मूल रूप से, यह पता लगाने में सक्षम हो सकता है कि ऊपर दिखाया गया पैटर्न मौजूद है, स्केल इंवेरियन से निपटने के लिए पर्याप्त मजबूत है, और शिफ्ट इनवेरियन से निपटने के लिए पर्याप्त मजबूत है। क्या इसका कोई मतलब है? धन्यवाद,
स्पेसी

1
मुझे यह मिल रहा है कि क्या आपके पास वास्तविक सिस्टम में स्रोत डेटा तक पहुंच है जो आप काम कर रहे हैं। यदि आप करते हैं, तो एक बेहतर तरीका हो सकता है जो मूल डेटा पर सीधे मध्यवर्ती स्पेक्ट्रोग्राम प्रारूप के बजाय संचालित होता है जिसे आपने चालू किया है।
जेसन आर

जवाबों:


6

मोटे तौर पर इस समस्या को हल करने के लिए दो प्राथमिक दृष्टिकोण हैं:

ए। टेम्पलेट मिलान या
बी। एक मानकीकृत मॉडल के साथ मिलान।

व्यक्तिगत रूप से, मॉडल की सादगी को देखते हुए, मैं इस समस्या के लिए दूसरा दृष्टिकोण पसंद करूंगा।

चरण 1: पिंग बूँद की पहचान करें

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

ब्लॉकों का सुधार

एक अच्छी बात यह है कि आप स्पार्किंग पॉइंट्स को हटाने के लिए कर सकते हैं जो पिंग ग्राउंडग्राउंड के समान दिखता है जहाँ पिंग के अंदर कुछ पिक्सेल भी नीले रंग के होते हैं। आपको यहां "ओपनिंग" नामक एक रूपात्मक ऑपरेशन की आवश्यकता है। यहाँ HIPR से एक संदर्भ है । इस प्रकार के संचालन के लिए स्मार्ट आकार की आवश्यकता होती है जो समान आकार को संरक्षित करने और दूसरों को हटाने में मदद करता है। आपके मामले में आप क्षैतिज रेखाएं चुन सकते हैं। इसके अंत तक, आपके पास पृष्ठभूमि और अग्रभूमि पिक्सेल बड़े करीने से एक दूसरे को छूने के बिना पिंग को अलग करते हैं।

चरण 2: निशान / रजिस्टर ब्लॉक

अब जब आपको सबसे स्वच्छ संभव ब्लब मिल गए हैं , तो उन्हें 1,2,3,4 या ए, बी, सी, डी आदि के रूप में चिह्नित करने का समय है। यह आमतौर पर कुछ सरल एल्गोरिथ्म द्वारा पूरा किया जाता है। प्रत्येक पिक्सेल के माध्यम से चलाएं और यदि यह किसी भी चिह्नित क्षेत्र के साथ स्पर्श कर रहा है, और अग्रभूमि भी है, तो इसे उस सेगमेंट में असाइन करें और एक नया बनाएं। यदि आप 4 से अधिक महत्वपूर्ण खंडों को खोजने के लिए होते हैं, तो आपको सबसे अधिक प्रासंगिक चुनने की आवश्यकता है। किसी भी सैद्धांतिक एल्गोरिदम के बजाय यहां कुछ हेयुरिस्टिक लागू करें।

चरण 3: मापदंडों की मॉडलिंग

अब, एक बार जब हम 4 संबंधित पिंग्स के सबसे अधिक संभावना वाले शीर्ष 4 उम्मीदवार प्राप्त करते हैं, तो आप बाउंडिंग बॉक्स की पहचान कर सकते हैं - अनिवार्य रूप से शीर्ष बाएं और नीचे दाएं कोने (या बाएं और दाएं सबसे पिक्सल, साथ ही बूँद के ऊपर और नीचे की पंक्तियाँ) । बाउंडिंग बॉक्स का पता लगाएं, आप प्रत्येक पिंग बॉक्स के सेंट्रोइड पर जुर्माना लगा सकते हैं।

सीमैं कहाँ पे मैं{1,2,3,4}सी1सी1

इसलिए अब अंतर केन्द्रक दूरी की गणना की जा सकती है:

सी1मैं[एक्स,y]={सी1[एक्स]-सीमैं[एक्स],सी1[y]-सीमैं[y]}

एलमैं कहाँ पे मैं{1,2,3,4}

अनिवार्य रूप से आपके पास 8 पैरामीटर vecoter है:

1।{सी1[एक्स],सी1[y]}2..4सी1मैं[एक्स,y]5..8एलमैं

चरण 4: वर्गीकरण
अंतिम चरण में, अब हमें वर्गीकरण करने की आवश्यकता है कि क्या पिंग-पैटर्न हां या नहीं है।

इस तरह के कुछ के लिए, आपके पास एक अच्छा बेइज़ियन क्लासिफ़ायर फ्रेमवर्क हो सकता है।

आपके पास दो परिकल्पनाएं हैं

H0: पिंग पैटर्न मौजूद है।
H1: पिंग पैटर्न मौजूद नहीं है

सी1,मैं[एक्स]

सबसे पहले आप बहुत सी छवियों का अध्ययन करते हैं जहाँ आपको पता है कि वे छवि से संबंधित हैं। अब, आप विभिन्न हिस्टोग्राम को प्लॉट कर सकते हैं या घनत्व आकलन विधि की कुछ विधि लागू कर सकते हैं। डूडा हार्ट द्वारा पैटर्न वर्गीकरण पढ़ें।

सी1,मैं[एक्स]μ=20,σ=.1

सी1,मैंएच0पी[सी1,मैं[एक्स]|एच0]

अब, परीक्षण डेटा से

पी[एच0|सी1,मैं[एक्स]=एक्स1]सी1[एक्स]एक्स1एच0

इसलिए, आप गणना कर सकते हैं

पी[एच0 |सी1,मैं[एक्स]]=पी[सी1,मैं[एक्स]|एच0]*पी[एच0]पी[सी1,मैं[एक्स]]

वेक्टर अभिव्यक्ति के लिए आपको इस अभिव्यक्ति को संयोजित करने की आवश्यकता है और पैरामीटर आकलन को पूरा करने के लिए बहुत प्रयास करने की आवश्यकता है। लेकिन मैं आपको यहां बुनियादी दृष्टिकोण के साथ छोड़ रहा हूं।

कृपया अपना स्वयं का गणित करें, यह लंबा होगा, लेकिन फिर भी काफी सहज होना चाहिए।

पी[एच0|सभी मापदंडों]>1/2

EDIT
चूंकि आप पहले से ही 110 +/- 5 पिक्सेल के विशिष्ट मानदंडों को परिभाषित कर रहे हैं, अंतिम चरण सरल हो सकता है। यदि आपके वर्गीकरण के मानदंड ठीक हैं, तो आपको शायद इन सभी संभावनाओं की गणना करने की आवश्यकता नहीं है।


आपका बहुत बहुत धन्यवाद! मुझे यह पचाना पड़ेगा और आपको वापस मिल जाएगा।
स्पेसी

3

यह समस्या मुझे पल्स पुनरावृत्ति अंतराल का पता लगाने + आकलन की समस्या की तरह लगती है। मुझे समय के साथ इस उत्तर को विकसित करने की आवश्यकता होगी, लेकिन उस समस्या में अच्छी तरह से काम करने वाले एल्गोरिदम की तरह एक जाली पर अधिकतम संभावना है


धन्यवाद, हां मुझे इस पर आपके विचार सुनने में खुशी होगी। इस बीच मैं आपके लिंक को देखूंगा।
स्पेसी

पीटर, क्या आपके पास इस बारे में सोचने का कोई समय है? मुझे इस मामले पर आपके विचार सुनने में दिलचस्पी होगी।
स्पेसी

बस फिर से छेड़छाड़ शुरू कर दी (अप्रैल एक लिखना बंद था)। मुझसे गलती हो सकती है: जिस तरह से क्लार्कसन का पेपर तैयार करता है वह समस्या अलग है ... मुझे थोड़ा और खोदने दें।
पीटर के.एच.
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.