OCR Engine Tesseract 3.00
Tesseract のホームページ:
http://code.google.com/p/tesseract-ocr/
バージョンには 2.04 と 3.00 が存在するが,とりあえず今回は 3.00 を導入してみる.
必要なファイルのダウンロード
http://code.google.com/p/tesseract-ocr/ から以下の3種類のファイルを落とす.
- tesseract-3.00.tar.gz
- eng.traineddata.gz
- jpn.traineddata.gz
ここで eng.traineddata.gz は必須の言語データである.
インストール for Ubuntu 11.04
手順は http://code.google.com/p/tesseract-ocr/wiki/ReadMe に書かれているとおり.
準備として各種パッケージを導入する.
$ sudo apt-get install autoconf automake libtool $ sudo apt-get install libpng12-dev $ sudo apt-get install libjpeg62-dev $ sudo apt-get install libtiff4-dev $ sudo apt-get install zlib1g-dev
次に,いよいよ tesseract のインストール:
$ tar zxvf tesseract-3.00.tar.gz $ cd tesseract-3.00/ $ ./runautoconf $ ./configure $ make $ sudo make install
(メモ) 当然ながら /usr/local 下にインストールされた.
language data のインストール
$ cd .. $ gzip -d eng.traineddata.gz $ gzip -d jpn.traineddata.gz $ sudo cp -p *.traineddata /usr/local/share/tessdata/
環境変数の設定:
$ export TESSDATA_PREFIX=/usr/local/share/
アルファベットの解析実験
アルファベットが書かれた TIFFファイル(無圧縮)を作成.中身はこんな感じ:
下記のコマンドを実行すると output.txt が作られ,そこに解析結果の plain text が書き込まれる.
$ tesseract ~/sample.tiff output $ cat output.txt A B C D E F G abcdfeg 1234567890 $
活字だから完璧に読めています.
日本語の解析実験
次の画像を tesseract に与える.また,実行時のオプションとして "-l jpn" を指定する.
$ tesseract ~/samplej.tiff outputj -l jpn Tesseract Open Source OCR Engine with LibTiff $ cat outputj.txt 山囗漂宇部市 経常利益 實鳳OOO $
"-l jpn" を指定したためか,数字の箇所が見事に読み取りミス.
仮に "-l" オプションを指定しない場合,以下のように数字は正しく読み取れるものの,日本語がこける.
$ tesseract ~/samplej.tiff outputj Tesseract Open Source OCR Engine with LibTiff $ cat outputj.txt LJ.1E»»§3`=§B$ \§'%`?U§ 30,000 $
読み取り対象の文書は日本語/数字が入り混じっているから,これは困ったぞ.