Tesseract 是一個開源的 OCR 引擎,可以識別多種格式的圖像文件並將其轉換成文本,最初由 HP 公司開發,后來由 Google 維護。下載地址:https://digi.bib.uni-mannheim.de/tesseract/
其中文件名中帶有 dev 的為開發版本,不帶 dev 的為穩定版本。
安裝時可以添加支持的語言包,如下界面最后一個選項點開選擇,我們可以選擇簡體中文 Chiness(Simplified)。
安裝完成后還需要將安裝路徑添加至環境變量。
打開 cmd,輸入命令 tesseract -v,看到輸出版本信息即代表安裝成功。
識別命令:tesseract 圖片路徑 結果文件名 -l 語言
1、將 cmd 切換到圖片所在路徑,則可以只輸入圖片名,否則需要全路徑
2、結果文件名不可以加后綴,必定會自動加 .txt 后綴,如果結果文件名寫 a.txt,則最后輸出的文件名為 a.txt.txt。
3、-l 是英文字母L,不是數字1,language的意思。
4、語言英文為 eng,簡體中文為 chi_sim
截了個谷歌的圖片來測試
輸入命令:tesseract 1.png a -l eng,結果如下,識別正確
我們嘗試用簡體中文試試
識別就有誤了。
中文的識別可以另外截圖試試,只是正確率並不高。
我 tesseract 是安裝在 C 盤的,在 C 盤運行命令識別沒問題,但在 D 盤打開 cmd 運行命令就報錯了:
Error opening data file ….
Please make sure the TESSDATA_PREFIX environment variable is set to the parent directory of your “tessdata” directory.
Failed loading language ‘eng’
Teseract couldn’t load any languages!
Counld not initialize tesseract
意思就是要將 tessdata 的父文件夾路徑設置為名為 TESSDATA_PREFIX 的環境變量值。設置完成之后需要重啟電腦,否則依然報錯。