TesseractをWindowsへインストールする【OCR】

TesseractをWindowsへインストールする【OCR】 サーバー

TesseractをWindowsへインストールする方法を解説しています。
そして、GoogleのOCRエンジンとの比較結果も載せています。

本記事の内容

  • TesseractはOCRエンジンである
  • TesseractをWindowsへインストールするための環境
  • Tesseractのダウンロード
  • TesseractのWindowsへのインストール
  • Tesseractの動作確認
  • Tesseractのインストール先を環境変数のPathに設定する
  • Tesseractの精度確認

TesseractはOCRエンジンである

Tesseract(テッセラクト)は、画像から文字認識を行うOCR(光学文字認識)エンジンです。
エンジンであり、ソフトではありません。
(ここで言うソフトとは、画面があって誰でも操作できるモノ)

そのため、Tesseractを操作するために画面などは用意されていません。
Pythonなどのプログラムが、このTesseractを利用する形になります。

だから、ソフトではなくエンジンと表現しています。

TesseractをWindowsへインストールするための環境

  • Windows 10 Home (バージョン1909)※以下の説明は64bit前提
  • Tesseract 5.0.0

Tesseractのダウンロード

ドイツのマンハイム大学図書館が、Windows用インストーラーを用意してくれています。
これを利用させてもらいましょう。

次のページへアクセスします。
https://github.com/UB-Mannheim/tesseract/wiki

Tesseractのダウンロード ページ

アルファ版ですが、これをダウンロードしましょう。
新しいほど文字認識の精度は向上しているはずです。

そのため、少々の不具合は仕方がないと受け入れるスタンスです。
「tesseract-ocr-w64-setup-v5.0.0-alpha.20200328.exe」をクリックします。

TesseractのWindowsへのインストール

ダウンロードが完了したら、tesseract-ocr-w64-setup-v5.0.0-alpha.20200328.exeを実行。

 TesseractのWindowsへのインストール

「NEXT」をクリック。
ライセンス条項の確認です。

 TesseractのWindowsへのインストール 【ライセンス条項】

ライセンス条項の内容を確認して、同意するなら「I Agree」をクリック。

 TesseractのWindowsへのインストール 【ユーザ選択】

Tesseractを利用するユーザの確認です。
「Install for anyone using this computer」(デフォルト)を選択して、「Next」をクリック。

 TesseractのWindowsへのインストール 【コンポーネントの選択】

コンポーネントの選択です。
以下の対応が必要です。

Additional script data (download)

Additional script data (download)

「Japanese script」と「Japanese vertical script」を選択します。

Additional language data (download)

 Additional language data (download)

「Japanese」と「Japanese(vertical)」を選択します。
ややこしいですが、「Javanese」を選択しないでください。

コンポーネントの選択を確認

 Tesseractのコンポーネントの選択を確認

上記の状態であることを確認したら、「Next」をクリック。

Tesseractインストール先

インストール先の確認です。
デフォルトのままでも問題はありません。

しかし、個人的にインストール先には次の文字は入って欲しくありません。
理由としては、Pythonなどから呼び出すときにミスを生じさせやすいからです。

  • 「 」(スペース)
  • 「-」(ハイフン)

そのため、デフォルトから上記のように変更しています。
インストール先を確認して、問題ないなら「Next」をクリック。

スタートメニューフォルダ

スタートメニューフォルダは、デフォルトで問題ないでしょう。
「Install」をクリック。

インストール完了

インストールが完了です。
「Next」をクリック。

セットアップ

セットアップできました。
「Finish」を押せば、ウィンドウが閉じます。

Tesseractの動作確認

動作確認用の画像を用意する

Wikipediaの「光学文字認識」(OCR)のページの一部を画像にしています。
この画像(ocr_test.png)を利用して、動作確認を行います。

Wikipediaの「光学文字認識」
ocr_test.png

ocr_test.pngを適当な場所に配置します。
今回は、C:\tmpに置きました。

tesseract.exeのパスを確認する

あと、インストールしたtesseract.exeのパスを確認しておきます。
私の場合は、C:\soft\TesseractにTesseractをインストールしています。

