2012-04-17 8 views
8

मुझे उम्मीद थी किसी ने मुझे बता सकते हैं क्यों यह है मेरी Tesseract कुछ छवियों अंकों के साथ पहचानने मुसीबत है, और मैं इसके बारे में क्या कर सकते हैं अगर वहाँ कुछ है। सब कुछ परीक्षण के अनुसार काम कर रहा है, और क्योंकि यह केवल अंक मैं की जरूरत है, मैं जब तक मैं 7segmented प्रदर्शन रूप में अच्छी तरह के साथ शुरू किया था मैं अंग्रेजी पैटर्न के साथ प्रबंधन कर सकते हैं सोचा।मुसीबत पहचानने अंक - एंड्रॉयड

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

चीजों ने कोशिश की: ने psm को one_line, one_word, one_char (और तस्वीर को काटकर) सेट करने का प्रयास किया। एक_लाइन और एक_वर्ड के साथ कोई महत्वपूर्ण परिवर्तन नहीं हुआ था। साथ one_char यह थोड़ा बेहतर समझते हैं, लेकिन कभी कभी किया था, कारण बड़ा अंतर करने के लिए यह एक अतिरिक्त संख्या इसे से जुड़ी है, जो तब यह खराब अप, यदि आप तो संलग्न छवि zero.jpg को देखो यह 04. में हुई मैं भी कोशिश की है खुद को बिनरराइजेशन करने के लिए, इसके परिणामस्वरूप गरीब मान्यता प्राप्त हुई और बहुत ही संसाधनों का उपभोग किया गया। मैंने चित्रों को घुमाने की कोशिश की है, इससे टेसरेक्ट के लिए कोई फर्क नहीं पड़ता है।

मैं चित्रों मैं अन्य लोगों के अलावा, आवश्यकता होगी, संसाधित करने के लिए संलग्न किया है।

छवियों के बारे में Explaination:

decodethisimage_seven Tesseract, कोई परेशानी नहीं पहचानने है कि हालांकि यह एक काम कर छवि के चारों ओर एक एप्लिकेशन बनाने के आराम के लिए शब्द में किया गया है एक छवि है।

decodethisimage_eight image_seven मिलान वास्तविक जीवन छवि है। लेकिन यह इसे पहचान नहीं सकता है।

decodethisimage_four2 एक और छवि है जिसे मैं पहचानना चाहता हूं, और हाँ मुझे पता है कि इसे खराब नहीं किया जा सकता है, और मैंने अनचाहे किया था (लगता है कि स्क्रू यहां शब्द == "सीधा" है) परीक्षण करते समय।

+0

skrew = skew nice :)। इसके अलावा, छवि उपकरण सेट शोर को कम कर सकते हैं, तेज कर सकते हैं, और क्या नहीं। इससे –

उत्तर

2

मैं कुछ विकल्प है कि आप मदद कर सकता है के बारे में पता:

  1. छवि सीमा और पाठ के बीच अतिरिक्त स्थान जोड़ें। अगर छवि में पाठ किनारे पर स्थित है तो टेस्सेक्टैक्ट भयानक काम करेगा।
  2. अपनी छवि डुप्लिकेट। उदाहरण के लिए, यदि आप 'foobar' शब्द पर ओसीआर कर रहे हैं, तो छवि को क्लोन करें और 'foobar foobar foobar foobar foobar' को tesseract को भेजें, परिणाम बेहतर होंगे।
  3. Google के लिए font training और image binarization टेसरेक्ट के लिए Google।

ध्यान रखें, कि अंतर्निहित कैमरा मोबाइल उपकरणों में ज्यादातर का उत्पादन कम गुणवत्ता छवियों (blured, फैल, विषम आदि) ओसीआर अपने आप में एक संसाधन comsuming प्रक्रिया है और आपको लगता है कि करने के लिए एक योग्य छवि preprocessing जोड़ते हैं, कम अंत और मध्य मोबाइल डिवाइस (जो एंड्रॉइड होने की संभावना है) अप्रत्याशित रूप से धीमी प्रदर्शन या यहां तक ​​कि संसाधनों की कमी का सामना कर सकते हैं। यह मुफ्त/अध्ययन परियोजनाओं के लिए ठीक है, लेकिन यदि आप एक वाणिज्यिक ऐप की योजना बना रहे हैं - बेहतर एसडीके का उपयोग करने पर विचार करें।

जानकारी के लिए इस सवाल पर एक नज़र डालें: OCR for android

+0

