एज डिटेक्शन एल्गोरिदम को चुनने में मुझे किन कारकों पर विचार करना चाहिए?


33

मैंने कई प्रकार के एज डिटेक्शन एल्गोरिदम के बारे में सीखा है, जिसमें सोबेल, लाप्लासियन और कैनी विधियों जैसे एल्गोरिदम शामिल हैं। मुझे लगता है कि सबसे लोकप्रिय एज डिटेक्टर कैनी एज डिटेक्टर है, लेकिन क्या ऐसे मामले हैं जहां यह उपयोग करने के लिए इष्टतम एल्गोरिथ्म नहीं है? मैं कैसे तय कर सकता हूं कि किस एल्गोरिथ्म का उपयोग करना है? धन्यवाद!


7
क्या पता लगा रहे हो
एंडोलिथ

जवाबों:


29

बढ़त की संभावनाएं बहुत हैं, लेकिन आपके द्वारा उल्लिखित 3 उदाहरण 3 अलग-अलग श्रेणियों में आते हैं।

सोबेल

यह एक प्रथम क्रम व्युत्पन्न का अनुमान लगाता है। ग्रेडिएंट पोजीशन पर एक्सटेर्मा देता है, 0 जहां कोई ग्रेडिएंट मौजूद नहीं है। 1D में, यह = [-101]

  • चिकनी बढ़त => स्थानीय न्यूनतम या अधिकतम, संकेत ऊपर या नीचे जाने पर निर्भर करता है।
  • 1 पिक्सेल लाइन => 0 लाइन पर ही, स्थानीय एक्स्ट्रेमा के साथ (अलग-अलग संकेत के) इसके ठीक बगल में। 1D में, यह = [1-21]

सोबेल के अन्य विकल्प हैं, जिनमें +/- समान विशेषताएं हैं। पर रॉबर्ट्स क्रॉस विकिपीडिया पर पृष्ठ आप उनमें से कुछ की तुलना पा सकते हैं।

लाप्लास

यह एक दूसरे क्रम व्युत्पन्न का अनुमान लगाता है। ० ग्रेडिएंट पोजीशन पर ० देता है और वह भी ० जहाँ कोई ग्रेडिएंट मौजूद नहीं है। यह विलुप्त होने देता है जहां एक (अब) ढाल शुरू होता है या बंद हो जाता है।

  • चिकनी बढ़त => 0 किनारे के साथ, किनारे की शुरुआत / स्टॉप पर स्थानीय एक्स्ट्रेमा।
  • 1 पिक्सेल लाइन => लाइन में एक "डबल" एक्सट्रीम, इसके बगल में एक अलग चिन्ह के साथ "सामान्य" एक्स्ट्रेमा

विभिन्न प्रकार के किनारों पर इन 2 के प्रभाव को नेत्रहीन रूप से देखा जा सकता है:

सोबेल बनाम लाप्लास की तुलना

चालाक

यह एक साधारण ऑपरेटर नहीं है, बल्कि एक बहु-चरण दृष्टिकोण है, जो सोबेल को एक चरण के रूप में उपयोग करता है। जहां सोबेल और लाप्लास आपको एक ग्रेस्केल / फ्लोटिंग पॉइंट रिजल्ट देते हैं, जिसे आपको स्वयं को थ्रेसहोल्ड करने की आवश्यकता होती है, कैनी एल्गोरिथ्म में इसके एक कदम के रूप में स्मार्ट थ्रॉल्डिंग है, इसलिए आपको बस एक बाइनरी हां / नो रिजल्ट मिलता है। इसके अलावा, एक चिकनी किनारे पर, आपको संभवतः ढाल के बीच में कहीं केवल 1 लाइन मिलेगी।


18

जबकि सोबेल और लाप्लासियन केवल फिल्टर हैं, कैनी उससे दो तरह से आगे जाती है।

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

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


क्या इस संबंध में कैनी का 1-डी संस्करण है? क्या यह सीधे 2-डी संस्करण का एक सीधा आगे का अनुप्रयोग होगा?
स्पेसी

9

किनारों का पता लगाने की कोशिश करते समय दो सबसे महत्वपूर्ण निर्णय आम तौर पर मेरे लिए हैं:

  1. क्या मैं इसके बजाय वस्तुओं को खंड कर सकता हूं, और फिर बाइनरी (खंडित) छवि के किनारे को खोजने के लिए एक रूपात्मक ऑपरेटर का उपयोग कर सकता हूं? शोर डेटा के साथ, यह अधिक मजबूत हो जाता है।

  2. छवि शोर को कम करने के लिए मुझे किस धार-संरक्षण वाले चौरसाई फ़िल्टर का उपयोग करना चाहिए? एज फिल्टर विभेदक पर आधारित हैं, जो शोर डेटा से पीड़ित होंगे। सबसे सरल विकल्प माध्यिका फ़िल्टर है, लेकिन अनिसोट्रोपिक प्रसार या गैर-फोकल साधनों को फ़िल्टर करने के लिए अधिक मापदंडों को ट्विक करने की कीमत पर बेहतर प्रदर्शन प्रदान करेगा।

बढ़त का पता लगाने के लिए, मैं कैनी का उपयोग नहीं करने के एक अच्छे कारण के बारे में नहीं सोच सकता।


7

सुसान दृष्टिकोण

किनारे और कोने का पता लगाने के लिए एक और दृष्टिकोण सुसान दृष्टिकोण है

इस दृष्टिकोण में, व्युत्पन्न सन्निकटन के बजाय, एक अभिन्न सन्निकटन दृष्टिकोण का उपयोग किया जाता है। इसका लाभ न केवल किनारों का पता लगाने में सक्षम है, बल्कि "दो आयामी सुविधाओं" (यानी कोनों) का पता लगाने में भी सक्षम है।

अभिन्न सन्निकटन दृष्टिकोण का एक और लाभ यह है कि शोर का परिणाम पर प्रभाव कम होता है।


6

कैनी एक द्विआधारी छवि देता है और बाहरी रूप से दी गई थ्रेसहोल्ड (जो छवि / अनुप्रयोग निर्भर हैं) पर निर्भर है।
कन्वर्सेशन आधारित फ़िल्टर एक "एज इंटेंसिटी" इमेज देते हैं। यह उपयोगी है अगर किनारे का वजन या ताकत महत्वपूर्ण है (जैसे भारित हाउ ट्रांसफ़ॉर्म में)।

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