コンテンツにスキップします。

はじめに

Tesseract は、光学文字認識(OCR)エンジンであり、Apache 2.0 ライセンスの下で利用可能なオープンソースです。直接使用することも、プログラマーの場合は、APIを使用して画像から印刷されたテキストを抽出することもできます。幅広い言語をサポートしています。

Tesseract には組み込みの GUI はありませんが、サードパーティページから入手できるものがいくつかあります。

インストール

インストールには、エンジン本体と、言語用の traineddata の2つの部分があります。

Tesseract は多くの Linux ディストリビューションから直接入手できます。パッケージは通常、'tesseract' または 'tesseract-ocr' と呼ばれます。お使いのディストリビューションのリポジトリを検索して見つけてください。

130を超える言語と35を超えるスクリプトのパッケージも、Linuxディストリビューションから直接入手できます。言語の traineddata パッケージは、'tesseract-ocr-langcode' および 'tesseract-ocr-script-scriptcode' と呼ばれ、langcode は3文字の言語コード、scriptcode は4文字のスクリプトコードです。

例: tesseract-ocr-eng(英語)、tesseract-ocr-ara(アラビア語)、tesseract-ocr-chi-sim(簡体字中国語)、tesseract-ocr-script-latn(ラテンスクリプト)、tesseract-ocr-script-deva(デーヴァナーガリー文字)など。

** エキスパート専用。**

OCRエンジンモードを試している場合は、Linuxディストリビューションで利用可能なもの以外に、言語トレーニングデータを手動でインストールする必要があります。

さまざまなタイプのトレーニングデータは、GitHubにあります。.traineddataファイルを解凍して、「tessdata」ディレクトリにコピーします。正確なディレクトリは、トレーニングデータの種類とLinuxディストリビューションの両方に依存します。候補は、/usr/share/tesseract-ocr/tessdata/usr/share/tessdata、または/usr/share/tesseract-ocr/4.00/tessdataです。

廃止されたTesseractバージョン=< 3.02のトレーニングデータは、別の場所にあります。

プラットフォーム

Tesseractがお使いのディストリビューションで利用できない場合、または提供されているものよりも新しいバージョンを使用したい場合は、自分でコンパイルできます。

Ubuntu

Ubuntu に Tesseract とその開発ツールをインストールするには、単に次を実行します。

sudo apt install tesseract-ocr
sudo apt install libtesseract-dev

Ubuntu ユーザー向けの注意:apt がパッケージを見つけられない場合は、次に示すように、sources.list ファイルに universe エントリを追加してみてください。

sudo vi /etc/apt/sources.list

Copy the first line "deb http://archive.ubuntu.com/ubuntu bionic main" and paste it as shown below on the next line.
If you are using a different release of ubuntu, then replace bionic with the respective release name.

deb http://archive.ubuntu.com/ubuntu bionic universe

Debian パッケージ

Raspbian パッケージ

Ubuntu パッケージ

Ubuntu ppa

RHEL/CentOS/Scientific Linux、Fedora、openSUSE パッケージ

詳細な手順については、OpenSuseへのインストールページを参照してください。

AppImage

手順

  1. リリースページから AppImage をダウンロードします。
  2. ターミナルアプリケーションを開きます(まだ開いていない場合)。
  3. AppImage の場所を参照します。
  4. AppImage を実行可能にします。
    $ chmod a+x tesseract*.AppImage
  5. 実行します。
    ./tesseract*.AppImage -l eng page.tif page.txt

AppImage の互換性

含まれる traineddata ファイル

snap

snapd でサポートされているディストリビューションの場合、次のコマンドを実行して、tesseract ビルド済みのバイナリをインストールすることもできます(snapd がインストールされていませんか?)。

sudo snap install --channel=edge tesseract

traineddata は現在 snap パッケージには同梱されておらず、手動で ~/snap/tesseract/current に配置する必要があります。

macOS

Tesseract は、MacPorts または Homebrew のいずれかを使用してインストールできます。

Tesseract API の macOS ラッパーは、Tesseract macOS でも利用できます。

MacPorts

Tesseract をインストールするには、このコマンドを実行します。

sudo port install tesseract

言語データをインストールするには、次を実行します。

sudo port install tesseract-<langcode>

利用可能な言語コードのリストは、MacPorts tesseract ページにあります。

Homebrew

Tesseract をインストールするには、このコマンドを実行します。

brew install tesseract

