अंकों के सेट में जल्दी से उबड़-खाबड़ लाइनें ढूंढना


12

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

डेटा शोर है, और एक दिशा में नहीं बल्कि दूसरे में द्विपद है। हम प्रत्येक डिटेक्टर तत्व के काम करने पर भी प्रत्येक बिन में एक हिट की गारंटी नहीं दे सकते हैं, इसलिए स्केप हो सकते हैं।

हमारी वर्तमान विश्लेषण श्रृंखला जैसी दिखती है

  1. व्यक्तिगत डिटेक्टर तत्वों के अंशांकन के लिए हिट समायोजित करें
  2. गुच्छों का पता लगाएं
  3. किसी न किसी पंक्तियों के लिए फिट लाइनों
  4. क्लस्टर्स को लंबी लाइन जैसी संरचनाओं में कनेक्ट करें
  5. ...

यह प्रश्न चरण (3) को चिंतित करता है।

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

मैं तेजी से रास्ता तलाश रहा हूं।


जो लोग यहां वास्तविक उपयोग के मामले की देखभाल कर सकते हैं, उनके लिए एक तरल आर्गन टाइम-प्रोजेक्शन चैंबर है


1
हमने FermiLab में मल्टी-वायर आनुपातिक चैम्बर्स के माध्यम से पथ ट्रैकिंग के लिए एक पुनरावर्ती Hough Transform विधि भी की। एरिक कांगस के वरिष्ठ थीसिस में सभी विवरण हैं। मुझे लगता है कि यह अभी भी इसे करने का सबसे अच्छा तरीका है।
मैट नेप्ले

1
क्या आप पहले वाक्य में "... बिंदु पर जोड़े ..." या "... बिंदुओं के जोड़े ..." का मतलब है?
बिल बर्थ

जवाबों:


2

Hough ट्रांस्फ़ॉर्म (PHT) का एक संभावित संस्करण है जो तेज़ है। जैसा कि ब्रैडस्की और केहलर ने अपनी OpenCV पुस्तक में वर्णित किया है:

विचार यह है कि शिखर किसी भी तरह काफी ऊंचा होने जा रहा है, फिर इसे खोजने के लिए केवल कुछ समय के लिए पर्याप्त होगा।

OpenCV पुस्तकालय PHT के लिए एक कार्यान्वयन प्रस्तुत करता है ।

अन्य विकल्प हैं। यह मुश्किल परिवर्तन के एक वितरित संस्करण बनाने के लिए मुश्किल नहीं है । बस छोटे बिंदुओं में सेट अपनी बात को तोड़ने और सभी संचायक को योग करने के लिए MapReduce ढांचे का उपयोग करें। अन्य विचार कम रिज़ॉल्यूशन वाले पैरामीटर स्थान का उपयोग करके Hough ट्रांसफ़ॉर्म का मोटे संस्करण का प्रदर्शन करना है । अपने सर्वश्रेष्ठ उम्मीदवारों को चुनें और एक उच्च रिज़ॉल्यूशन प्रस्तुत करने वाले पैरामीटर स्थान का उपयोग करके एक बारीक चलना शुरू करें। शायद यह गंडालफ के FHT के पीछे का विचार है।


1
PHT में प्रस्तावित किया गया था: Matas, J. और Galambos, C. और Kittler, JV, Progressive Probabilistic Hough Transform का उपयोग करके लाइनों का मजबूत पता लगाना। सीवीआईयू 78 1, पीपी 119-137 (2000)।
टीएच

कोर्स फिर ठीक प्रक्रिया को कई चरणों में सामान्यीकृत किया जा सकता है जो कि गैंडालफ करता है।
dmckee --- पूर्व-संचालक बिल्ली का बच्चा

BTW - जब से मैंने यह प्रश्न पूछा है, एक सहयोगी ने हमारे कोड में परिवर्तन के प्रगतिशील संभाव्य संस्करण का उपयोग करके एक मॉड्यूल जोड़ा है । यह कई संबद्ध बदलावों के साथ आया है, इसलिए यह वास्तव में क्या फर्क पड़ता है, यह वर्णन करना कठिन है, लेकिन यह एक पैकेज का हिस्सा है जिसने विश्लेषण के कुछ चरणों को काफी हद तक खत्म कर दिया है। इसलिए, मैं इसे "जीत" सलाह के रूप में स्वीकार करने जा रहा हूं।
dmckee --- पूर्व-संचालक बिल्ली का बच्चा

5

मुझे सहकर्मी ने गंडालफ लाइब्रेरी में फास्ट हफ़ ट्रांसफ़ॉर्म पाया है , जो बहुत आशाजनक लगता है, लेकिन एकीकृत करने के लिए बहुत काम हो सकता है, इसलिए मैं अन्य तरीकों की तलाश कर रहा हूं।

गैंडलफ कार्यान्वयन दिलचस्प है: वे एक पुनरावर्ती तरीके से संचायक स्थान का मूल्यांकन करते हैं जैसे कि एक ट्रैक्टर-या-ऑक्ट-ट्री का पता लगाते हैं। ज्यादा घनत्व वाले क्षेत्रों को बाहर जाते ही फेंक दिया जाता है।

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