Tesseract-OCRでラオス語を認識させる。
StackOverflowに質問して、ラオス語の学習データの作成が出来ると分かってからかなりほったらかしになっていたが、ようやく意を決してやってみた。
android - Androidでマイナー言語(ラオス語)を写真に撮って、文字認識をさせたい。 - スタック・オーバーフロー
結論から言うと、取りあえず新規言語の学習データの作成とその利用は確認できた。これからは色々とデータを足していく作業が必要になりそう。
基本的には、こちらのブログの通りに進めていくと問題ない。本当にお世話になりました。ありがとうございました。
ただ、新規言語の場合は、学習データがないため、Boxファイルの作成でエラーが起きる。
このため、Boxファイルの作成の際は、英語(eng)や日本語(jpn)などすでに学習データのある言語を指定して、ファイルを作成し、その後の作業でラオス語(lao)に読み替えて進めるとラオス語の学習データが作成できる。
まだ、データの作りこみは全くできてないが、取りあえず学習に使ったデータはそのまま認識できた。
↓用意した学習用の画像。
↓日本語を指定してファイルを作成したので、最初は文字がくしゃくしゃ。
これを実際の文字に合わせて修正した。今回は座標の修正は行っていない。
手順を踏んでいくと学習データファイルが作成できる。
これをtesseractのフォルダに放り込む。
学習用の画像を2行にしたものをテスト用に用意。
そして、コマンドを起動すると、エラーなく終了する。
ここでは、ラオス語を指定している。
改行がCRだけ?なのでメモ帳では改行していないようにみえるが、
改行されて認識した情報が表示されている。
Windowsだと学習データの作成の部分が楽出来ないらしく、そのあたりの話はこちらのサイトに詳しく載ってました。
Tesseract-OCRの日本語調教(2) - 日本語練習中
Googleの説明はこちら。ここに書かれている、training/text2imageはWindowsではできないらしい。