आपकी इनपुट के लिए धन्यवाद हो सकता है, मैं इसे फिर से कोशिश करूँगा। कम अंत मध्य मोबाइल, सामान्य मध्य खंड आईएमओ के बारे में। कम से कम 3 एमपीिक्स कैमरे हैं, और यह पर्याप्त होना चाहिए, हालांकि ऑटोफोकस एक समस्या है, यह प्रबंधनीय है। skewed तस्वीर से बचने के लिए मैंने अपनी स्क्रीन पर एक ओवरले के रूप में एक बहुत ही सीमित आयत सेट किया है, इसलिए यह भी तरह से बचा है। लेकिन मैं इस बात से सहमत है कि यह फोन के लिए भारी हो सकता है, मैं इसे एक सर्वर पर चल रहा wouldnt मन, मैं सिर्फ जो मैं अभी तक प्राप्त नहीं किया पता चला है कि यह पहली बार काम करता है की जरूरत है,: -/ –

+0

हालांकि आप किसी भी विचार कैसे करना है गणराज्य और चित्रों के लिए एक फ्रेम जोड़ें? बीमार इसके लिए चारों ओर देखना शुरू कर देता है, बस अगर आप इसके साथ कोई अनुभव रखते हैं :) –

+0

1 और 2 काम नहीं किया। इम पटकना Tesseract, javaocr के साथ काम करने की कोशिश कर के बजाय –

1

आप javaocr एक कोशिश (http://sourceforge.net/projects/javaocr/, हाँ, मैं कर रहा हूँ डेवलपर) हालांकि

Therre कोई offocial रिलीज है दे सकते हैं, और आप करना होगा स्रोतों की तलाश करें (अच्छी खबर: सैंपलर, ऑफलाइन ट्रेनर और पहचानकर्ता अनुप्रयोग सहित एंड्रॉइड नमूना काम कर रहा है)

यदि आप केवल एक फ़ॉन्ट हैं, तो आप इसके साथ अच्छे अच्छे परिणाम प्राप्त कर सकते हैं (मैं अंकों पर पहचान दरों 99.9 6 तक पहुंच गया वही फ़ॉन्ट)

पीएस: यह शुद्ध जावा है और मिलान करने के लिए परिवर्तनीय क्षणों का उपयोग करता है (इसलिए स्केलिंग और रोटेशन के साथ कोई समस्या नहीं है)। बहुत प्रभावी बिनराइज़ेशन भी है।

कार्य करते हुए देखें:

https://play.google.com/store/apps/details?id=de.pribluda.android.ocrcall&feature=search_result#?t=W251bGwsMSwxLDEsImRlLnByaWJsdWRhLmFuZHJvaWQub2NyY2FsbCJd

+0

अपने अनुप्रयोग की कोशिश की, मेरी संख्या/चित्रों में से किसी को पहचान नहीं करता है ऐसा लगता है: -/ –

+0

इस एप्लिकेशन को सफेद पृष्ठभूमि पर काले पाठ करने के लिए प्रशिक्षित किया जाता है। यदि आपको नकारात्मक की आवश्यकता है, तो आप जावावाक प्रक्रिया में एंड्रॉइड नमूने का प्रयास कर सकते हैं (नकारात्मककरण के साथ काम करने के लिए बिनराइज़ेशन प्रक्रिया में केवल मामूली संशोधन आवश्यक है) पीएस: क्या आप regcognition परिणाम स्क्रीनशॉट पोस्ट कर सकते हैं? तो मैं कुछ और संकेत देने में सक्षम हूं –

+0

इसकी आवश्यकता नहीं है क्योंकि मेरा नकारात्मक है :-) –

2

Tesseract आप के लिए विभाजन नहीं करता है। Tesseract वास्तविक tesseract algo से पहले छवि की दहलीज करेगा। थ्रेसहोल्डिंग के बाद, छवि में बने कुछ किनारों, कलाकृतियों का हो सकता है।

प्रयास करें मैन्युअल रूप से काले और सफ़ेद रंग के लिए अपनी छवियों को संशोधित करने और आउटपुट के रूप में क्या Tesseract रिटर्न देखने के लिए।

सीमा के प्रयास (स्वतः) अपने चित्रों और आउटपुट के रूप में क्या Tesseract फ़ायदा होता। थ्रेसहोल्डिंग का उत्पादन खराब आउटपुट देने के लिए टेसरेक्ट के कारण बहुत खराब हो सकता है।

आपकी चौथी छवि शायद थ्रेसहोल्डिंग के कारण विफल हो जाएगी (आपके पास 3 रंग हैं: काला पृष्ठभूमि, ग्रेश पृष्ठभूमि और सफेद अक्षरों) और दहलीज (काला पृष्ठभूमि, ग्रेश पृष्ठभूमि) के बीच हो सकती है।

आम तौर पर Tesseract अच्छा काले और सफ़ेद चित्रों चाहता है। बेहतर परिणामों के लिए आपकी छवियों की प्रीप्रोकैसिंग की आवश्यकता हो सकती है।

अपनी पहली छवि के लिए (परिणाम "04" के साथ), बॉक्स परिणाम देखने के लिए (चार + बॉक्स कि मान्यता प्राप्त चार में शामिल है के निर्देशांक) का प्रयास करें। "0" एक छोटा सा आर्टेफैक्ट हो सकता है - जैसे कि 4 से 4 ब्लॉब पिक्सल।

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