2008-08-27 13 views
28

सी # में टेस्सेक्ट के इंटरफ़ेस का उपयोग करके आप एक टिफ फ़ाइल कैसे करते हैं?
वर्तमान में मुझे केवल यह पता है कि निष्पादन योग्य का उपयोग करके इसे कैसे किया जाए।टेस्सेरैक्ट इंटरफेस के साथ ओसीआर

+3

क्या आप कृपया मुझे मार्गदर्शन कर सकते हैं कि आपने सी # में टेसेरैक्ट का उपयोग कैसे किया? – mouthpiec

+0

कोई नमूना कोड? – Kiquenet

उत्तर

10

स्रोत कोड निष्पादन योग्य के लिए तैयार किया गया था, तो आपको सामान को थोड़ा सा रिवायर करने की आवश्यकता हो सकती है ताकि यह इसके बजाय एक डीएलएल के रूप में बन सके। मुझे विजुअल सी ++ के साथ ज्यादा अनुभव नहीं है लेकिन मुझे लगता है कि इसे कुछ शोधों के साथ बहुत कठिन नहीं होना चाहिए। मेरा अनुमान है कि किसी ने पहले से ही लाइब्रेरी संस्करण बनाया होगा, आपको Google को आजमाएं।

एक बार जब आप एक डीएलएल फ़ाइल में टेस्सेक्ट-ओसीआर कोड प्राप्त कर लेते हैं, तो आप फ़ाइल को अपने सी # प्रोजेक्ट में विजुअल स्टूडियो के माध्यम से आयात कर सकते हैं और इसे रैपर कक्षाएं बना सकते हैं और आपके लिए सभी मार्शलिंग सामान कर सकते हैं। यदि आप आयात नहीं कर सकते हैं तो DllImport आपको डीएलएल में कार्यों को सी # कोड से कॉल करने देगा।

फिर आप मूल निष्पादन योग्य पर एक नज़र डालने के लिए कह सकते हैं कि ठीक से ओसीआर एक टिफ छवि को कॉल करने के लिए कौन से फ़ंक्शंस कॉल करना है।

39

पर tessnet

+0

यह पी से बेहतर है/इसे स्वयं आमंत्रित करना। –

+2

+1 - बहुत अच्छी तरह से काम करता है और आप DllImports के बारे में भूल जाते हैं –

0

अस्वीकरण एक नज़र डालें: मैं Atalasoft

के लिए

हमारे OCR module supports Tesseract काम करते हैं और है कि यदि पर्याप्त नहीं साबित होता है, आप एक बेहतर इंजन में नवीनीकृत कर सकते हैं और बस कोड की एक पंक्ति को बदलने (हम एकाधिक ओसीआर इंजनों के लिए एक आम इंटरफेस प्रदान करते हैं)।

6

सी # प्रोग्राम tesseract.exe लॉन्च करता है और फिर tesseract.exe की आउटपुट फ़ाइल पढ़ता है।

Process process = Process.Start("tesseract.exe", "out"); 
process.WaitForExit(); 
if (process.ExitCode == 0) 
{ 
    string content = File.ReadAllText("out.txt"); 
} 
6

मैं आज पता चला कि EMGU अब एक Tesseract आवरण भी शामिल है। जबकि ओपनसीवी लिब के अप्रबंधित डीएलएस की संख्या थोड़ा मुश्किल लग सकती है, यह कुछ भी नहीं है कि आपकी आउटपुट निर्देशिका में त्वरित प्रति ठीक नहीं होगी।

Tesseract ocr = new Tesseract(Path.Combine(Environment.CurrentDirectory, "tessdata"), "eng", Tesseract.OcrEngineMode.OEM_TESSERACT_ONLY); 
this.ocr.Recognize(clip); 
optOCR.Text = this.ocr.GetText(); 

"robomatics" एक साथ रखा a very nice youtube video कि एक सरल लेकिन प्रभावी समाधान को दर्शाता है: वहां से वास्तविक ओसीआर प्रक्रिया के रूप में सरल रूप में तीन लाइनें है।

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