そのため、tesseract.exeのパスは以下。
C:\soft\Tesseract\tesseract.exe

OCRの動作テスト

「TesseractはOCRエンジンである」で言ったように、Tesseractに画面は存在しません。
プログラムから利用するエンジンに過ぎません。

そのため、動作テストにはコマンドプロンプトを利用します。
まず、コマンドプロンプトを起動してください。

そして、ocr_test.pngのある場所にまで移動してください。
今回は、 C:\tmpとなります。

ここで次のコマンドを実行します。
もちろん、tesseract.exeのパスは各自の環境のモノに置き換えてください。

C:\soft\Tesseract\tesseract.exe ocr_test.png ocr_test_output -l jpn

上記コマンドを実行した結果は、以下。

C:\tmp>C:\soft\Tesseract\tesseract.exe ocr_test.png ocr_test_output -l jpn
Tesseract Open Source OCR Engine v5.0.0-alpha.20200328 with Leptonica
Detected 101 diacritics

C:\tmpに「ocr_test_output.txt」が新規で作成されています。
ocr_test_output.txtにOCRの結果が出力されるということですね。

Wikipediaの「光学文字認識」OCRの結果

若干、間違いはあります。
でも、高い精度で認識できていますね。

これにてOCRの動作テストは完了です。
以降では、精度テストも行います。

ただ、毎回「C:\soft\Tesseract\tesseract.exe」と入力するのは手間ではありませんか?
私は、手間に感じます。

それに、Pythonなどのプログラムから利用する場合にも、そのままだと不便です。
コード的にごちゃごちゃするという意味もあります。

そのため、「C:\soft\Tesseract\」を環境変数に設定します。
そうしておけば、「tesseract」と入力するだけでTesseractが利用できます。

Tesseractのインストール先を環境変数のPathに設定する

環境変数にTesseractをインストールしたフォルダのパスを設定します。
今回は、「C:\soft\Tesseract」にインストールしました。
そのため、設定するパスは「C:\soft\Tesseract\」となります。

ここでちょっとした便利なノウハウを紹介します。
環境変数の設定が少しだけ楽になります。

以下に「sysdm.cpl」と入力して、Enterを押してください。

sysdm.cpl

以下の画面が、立ち上がります。

sysdm.cplでシステムのプロパティ

「詳細設定」のタブを開きます。

sysdm.cplでシステムのプロパティ【詳細設定】

これ以降は、説明は省略します。
システム環境変数の「Path」にTesseractをインストールしたフォルダを指定します。

Tesseractの精度確認

GoogleのOCRと比較してみます。
Tesseractは、もともとGoogleの公開したオープンソースです。
その意味では、親戚みたいなモノだと捉えています。

GoogleのOCRは、Google DriveやGoogle KEEP(アプリ)で利用可能です。
比較することにより、Tesseractの精度がどの位置にあるのかがわかります。

難易度【高】の画像

文字認識を行うターゲットは、次の画像です。
この画像は、即席みそ汁のパッケージ裏面の一部を撮影したものです。

即席みそ汁のパッケージ裏面
ocr_miso.jpg

Googleの認識結果(正確には、Google KEEP)

名称 即席みそ汁
原材料名 調味みそ(米みそ(国内製造)、食
塩、昆布エキス、鰹エキス、鰹節粉、
煮干粉、酵母エキス/酒精、調味
料(アミノ酸等)、(一部に大豆を含
む))、
具(わかめ、ふ、調味顆粒(鰹節粉、
デキストリン、煮干粉、食塩)、乾燥
ねぎ/調味料(アミノ酸等)、酸化
防止剤(ビタミンE)、クエン酸、(一
部に小麦を含む))
内容量 181g(調味みそ 16.6g×10袋、
具 1.5g×10袋)
賞味期限この面の左下に記載
保存方法高温の場所をさけて保存してくだ
さい
株式会社永谷園
〒105-8448
東京都港区西新橋2丁目36番1号
製造所固有記号は賞味期限の下段左側に記載
賞味期限
っ
2020.11.22

Tesseractの認識結果

称


