यह वास्तव में सीधा नहीं होने जा रहा है ... आप पूरी तरह से एक ग्राफ संरचना के साथ काम करने की कोशिश कर सकते हैं। सबसे पहले छवि से सभी जुड़े पिक्सेल निकालें और उन्हें एक ग्राफ़ में डालें जहां पड़ोसी नोड्स एक किनारे से जुड़े हुए हैं। आप ऐसे ग्राफ़ को त्याग सकते हैं जो कुछ M संख्या के नोड्स से छोटे होते हैं (छोटे स्पॉट को बाहर करने के लिए जो छवि के लिए प्रासंगिक नहीं हैं)।
इस प्रक्रिया के अंत में आपके पास डिस्कनेक्ट किए गए ग्राफ़ का एक सेट होगा। (आपकी छवि को देखते हुए, ये वास्तव में पेड़ नहीं हैं क्योंकि वहाँ चक्र हैं)
आप कुछ रैंडम नोड से शुरू करके और डीएफएस करके प्रत्येक ग्राफ़ के चरम बिंदुओं (प्रत्येक ग्राफ़ की परिधि में चरम पिक्सल) को पा सकते हैं ।
इस प्रक्रिया के अंत में आपके पास एक्सल पॉइंट्स के अनुरूप प्रत्येक ग्राफ़ के लिए पिक्सेल निर्देशांक का एक सेट होगा जहाँ कनेक्शन बनने की अधिक संभावना है।
अब आप निकटतम चरम बिंदु पड़ोसियों को जोड़ने की कोशिश कर सकते हैं (दूरी <= 5 के साथ) बस एक सीधी रेखा के साथ।
लेकिन, यदि आप लाइन सेगमेंट की ढलान को ध्यान में रखना चाहते हैं जो उस चरम पिक्सेल की ओर जाता है तो आप उस चरम पिक्सेल तक पहुँचने के लिए N पिक्सेल PRIOR को "लाइन फिट" करने का प्रयास कर सकते हैं। इसलिए यदि N = 5, तो किसी शाखा के अंतिम 5 पिक्सल का उपयोग किसी रेखा का अनुमान लगाने में किया जाएगा।
इसलिए, प्रत्येक निकटतम पड़ोसी जोड़ी के लिए, अब आपके पास यह भी एक और बात है कि जज के लिए एक मानदंड के रूप में उपयोग करें यदि दो खंडों को जोड़ा जाना चाहिए (यानी एक्सट्रीमल प्वाइंट डिस्टेंस <= 5 पिक्सल और लगभग बराबर लाइन ढलान)।
शोर के प्रभाव को कम करने के लिए जो आपकी रेखाओं को शाखा की युक्तियों के पास दांतेदार दिखाई दे सकते हैं (और इसलिए आपके ढलान के अनुमान को विकृत करते हैं) आप अपने ग्राफ पर एक सरलीकरण चरण लागू करने की कोशिश कर सकते हैं (यह एक और बिंदु है (ऊपर डीएफएस के अलावा) जहां यह भुगतान करता है एक ग्राफ संरचना के साथ काम)। आप उदाहरण के लिए ग्राफ के बाद के नोड्स को हटा सकते हैं जो कुछ कट-ऑफ (कुछ और जटिल के लिए, कृपया यहां देखें ) की तुलना में कोणों पर लाइन को "मोड़" देगा । इस तरह से आप "सरल" लाइनों को फिट कर रहे होंगे, मोटे तौर पर छवि पिक्सेल द्वारा गठित सेगमेंट के एक बड़े हिस्से की दिशा में।
यह संभवत: अधिकांश मामलों के लिए सभ्य कनेक्शन का परिणाम होगा (आपके द्वारा पोस्ट की गई छवि को देखते हुए) लेकिन यह अभी भी आपको कुछ चुनौतीपूर्ण लोगों के साथ छोड़ देगा। उदाहरण के लिए "Y" आकार का बाधित पैटर्न कैसे होगा जहां कनेक्शन बिंदु के पास शाखाओं में से एक बाधित है? (यानी, आपके पास एक "निरंतर" मोड़ है जो एक लाइन सेगमेंट के साथ जुड़ा होना चाहिए जो इसके साथ "मिश्रण करता है")। शायद आप इस बात की समीक्षा कर सकते हैं कि इस तरह के मामले कितने सामान्य हैं और बाद में अपने कनेक्शन मानदंडों को संशोधित करें।
इसके अलावा, शायद यह जांचने योग्य होगा कि आप अपनी छवि के अधिग्रहण को कैसे बेहतर बना सकते हैं (उदाहरण के लिए संकल्प बढ़ाएं)।