スポンサーリンク

【PyOCR】PythonでTesseractを使ったOCR(文字認識)する手順

【PyOCR】PythonでTesseractを使ったOCR(文字認識)する手順

 

★悩み★
・OCR(文字認識)ソフトであるTesseractをPython経由で使えるの?
・Pythonの「PyOCR」ライブラリでTesseractを使えるって本当?
・Python(PyOCR)でTesseractを使ったOCR(文字認識)する手順を知りたい。



こういった「悩み」に答えます。
 

★本記事の内容★
➀ Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備を紹介
➁ PythonのPyOCRでTesseractを使ったOCR(文字認識)する手順を紹介



これからご紹介する「【PyOCR】PythonでTesseractを使ったOCR(文字認識)する手順」を実践したことで、筆者は20分以内でPythonからTesseractを使ったOCR(文字認識)をできました。

記事の前半では「Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備」をコマンドベースで紹介します。記事の後半では「PythonのPyOCRでTesseractを使ったOCR(文字認識)する手順」を紹介します。

この記事を読み終えることで、「PythonでTesseractを使ったOCR(文字認識)」を実現できます。
 

★Tesseractとは★
Tesseractは、Google社が開発しているオープンソースの光学式文字認識ソフトウェアです。Tesseractのライセンスは、Apache License 2.0(2021年10月11日時点)であるため、「無料で画像内の文字抽出」ができます。

参照:Tesseractとは(Wiki)


 

Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備

Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備


「Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備」に関してご紹介します。

★Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備★
手順1:OCR(文字認識)ソフトであるTesseractをインストール
手順2:Pythonをインストール
手順3:Pythonの「PyOCR」ライブラリをインストール
手順4:Tesseractで日本語を文字認識(OCR)するためのセットアップ
手順5:Tesseractで文字認識したい画像をダウンロード



上記の流れで、「Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備」ができます。
 

上記の各手順は、以下の日時と環境で動作確認済みです。
Tesseractのバージョン:4.1.1-rc2-20-g01fb
動作確認済み日時:2021年10月7日
動作確認済み環境:CentOS Linux release 7.7.1908 (Core)



以降で、上記「Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備」の各手順に関してご説明します。
 

手順1:OCR(文字認識)ソフトであるTesseractをインストール

「手順1:OCR(文字認識)ソフトであるTesseractをインストール」に関して解説します。
 

Pythonで画像をOCR(文字認識)するために、OCR(文字認識)ソフトウェアであるTesseractをインストールしましょう。



「Tesseractのインストール手順」に関しては、以下の記事をご覧ください。
 


 

既にTesseractをインストールされている方は、本手順を省略してください。



以上で、「手順1:OCR(文字認識)ソフトであるTesseractをインストール」は完了です。
 

手順2:Pythonをインストール【PyOCRの利用に必要】

「手順2:Pythonをインストール」に関してご説明します。
 

PyOCRライブラリをインストールするためにもPythonをインストールしましょう。



「Pythonのインストール手順」に関しては、以下の記事をご覧ください。
 


 

既にPythonをインストールされている方は、本手順を省略してください。



以上で、「手順2:Pythonをインストール」は完了です。
 

手順3:Pythonの「PyOCR」ライブラリをインストール

「手順3:Pythonの「PyOCR」ライブラリをインストール」に関してご説明します。
 

PythonでTesseractを使うために、PyOCRライブラリをインストールしましょう。



Pythonの「PyOCR」ライブラリをインストールするために、「端末」または「コマンドプロンプト」を起動し、以下のコマンドを順に実行しましょう。

# pip install pyocr
# pip list | grep pyocr
pyocr (0.8)
# pip install wheel
# pip list | grep wheel
wheel (0.37.0)
# 



コマンンド実行後、「pyocr(バージョン)」と「wheel (バージョン)」が表示された場合、「正常にPyOCRライブラリをインストールできた」と判断できます。

以上で、「手順3:Pythonの「PyOCR」ライブラリをインストール」は完了です。
 

手順4:Tesseractで日本語を文字認識(OCR)するためのセットアップ

「手順4:Tesseractで日本語を文字認識(OCR)するためのセットアップ」に関して解説します。
 

PythonのPyOCRで日本語を文字認識(OCR)したい場合、Tesseractで日本語を文字認識(OCR)するためのセットアップが必要です。



「Tesseractで日本語を文字認識(OCR)するためのセットアップ手順」に関しては、以下の記事をご覧ください。
 


 

PythonのPyOCRで日本語を文字認識(OCR)する必要性がない方は、本手順を省略してください。



以上で、「手順4:Tesseractで日本語を文字認識(OCR)するためのセットアップ」は完了です。
 

手順5:Tesseractで文字認識したい画像をダウンロード

「手順5:Tesseractで文字認識したい画像をダウンロード」に関して解説します。
 

PythonでTesseractを使ったOCR(文字認識)をしたい画像をダウンロードしましょう。



