なるほど。結構めんどくさい...。
以下にまとめ。
- トレーニング用の画像の準備
- .boxファイルの作成.
tesseract [画像ファイル名] [作成するboxファイル名(拡張子なし)] -l jpn batch.nochop makebox
TessractOCRが、トレーニング用の画像から大体の枠を読み取り、boxファイル(1文字毎の枠を定義したテキストファイル)を作成してくれるみたい。
- 作成されたboxファイルの確認・調整
- unicharsetファイルの作成
前手順までに作成されたboxファイル(複数可 半角スペース区切り)を指定
unicharset_extractor [boxファイル名] [boxファイル名] [boxファイル名]
- font_propertiesファイルの作成. ver3.01から必須(?)
tesseractが、trainingに使用するフォントの概要を知るためのファイル。...多分。
ファイルの内容:
[フォント名] [italic] [bold] [fixed] [serif] [fraktur]
サンプル:IPAexゴシック、IPAex明朝なら:
ipaexg 0 0 0 0 0
ipaexm 0 0 0 0 0 - trファイルの作成.
tesseract [画像ファイル名] [boxファイル名(拡張子なし)] nobatch box.train.stderr
例:
tesseract jpn.ipaexg.exp19.TIF jpn.ipaexg.exp19 nobatch box.train.stderr
これにより、xxxx.trファイルができる。
これ、結構つまづいた。
とりあえず、フォントサイズ大きめに作ろうと思ってやっていたら、
なんだか
FAILURE! Couldn't find a matching blob
がでる。。ようわからん。
部首ごとにマッチしちまってるのか、サイズがでかすぎるだけなのか・・・。
(そのときは、1文字あたりのサイズを40ptで作成した画像で実行した)
ためしに、20ptで画像作成&実行しなおしたら、見事解決。
16ptとかがベストかも。(根拠無いけど。なんとなく。)文字の間隔とかもかなり影響するかと。 - trファイルの結合.
前手順までに作成されたtrファイル(複数可 半角スペース区切り)を指定
cat [trファイル] [trファイル] [trファイル] … > [フォント名].tr
こんなかんじ。
cat jpn.ipaexg.exp1.tr jpn.ipaexg.exp2.tr jpn.ipaexg.exp3.tr >ipaexg.tr
ここまでで一段落。
(フォント別の)学習データ作成準備が完了。
次の段階は、フォント毎にまとめられた「trファイル」を使ってTesseractに学習させる。
0 件のコメント:
コメントを投稿