B3S
menu close

Python

Docker で OCR環境を構築(Tesseract + Python)


ヤス

公開日:2022/10/19


目次

はじめに

スマホで撮影した画像から数字を抽出する仕組みが必要だったので、Docker上にOCR環境を構築しました。
導入の簡単さと速度等から Tesseract + Python で構築しています。

OCR とは

OCRとは、Optical character recognition(光学文字認識)の略称です。
活字や手書きテキストの画像を文字コードの列に変換するソフトウェアです。

Tesseract とは

Google社が開発しているオープンソースの光学式文字認識ソフトウェアです。
無料で利用できるため、試しに使ってみるのに便利です。

Dockerfile を作成する

Python のライブラリである Pyocr がTesseractをOCRツールとして利用できるためDockerfile 作成時にインストールしています。

上記のDockerfile をビルドして、コンテナを作成します。

数字のみ解析するpythonファイルを作成

コンテナ内にOCR解析用の場所を作成して、Python ファイルを作成します。

実際に解析してみる

手書きの数字ファイル(digits.png)を作ってみて解析してみました。

解析ファイル

解析結果

コンテナ内で下記を実行。

・問題なく数字が読み取れました。

まとめ

Docker で OCR環境を構築する方法を説明させていただきました。
日本語の解析精度は高くないため、日本語を解析したい場合は学習を行って精度を高めていく必要がありそうです。