味みそ(ボカ(国内


后、 昆布エキス、鯉エキス、鯉節粉、
王徐 酵母エキスン酒精、調味
料(アミノ酸等)、(一部に大豆を含


む))、


具 (わかめ、ふ、調味数粒 (鯉節粉、
デキストリン、煮干粉、食塩)、乾燥
ねぎノ調味料(アミノ酸等) 、酸化
防止剤(ビタミンE) 、クエン酸、(一
部に小麦を含む) )
181g(調味みそ 16.6gx10袋、
具 1.5gx10和袋)
この面の左下に記載
生生才に存してく2


も

Googleの圧勝です。
レベルが、圧倒的に違いますね。

やはり、対象の画像は凹凸があり、認識が難しいのかもしれません。
そうだとしても、GoogleのOCRはちゃんと認識できていますからね。。。
というか、Googleはほぼ完璧です。

もう一度だけ、Tesseractにチャンスをあげましょう。

難易度【中】の画像

先ほどは適当に撮影した凹凸のある画像でした。
今度は、凹凸をなくしました。

ハサミで切り取って、スキャンしました。
若干、斜めになっていますが、読み取りやすくなったのでは?

即席みそ汁のパッケージ裏面スキャン

Googleの認識結果(正確には、Google KEEP)名称 即席みそ汁

名称 即席みそ汁
原材料名 調味みそ(米みそ(国内製造)、食
塩、昆布エキス、鰹エキス、鰹節粉、
煮干粉、酵母エキス/酒精、調味
料(アミノ酸等)、(一部に大豆を含
む))、
具(わかめ、ふ、調味顆粒(鰹節粉、
デキストリン、煮干粉、食塩)、乾燥
ねぎ/調味料(アミノ酸等)、酸化
防止剤(ビタミンE)、クエン酸、(一
部に小麦を含む))
内容量 181g(調味みそ 16.6g×10袋、
具 1.5g×10袋)
賞味期限この面の左下に記載
保存方法高温の場所をさけて保存してくだ
さい
株式会社永谷園
〒105-8448
東京都港区西新橋2丁目36番1号
製造所固有記号は賞味期限の下段左側に記載
賞味期限
2020.11.22

Tesseractの認識結果

名 称 即席みそ汗


原材料名 調味みそ(米みそ(国内製造)、食
塩、昆布エキス、鯉エキス、鯉節粉、
煮十粉、酵母エキス酒精、調味
箇和ee (一部に大豆を含


具 (わかめ、ふ、調味天粒 (鯉節粉、


デキストリン、煮干粉、食塩)、乾燥


ねぎノ調味料(アミノ酸等)、酸化


防止剤(ビタミンE) 、クエン酸、(一


部に小麦を含む) )


内 容量 181g(調味みそ 16.6gx10袋、
具 1.5gx10袋)


賞味期限 この面の左下に記載


保存方法 のて人衝してくだ


株式会社   永谷園
〒105 -8448
東京都港区西新橋2丁目36番1号
束操所固有記号は賞味期限の下段左側に記載
中味期限

GoogleとTesseractの比較は、もうやめておきましょう。
Tesseractの精度が向上したことにフォーカスします。

やはり、平面の画像であれば、精度は上がるのですね。
これは、今後のために収穫となりました。

まとめ

最後にまとめます。

Google、最高!!
言葉が出ません。
「何もいえね」って、こういうときに言うのでしょうね。

音声認識の分野でもそうです。
Googleの製品は、他を圧倒する精度で音声を認識することが可能です。

このことは次の記事で解説しています。
興味のある方は、記事をご覧ください。

文字認識に話を戻しましょう。
本気の精度を求めるなら、やはりGoogleです。

この記事では、Tesseractが主役のはずです。
しかし、それ以上にGoogle KEEPに可能性を感じました。

正直、Google KEEPで利用しているOCRエンジンが利用できるなら、それを使いたいですね。
でも、どうやらそのエンジンは公開されていないようです。

Tesseractについては、利用方法をもっと考えてみたいですね。
Googleには勝てませんが、スクリーンショットは高い精度で文字認識ができたので。

Tesseractに学習させることが、可能らしいです。
ある分野に特化した学習をさせることにより、その分野ではGoogleに近づくことができるかもしれません。

タイトルとURLをコピーしました