tesseract-ocr有2和3兩個版本,不一樣版本訓練方法稍有不一樣。html
第3版本的訓練方法官版教程在這裏:TrainingTesseract3java
第2版的訓練方法官版教程在這裏:TrainingTesseractweb
我使用的是最新的3.01版本的。訓練所需準備:windows
1.下載並安裝3.01版本的tesseract。事實上並不須要安裝這步驟,我下載的是壓縮包版,解壓便可,這裏我解壓到E:\Tesseract-ocr目錄。工具
2.下載並安裝jTessBoxEditor 工具,這是一個Box file editors,用來編輯訓練文件的,直接下載地址在這裏。這個軟件是用java寫的,運行須要安裝jre,好在這個東西比.net好裝多了,怎麼運行能夠見它的readme文件。學習
3.一張用來訓練的tiff格式圖片。字體
在不經過訓練的前提下,使用tesseract來識別一個訂單號的內容,如圖
發現錯誤率很高,但願經過訓練來提升準確率。ui
訓練過程:google
1.經過合併10張如上圖的圖片合併爲一張tiff格式的圖片,如何合併呢?經過jTessBoxEditor的Merge Tiff 來完成,不過他的小缺點就是隻能合併多張tiff格式的,若是你的圖片是jpg的,須要先轉換。生成後的tiff圖片叫作orderNo.tiflua
2.Make Box Files。在orderNo.tif所在的目錄下打開一個命令行,輸入:
E:\Tesseract-ocr\tesseract.exe orderNo.tif orderNo batch.nochop makebox
來生成一個box文件,該文件記錄了tesseract識別出來的每個字和其位置座標。
3.使用jTessBoxEditor打開orderNo.tif文件,須要記住的是第2步生成的orderNo.box要和這個orderNo.tif文件同在一個目錄下。逐個校訂文字,後保存。
4.Run Tesseract for Training。輸入命令:
E:\Tesseract-ocr\tesseract.exe orderNo.tif orderNo nobatch box.train
5.Compute the Character Set。輸入命令:
E:\Tesseract-ocr\unicharset_extractor.exe orderNo.box
6.新建文件「font_properties」。若是是3.01版本,那麼須要在目錄下新建一個名字爲「font_properties」的文件,而且輸入文本 :
orderNo 0 0 0 0 0
大體意思就是說orderNo這個語言的字體爲普通字體。
並執行命令:
E:\Tesseract-ocr\mftraining.exe -F font_properties -U unicharset orderNo.tr
7.Clustering。輸入命令:
E:\Tesseract-ocr\cntraining.exe orderNo.tr
8.此時,在目錄下應該生成若干個文件了,把unicharset, inttemp, normproto, pffmtable這四個文件加上前綴「orderNo.」。而後輸入命令:
E:\Tesseract-ocr\combine_tessdata.exe orderNo.
會顯示一個結果如:
Combining tessdata files
TessdataManager combined tesseract data files.
Offset for type 0 is -1
Offset for type 1 is 108
Offset for type 2 is -1
Offset for type 3 is 1660
Offset for type 4 is 327545
Offset for type 5 is 327781
Offset for type 6 is -1
Offset for type 7 is -1
Offset for type 8 is -1
Offset for type 9 is -1
Offset for type 10 is -1
Offset for type 11 is -1
Offset for type 12 is –1
必須肯定的是第二、四、五、6行的數據不是-1,那麼一個新的字典就算生成了。
此時目錄下「orderNo.traineddata」的文件拷貝到tesseract程序目錄下的「tessdata」目錄。
之後就可使用該該字典來識別了,例如:
tesseract.exe test.jpg result –l orderNo
經過訓練出來的新語言,識別率提升了很多。
有學習能力的?
您好,個人步驟跟你的同樣,可到mftraining這一步怎麼都過不去,總是windows彈出提示,mftraining.exe已中止工做。該怎麼解決呢。
E:\Tesseract-ocr3.01\build>..\mftraining -F font_properties -U unicharset cnlp.lpft.exp0.tr