以降では、下の画像を用いた手順などを解説します。
 

手順5:Tesseractで文字認識したい画像をダウンロード



以上で、「手順5:Tesseractで文字認識したい画像をダウンロード」は完了です。
 

上記の流れで、Python(PyOCR)でTesseractを使ったOCR(文字認識)するための準備ができました。


 

PythonのPyOCRでTesseractを使ったOCR(文字認識)する手順

PythonのPyOCRでTesseractを使ったOCR(文字認識)する手順


「PythonのPyOCRでTesseractを使ったOCR(文字認識)する手順」に関してご紹介します。

★PythonのPyOCRでTesseractを使ったOCR(文字認識)する流れ★
手順1:PythonのPyOCRでTesseractを使ったOCRプログラムを作成
手順2:「PythonのPyOCRでTesseractを使ったOCRプログラム」の動作確認



上記の流れで、「PythonのPyOCRでTesseractを使ったOCR(文字認識)」できます。
 

上記の各手順は、以下の日時と環境で動作確認済みです。
Tesseractのバージョン:4.1.1-rc2-20-g01fb
動作確認済み日時:2021年10月7日
動作確認済み環境:CentOS Linux release 7.7.1908 (Core)



以降で、上記「PythonのPyOCRでTesseractを使ったOCR(文字認識)する流れ」の各手順に関してご説明します。
 

手順1:PythonのPyOCRでTesseractを使ったOCRプログラムを作成

「手順1:PythonのPyOCRでTesseractを使ったOCRプログラムを作成」に関して解説します。
 

「PythonのPyOCRでTesseractを使ったOCRプログラム」を作成しましょう。



「PythonのPyOCRでTesseractを使ったOCRプログラム」は、以下となります。プログラム中の「適宜変更」と書いてある部分は、自分用に書き換えてください。

import os
from PIL import Image
import pyocr
 
# pyocrが利用するOCRエンジンをTesseractに設定
tools = pyocr.get_available_tools()
tool = tools[0]
 
# OCR(文字認識)させた画像ファイルを読み込み
ocr_image_file_path = "<OCR(文字認識)させたい画像のファイルPath(適宜変更)>"
img = Image.open(ocr_image_file_path)
 
# OCR(文字認識)の実施
builder = pyocr.builders.TextBuilder(tesseract_layout=6)
text = tool.image_to_string(img, lang="eng", builder=builder)

# ↓↓ 日本語が記載された画像をOCR(文字認識)したい場合は、以下のコメントを外す ↓↓
#text = tool.image_to_string(img, lang="jpn", builder=builder)
 
print(text)



上記のプログラムを「python-pyocr-tesseract.py」というファイル名で保存しましょう。
 

以上で、「手順1:PythonのPyOCRでTesseractを使ったOCRプログラムを作成」は完了です。
  

手順2:「PythonのPyOCRでTesseractを使ったOCRプログラム」の動作確認

「手順2:「PythonのPyOCRでTesseractを使ったOCRプログラム」の動作確認」に関してご説明します。
 

Pythonで作成した「PyOCRでTesseractを使ったOCR」プログラムの動作を確認しましょう。



Pythonで作成した「PyOCRでTesseractを使ったOCR」プログラムの動作を確認するために、以下のコマンドを実行してください。

# python python-pyocr-tesseract.py
The Apache™ Hadoop® project develops open-source software for reliable, scalable, distributed computing.

The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of
computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each
offering local computation and storage. Rather than rely on hardware to deliver high-availability, the library itself is designed to detect
and handle failures at the application layer, so delivering a highly-available service on top of a cluster of computers, each of which
may be prone to failures.



コマンド実行後、「OCR(文字認識)した結果」が表示された場合、「正常にPythonのPyOCRでTesseractを使ったOCR(文字認識)ができた」と判断できます。
 


正解データと突き合わせたところ、間違いなく英数字の文字認識(OCR)ができていました。
 

以上で、「手順2:「PythonのPyOCRでTesseractを使ったOCRプログラム」の動作確認」は完了です。
 

上記の流れで、PythonのPyOCRでTesseractを使ったOCR(文字認識)ができました。


 

【まとめ】PythonでTesseractを使ったOCR(文字認識)する手順【PyOCR】

【まとめ】Tesseractで英数字を文字認識(OCR)する手順【PyOCR】


今回の記事を通して、「【PyOCR】PythonでTesseractを使ったOCR(文字認識)する手順」をご紹介することで、以下の悩みを解消しました。
 

★悩み★
・OCR(文字認識)ソフトであるTesseractをPython経由で使えるの?
・Pythonの「PyOCR」ライブラリでTesseractを使えるって本当?
・Python(PyOCR)でTesseractを使ったOCR(文字認識)する手順を知りたい。



「PythonでTesseractを使った文字認識(OCR)する手順」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。

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