2009-01-20 11 views
6

स्ट्रिंग करने के लिए शब्दों वाली छवियां क्या कोई छवि लेने और छवि पहचान करने के लिए किसी सी ++ लाइब्रेरी के बारे में जानता है जैसे कि यह किसी दिए गए फ़ॉन्ट और/या फ़ॉन्ट ऊंचाई के आधार पर अक्षरों को पा सकता है? यहां तक ​​कि कोई भी जो आपको फ़ॉन्ट का चयन नहीं करने देता है, अच्छा होगा (उदाहरण: रीडलेटर (छवि छवि)सी ++ छवि पहचान के लिए लाइब्रेरी:

उत्तर

7

मैं इसे हाल ही में देख रहा हूं। आपका सबसे अच्छा बस टेस्सेक्ट है। यदि आपको ओक्रोपस के साथ जाने के बजाय ओसीआर के शीर्ष पर लेआउट विश्लेषण की आवश्यकता है (जो बदले में ओसीआर करने के लिए टेस्सेक्ट का उपयोग करता है)। लेआउट विश्लेषण से छवि पर पाठ की स्थिति का पता लगाने में सक्षम होना और रेखा विभाजन, ब्लॉक सेगमेंटेशन इत्यादि जैसी चीजें करना

मुझे टेसरेक्ट के साथ प्रयोग के माध्यम से कुछ वाकई अच्छी युक्तियां मिली हैं जो साझा करने योग्य हैं। असल में मुझे छवि के लिए बहुत से प्रीप्रोकैसिंग करना पड़ा।

  1. अपनी इनपुट छवि को 300 डीपीआई पर अपसाइज़/डाउनसाइज करें।
  2. छवि से रंग हटाएं। ग्रे पैमाने अच्छा है। मैंने वास्तव में एक थ्रेसहोल्ड का उपयोग किया और मेरा इनपुट काला और सफ़ेद बनाया।
  3. अपनी छवि से अनावश्यक जंक काट लें। उपरोक्त सभी तीनों के लिए मैंने नेटबैम (यूनिक्स के लिए छवि मैनिपुलेशन टूल्स का एक सेट) का उपयोग किया, जहां मुझे आवश्यकता थी, जहां मुझे आवश्यक 100 प्रतिशत सटीकता मिल रही थी।

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

मुझे मिला अन्य प्रशिक्षण तंत्र न्यूल नेट (बीपीनेट) प्रशिक्षण का उपयोग कर ओक्रोपस के साथ था। एक अच्छा सांख्यिकीय मॉडल बनाने के लिए इसमें बहुत सारे इनपुट डेटा की आवश्यकता होती है।

टेसरेक्ट/ओक्रोपस का आह्वान करने के मामले में सी ++ दोनों हैं। यह रीडलाइन (छवि) के रूप में उतना आसान नहीं होगा लेकिन एक एपीआई है जिसे आप देख सकते हैं। आप कमांड लाइन के माध्यम से भी आक्रमण कर सकते हैं।

+0

ओक्रोपस के लिए किसी भी अच्छे दस्तावेज के बारे में पता है .... espcially एक C++ api। – Zombies

+0

दुर्भाग्यवश सबसे अच्छा दस्तावेज उनकी वेबसाइट पर है और वे हेडर फाइलों और LUA स्क्रिप्ट्स को पढ़कर प्रदान करते हैं। – Ish

5

जबकि मैं विशेष रूप से एक की सिफारिश नहीं कर सकता, आप जिस शब्द को खोज रहे हैं वह ओसीआर (ऑप्टिकल कैरेक्टर रिकग्निशन) है।

+0

धन्यवाद, यह सहायक है। मैं जो भी इस्तेमाल कर रहा था उसके साथ Google पर कुछ भी नहीं मिला। – Zombies

3

वहाँ tesseract-ocr जो यह करने के लिए एक पेशेवर पुस्तकालय है।

वहाँ वेब साइट से

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

1

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

0

Tesseract OCR library बहुत सटीक परिणाम देता है, इसकी एक सी और सी ++ लाइब्रेरी है। मेरे प्रारंभिक परिणाम लगभग 80% सटीक थे, लेकिन ओसीआर के लिए आपूर्ति करने से पहले छवियों पर प्री-प्रोसेसिंग लागू करना परिणाम लगभग 9 5% सटीक थे। प्री-प्रीप्रोकैसिंग क्या है:

1) बिटमैप को बिनराइज़ करें (बी डब्ल्यू मेरे लिए बेहतर काम करता है)।How it could be done

2) 300 डीपीआई

3) इस तरह के LZW TIFF या CCITT समूह 4 TIFF के रूप में एक दोषरहित प्रारूप, में अपनी छवि को बचाने के लिए अपनी छवि रीसेंपलिंग।

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