win10 vs2015源碼編譯tesseract4.0

1.安裝軟件

安裝完畢後,須要將cmake.exe和cppan.exe加入環境變量PATH中linux

cmake簡介

CMake全稱爲「cross platform make」,是一個開源的跨平臺自動化構建系統。使用指定名爲CMakeLists.txt的配置文件能夠控制軟件的構建、測試和打包等流程。同時,經過編寫平臺無關的CMakeLists.txt文件進行簡單的配置,CMake就能生成對應目標平臺的構建文件。例如:linux系統的makefile文件、Windows的項目和解決方案(.sln)。git

配置包括: 建立哪些項目、項目間的依賴關係、include哪些頭文件、編譯時生成靜態庫,動態庫仍是可執行文件、以及生成的版本: (x86,x64)等。github

cppan簡介

CPPAN是創建在CMake之上具備構建系統功能的跨平臺C / C ++依賴管理器。 它支持快速的腳本式編碼和原型製做以及處理大型項目。 能夠很方便的查找、共享和重用庫以及發佈您的項目。你只須要將時間花在代碼上,而不須要管理依賴關係。 CPPAN幫您將包裝時間下降至幾秒鐘!它支持簡單的交叉編譯,繼承而且把你本身的設置、標誌推送到每一個依賴。windows

CPPAN之於C++就像Maven之於Java。CPPAN能夠理解爲C++的包管理器,包含了衆多依賴包,只須要向CPPAN指定依賴包,CPPAN就會幫你下載好須要的依賴包和相關配置。測試

CPPAN經過cppan.yml文件配置相關依賴項目。ui

經過dependencies指令說明依賴項,這裏依賴leptoncia,對應的版本爲1,這裏1表示1.*.*,也就是主版本爲1的均可以。編碼

cppan簡單使用spa

 

 2.  生成解決方案(.sln)

下載tesseract源碼:命令行

git clone https://github.com/tesseract-ocr/tesseract tesseract

生成x64版本的解決方案3d

cd tesseract   # 進入源代碼目錄
cppan    # 下載相關的的依賴,【下載時間可能很長,須要耐心等待】
mkdir win64 && cd win64
cmake .. -G "Visual Studio 14 2015 Win64"

生成x86版本的解決方案

cd tesseract
cppan
mkdir build && cd build
cmake ..

3. 編譯

這裏選擇x64版本, 打開win64目錄下的tesseract.sln,這裏選擇release模式。選擇」生成" -> "生成解決方案"

 

編譯過程當中會遇到不少錯誤,如C2001和C3668,如圖:

g_set_error (error, G_KEY_FILE_ERROR,
                       G_KEY_FILE_ERROR_UNKNOWN_ENCODING,
                       _("Key file contains unsupported "
             "encoding 「%s」"), value_utf8);

# 上面代碼中出現了中文雙引號

錯誤的緣由:

其實都是文件編碼問題。下載獲得的文件編碼爲UTF-8(不帶簽名),而Visual Studio (中文版)默認保存的文本文件是GB2312編碼,對於UTF-8編碼的某些字符,在中文版VS下就容易因解碼錯誤致使亂碼形成編譯錯誤。

解決方法: 只須要雙擊對應的錯誤,跳轉到對應的文件,而後點擊左上角菜單 「文件選項" 下的"高級保存選項",選擇unicode(utf-8帶簽名).保存後再「生成"便可。

須要修改的文件:

 

UTF-8 帶簽名或者UTF-8 無簽名區別:

帶簽名比無簽名開頭多了BOM 信息,UTF-8 的 BOM 是 0xEFBBBF,帶簽名的將更容易被解析器以正確的編碼方式進行解析。

 

建議:

先"生成」項目"cppan-d-b-d", 再「生成"整個解決方案

遇到錯誤,雙擊錯誤,進入錯誤提示行後,點擊左上角菜單 「文件"下的"高級保存選項",選擇unicode(utf-8帶簽名).保存後右擊項目選擇"生成",逐個解決錯誤。

 

效果:

 

4.安裝

找到CMakeTargets中的INSTALL,而後右鍵選擇僅限於項目–>僅生成INSTALL

 此外, 還須要將win64\bin\Release目錄下的dll拷貝到install\bin目錄下

 64位默認安裝位置爲C:/Program Files/tesseract,所以安裝須要管理員權限

錯誤提示以下:

 

修改程序安裝位置

 

# 經過指定CMAKE_INSTALL_PREFIX設置安裝目錄
cmake -D CMAKE_INSTALL_PREFIX=D:/tesseract/install -G "Visual Studio 14 2015 Win64" .. 

 

打開解決方案所在目錄下的CMakeCache.txt, 查看CMAKE_INSTALL_PREFIX 配置修改是否生效

 

 

 5. 環境變量配置

  • 將tesseract.exe所在路徑加入環境變量PATH中
  • 添加環境變量TESSDATA_PREFIX,其值爲tessdata目錄所在路徑

訓練文件下載下載地址:  https://github.com/tesseract-ocr/tessdata 

沒有設置TESSDATA_PREFIX,在命令行使用tesseract會出現以下提示:

 

參考: https://github.com/tesseract-ocr/tesseract/wiki/Compiling#windows

相關文章
相關標籤/搜索