2010-03-09 20 views
16

मैं वेब पर छवियों में संख्या पहचान के लिए संसाधनों की खोज कर रहा हूं। मुझे उस विषय पर बहुत से संसाधन प्रदान करने वाले कई लिंक मिले। लेकिन दुर्भाग्यवश यह मदद करने से ज्यादा भ्रमित है, मुझे नहीं पता कि कहां से शुरू करना है।छवियों में संख्याओं को पहचानें

मुझे इसमें 5 संख्याओं के साथ एक छवि मिली है, बिना परेशान (कोई कैप्चा या ऐसा कुछ नहीं)। एक मानक पृष्ठभूमि में लिखे गए एक सफेद पृष्ठभूमि पर संख्याएं काले हैं।

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

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

क्या कोई मुझे यह संकेत दे सकता है कि यह कैसे किया जाता है?

इससे कोई फर्क नहीं पड़ता, लेकिन मैं इसे सी # या जावा में कार्यान्वित कर दूंगा। मुझे कुछ पुस्तकालय मिले जो नौकरी करेंगे, लेकिन मैं कुछ सीखने के लिए इसे स्वयं लागू करना चाहता हूं।

उत्तर

14

टेसरेक्ट जैसे ओपन सोर्स ओसीआर इंजन का उपयोग क्यों न करें?

http://code.google.com/p/tesseract-ocr/

सी #

http://sourceforge.net/projects/tessocrinjava/

Tesseract के लिए Tesseract के लिए

http://www.pixel-technology.com/freeware/tessnet2/

जावा आवरण आवरण जब आप migh किसी तीसरे पक्ष की लाइब्रेरी का उपयोग अपने आप को लागू करने के रूप में नहीं मानते हैं, वहां एक बड़ी मात्रा में काम है जो तीसरे पक्ष के उपकरण को एकीकृत करने में जाता है। ध्यान रखें कि कुछ ऐसा सरल हो सकता है (संख्या 6 बनाम संख्या 5 को पहचानना) अक्सर बहुत जटिल होता है; हम कोड परिसर के हजारों और हजारों लाइनों की बात कर रहे हैं। कम से कम, टेस्सेक्ट के लिए स्रोत कोड देखें और यह आपको किसी तृतीय-पक्ष लाइब्रेरी का लाभ उठाने के लिए एक अच्छा कारण देगा। https://stackoverflow.com/questions/850717/what-are-some-popular-ocr-algorithms

+0

टिप के लिए धन्यवाद:

यहाँ एक और तो सवाल यह है कि hte शामिल एल्गोरिदम के बारे में आप कुछ सुझाव देंगे है। असल में मैं सी/सी ++ में अच्छा नहीं हूं और बहुत सारे कोड हैं। मैं अभी भी उम्मीद कर रहा हूं कि पूरे ओसीआर सॉफ्टवेयर प्रोजेक्ट को समझने की कोशिश न करें, सिर्फ संख्या पहचान सीखने के लिए। – svens

+0

यह आपके लिए सी ++ का उपयोग करने की आवश्यकता को हटा देगा ... सी # रैपर बहुत सीधी-आगे है। जब तक आप मशीन लर्निंग और इमेज ऑप्टिमाइज़ेशन में विशेषज्ञ बनना नहीं चाहते हैं, तो आप वास्तव में अपने ओसीआर समाधान को रोल करने की कोशिश नहीं करना चाहते हैं। –

+0

+1 टेसेरैक्ट अद्भुत है। जब तक आप इसे कमांड लाइन पर कॉल करते हैं, तब तक आप किसी भी भाषा का उपयोग कर सकते हैं। – rook

संबंधित मुद्दे