windows - Tesseract+opencv 3.0+खिड़कियां, पाठ मॉड्यूल छोटे आकार, त्रुटियों को जोड़ने



visual-studio-2012 (1)

मैंने दो दिन पहले उत्तर में इस पाठ को पोस्ट किया था। ओपेनसीवी। ओआरजी, अब मैं यहां यहां पोस्ट कर रहा हूं। http://answers.opencv.org/question/68634/text-contrib-module-and-tesseract/

हर किसी के लिए शुभ दोपहर सबसे पहले, मेरे अंग्रेजी hehe के लिए खेद है। मैं opencv contrib मॉड्यूल 'पाठ' बनाने की कोशिश कर रहा हूँ, हालांकि मुझे सफलता नहीं मिली है नोट: xfeatures2d जैसे अन्य मॉड्यूल ने मुझे कभी समस्या नहीं दी है।

मेरा प्लेटफ़ॉर्म विंडोज 7 एक्स 64 है और मैं वीएस 2013 को कंपाइलर के रूप में उपयोग करता हूं, मैं टय़ारैरैक्ट 3.04 को LIB के रूप में विकसित करने के लिए इस ट्यूटोरियल ( http://vorba.ch/2014/tesseract-3.03-vs2013.html ) का पालन किया है, लेकिन संकलन के बाद यह सफलतापूर्वक, मैं cmake के साथ vproj उत्पन्न करना चाहता हूं और समस्या निम्न है:

सीमके जीयूआई में, ओपनसीवी स्रोत, एक्सट्रैस डायरेक्टरी, इत्यादि का चयन करने से पहले, मुझे 'टेसरेक्ट' ग्रुप सेट के तहत वार्स नहीं मिलते हैं (शामिल और लिब्स)। मुझे यह पता है क्योंकि जब मैं कॉन्फ़िगर पर क्लिक करता हूं, तो लॉग "टेसेरैक्ट: नहीं" कहते हैं

मैंने FindTesseract cmake स्क्रिप्ट का निरीक्षण किया है और मुझे लगता है कि यह काम नहीं करता ....

कृपया, मुझे क्या हो रहा है, इस बारे में कोई भी थोड़ा संकेत दे सकता है? टेसेरैक्ट फ़ंक्शन का उपयोग करने के लिए मैं opencv टेक्स्ट मॉड्यूल कैसे बना सकता हूं?

इसके अलावा मैंने टेसरेक्ट के लिए लिंक पथ जोड़ने के लिए पाठ मॉड्यूल को संकलित करने की कोशिश की है, लेकिन जब मैं अपने प्रोग्राम में उपयोग करना चाहता हूं मुझे अपरिभाषित प्रतीकों के बारे में लिंक त्रुटियां मिलती हैं ...

यह स्थिति मुझे परेशान कर रही है मुझे परेशान दिन। क्या कोई ऐसा है जो विंडो के नीचे पाठ मॉड्यूल का उपयोग कर रहा है?

कोई मेरी मदद कर सकता है? मैंने कुछ प्रगति की है, अब सीएमके जीयूआई, मुझे टेसेरैक्ट कहते हैं: हाँ। समस्या यह थी कि मुझे लिपोटोनिका लिब को जोड़ने के लिए प्रविष्टि नहीं मिली, जो कि एक ही टेसरेक्ट समूह में नहीं है बल्कि 'अनगढ़े प्रविष्टियां' में है

ठीक है, अब समस्या एक समान है, सेमीकैसे द्वारा बनाई गई वीएस समाधान सही ढंग से पाठ मॉड्यूल का निर्माण नहीं कर रहा है जैसा कि मैं देख सकता हूं लिप्टी के बारे में 9 एमबी और टेसरेक्ट लिब 128 एमबी (/ एमटी और डिबग में) है, हालांकि ओपनसीवी_टेक्स्ट 300 डी। लिब केवल 12 एमबी है । कुछ गड़बड़ है....

मुझे यकीन नहीं है कि किस प्रकार के टेसरेक्ट संस्करण का उपयोग करना चाहिए I मैंने दो संयोजनों का अनुभव किया है: liblept168-static-mtdll-debug.lib + libtesseract302-static-debug.lib और liblept171-static-mtdll-debug.lib + libtesseract304-static-debug.lib

बेशक, जब मैं अपने प्रोग्राम से पाठ मॉड्यूल को लिंक करता हूँ तो मुझे लिंक त्रुटियाँ देती हैं I

लिंकिंग त्रुटियों की तरह दिखते हैं: opencv_text300d.lib (ocr_tesseract.obj): त्रुटि LNK2019: unresolved external symbol "public: bool __cdecl tesseract::PageIterator::BoundingBox(enum tesseract::PageIteratorLevel,int *,int *,int *,int *)const " (?........................

...
#include "opencv2/text.hpp"
...
string output;
cv::Mat aux;
Ptr<OCRTesseract> ocr = OCRTesseract::create();
ocr->run(aux, output);
...

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

वास्तव में, उन्नत में बहुत बहुत धन्यवाद


मुझे एक ही समस्या का सामना करना पड़ रहा था। मैं जिस समाधान के साथ आया था वह पाठ पत्रक में CMakeLists.txt फ़ाइल को संपादित करना था।

बदलने के

if(${Tesseract_FOUND})
include_directories(${Tesseract_INCLUDE_DIR})
endif()

साथ में

add_definitions( -DWINDOWS)
add_definitions( -DNOMINMAX)
SET(Tesseract_DIR "C:\\tesseract-build\\tesseract-ocr")
SET(Lept_DIR "C:\\tesseract-build\\lib")
include_directories(
        ${Tesseract_DIR}/api
        ${Tesseract_DIR}/ccutil/
        ${Tesseract_DIR}/ccstruct/
        ${Tesseract_DIR}/ccmain/
    )
link_directories( ${Tesseract_DIR}/vs2013/bin/Win32/DLL_Release/
                  ${Lept_DIR}/
                  ${Lept_DIR}/Win32/
                )   

जब आप सीएमके चलाते हैं, टेसरेक्ट अब भी नहीं रहेगा और टेसारैक्ट / पेटी पुस्तकालय रिक्त होना चाहिए।