tesseract ディレクトリは、brew info tesseract を使用して見つけることができます。例: /usr/local/Cellar/tesseract/3.05.02/share/tessdata/

Windows

Tesseract 3.05、Tesseract 4、および Tesseract 5 用の Windows インストーラーは、マンハイム大学の Tesseract から入手できます。これらには、トレーニングツールが含まれています。32 ビットと 64 ビットの両方のインストーラーが利用可能です。

旧バージョン3.02のインストーラーは、ダウンロードページから Windows 用に入手できます。これには、英語のトレーニングデータが含まれています。別の言語を使用する場合は、適切なトレーニングデータをダウンロードし、7-zip を使用して解凍し、.traineddata ファイルを「tessdata」ディレクトリ(おそらく C:\Program Files\Tesseract-OCR\tessdata)にコピーします。

任意の場所から tesseract-OCR にアクセスするには、tesseract-OCR バイナリがあるディレクトリ(おそらく C:\Program Files\Tesseract-OCR)を Path 変数に追加する必要がある場合があります。

エキスパートは、Appveyor Continuous Integration のビルドアーティファクトから Visual Studio でビルドされたバイナリを入手することもできます。

Cygwin

tesseract-ocr のリリースバージョン >= 3.02 は、Cygwin の一部として提供されています。

利用可能な最新バージョンは 4.1.0 です。告知をご覧ください。

MSYS2

tesseract-OCR をインストールします

 pacman -S mingw-w64-{i686,x86_64}-tesseract-ocr

およびデータファイル

 pacman -S mingw-w64-{i686,x86_64}-tesseract-data-eng

上記のコマンドでは、「eng」を、サポートされている言語のISO 639 3文字の言語コードに置き換えることができます。利用可能な言語パッケージのリストについては、次を使用します。

  pacman -Ss tesseract-data

その他のプラットフォーム

Tesseract は、よりエキゾチックなプラットフォームでも動作する可能性があります。自分でコンパイルしてみるか、Tesseract を使用する他のプロジェクトのリストをご覧ください。

Tesseract の実行

Tesseract はコマンドラインプログラムであるため、まずターミナルまたはコマンドプロンプトを開きます。コマンドは次のように使用されます。

  tesseract imagename outputbase [-l lang] [-psm pagesegmode] [configfile...]

したがって、「myscan.png」という画像に対して OCR を実行し、結果を「out.txt」に保存する基本的な使用方法は次のようになります。

  tesseract myscan.png out

または、ドイツ語で同じことを行うには

  tesseract myscan.png out -l deu

英語とドイツ語など、複数の言語のトレーニングデータを一度に使用することもできます。

  tesseract myscan.png out -l eng+deu

Tesseract には、各単語の座標を含む特別な HTML ファイルを生成する hOCR モードも含まれています。これは、Hocr2PDFなどのツールを使用して、検索可能な PDF を作成するために使用できます。これを使用するには、次のように「hocr」構成オプションを使用します。

  tesseract myscan.png out hocr

Tesseract から直接検索可能な PDF を作成することもできます(バージョン>=3.03)。

  tesseract myscan.png out pdf

さまざまなオプションの詳細については、Tesseract マニュアルページにあります。

その他の言語

Tesseract は多くの言語でトレーニングされています。ご自身の言語がTessdata リポジトリにあるか確認してください。

他の言語やスクリプトをサポートするようにトレーニングすることもできます。詳細については、TrainingTesseractを参照してください。

開発

Tesseract は、Apache License 2.0 の条件の下で、独自のプロジェクトで使用することもできます。完全に機能する API を備えており、Android や iPhone を含むさまざまなターゲット向けにコンパイルできます。これを使用して何が行われたかのサンプルについては、サードパーティページを参照してください。Mac 向けに開発されているサードパーティの Tesseract OCR プロジェクトはまだ非常に少ないことに注意してください(唯一のものは Tesseract macOS.md です)が、Tesseract を OCR エンジンとして使用している可能性のある Mac で使用できるオンライン OCR サービスはいくつかあります。

また、これはフリーソフトウェアであるため、参加して支援したい場合は、ぜひご協力ください。バグを見つけて自分で修正した場合、最良の方法は、Issue List のバグレポートにパッチを添付することです。

サポート

まず、ドキュメント、特にFAQを読んで、問題がそこで解決されているかどうかを確認してください。そうでない場合は、Tesseract ユーザーフォーラムまたはTesseract 開発者フォーラムを検索し、それでも必要なものが見つからない場合は、そこで質問してください。