關於我自己

2014年11月26日 星期三

tesseract-ocr 文字訓練

在玩tesseract-ocr部分,當然要訓練圖形,讓tesseract-ocr原件去擷取特徵值

 下載: jTessBoxEdit 工具

 JTessBoxEdit是方便去框取字元 , 然後輸入字元跟制定座標軸

因為過於簡單 ~ 所以JTessBoxEdit部分 ~ 比較後會補充一下

首先主要講要怎麼製作訓練字元的語言包

因為每個版本都有差異如果要比較詳細的話就參考:

 https://code.google.com/p/tesseract-ocr/wiki/TrainingTesseract3

詳細Tesseract 應用技術跟詳細流程文件(推薦):

 https://code.google.com/p/tesseract-ocr/wiki/Documentation

1.

網址:http://vietocr.sourceforge.net/training.html

 2.

 

3.

 

4.

 

5.

 

6.

 

7.

 

8.

 

9. cd C:\Program Files (x86)\Tesseract-OCR

 

10. 輸入  tesseract sel.timesitalic.exp0.tif sel.timesitalic.exp0 box.train

11.輸入  unicharset_extractor sel.timesitalic.exp0.box

 

12. font_properties 是自己去新增 ~ 

沒有什麼附檔名 ~ 就是直接命名 font_properties

輸入 timesitalic 1 0 0 1 0

之後DOS 輸入 shapeclustering -F font_properties -U unicharset sel.timesitalic.exp0.tr

 

13.輸入: mftraining -F font_properties -U unicharset -O unicharset sel.timesitalic.exp0.tr

 

14.輸入: cntraining sel.timesitalic.exp0.tr

 

15.

 

16.

 

17.輸入 : combine_tessdata sel.

 

18.

19. 輸入:  tesseract.exe sel.timesitalic.exp0.tif ch001 -l sel

如果懶得用jTessBoxEditor 可以直接全部用DOS指令

1.

tesseract sel.timesitalic.exp0.tif sel.timesitalic.exp0 batch.nochop makebox
2.
tesseract sel.timesitalic.exp0.tif sel.timesitalic.exp0 box.train
3.
unicharset_extractor sel.timesitalic.exp0.box
4.
shapeclustering -F font_properties -U unicharset sel.timesitalic.exp0.tr
5.
mftraining -F font_properties -U unicharset -O unicharset sel.timesitalic.exp0.tr
6.
cntraining sel.timesitalic.exp0.tr
7.
combine_tessdata sel.
8.
tesseract.exe sel.timesitalic.exp0.tif ch001 -l sel

 

jTessBoxEdit 工具利用(附加篇)=>補上之前有一篇的符號辨識

1.

 

2.

 

3.

 

4.

 

5.

 

6.

 

7.

 

8.

之後照著之前的教學產生語言包去辨識符號

 

 

 

 

11 則留言:

  1. 作者已經移除這則留言。

    回覆刪除
  2. 請問要辨識的圖片,沒被tesseract偵測畫上框框的圖字,有沒有解決方法,不知您有沒有遇到過這方面的問題..

    回覆刪除
    回覆
    1. 您好:
      可以試試看在Box Coordinates裡面複製一個字元
      在去更改他得作標跟寬跟高之後,在去更改成您要的字元

      刪除
    2. 作者已經移除這則留言。

      刪除
    3. 我在想可能原因:
      1.文字訓練不足
      2.樣本的圖片過於小
      3.圖片是否有放大或者縮小
      4.還是其他呢?

      刪除
    4. 請問您在使用tesseract辨識中文字時,辨識度高嗎? 用在那方面的辨識?

      刪除
    5. 大約有幾成的辨識度?

      刪除
    6. 以前的時候 ~ 有用中文包來辨識看看 ~ 文字一點點大小差異就很明顯
      加上日跟曰 ~ 中文包就很難分別很清楚 ~ 可能跟文字的複雜度有關
      如果要用到一般網頁上的辨識 ~ 要看訓練的文字字體跟大小跟訓練的樣本多寡
      順便提供tesseract辨識的簡略(希望對您有幫助):
      http://static.googleusercontent.com/media/research.google.com/zh-TW//pubs/archive/33418.pdf

      刪除
    7. 謝謝您這麼熱心回覆~~感恩!!,linux下,除了tesseract還有其它比較好的辨識軟體嗎(可以用shell的方式)?

      刪除
    8. 不好意思~最近剛好在忙
      除了tesseract我就不太知道了 ~ 因為好像都是要付費的軟體

      刪除
  3. 作者已經移除這則留言。

    回覆刪除