PythonでOCR! - Tesseract OCR
簡単なOCRの実装です。Colabでやります。以下参考サイトです。
必要なものをインストールします。
!apt install tesseract-ocr
!apt install libtesseract-dev
!pip install pyocr
!sudo apt-get install tesseract-ocr-jpn
OCRエンジンのTesseract-OCRを使います。ちなみにバージョンは
tesseract 4.0.0-beta.1
leptonica-1.75.3
libgif 5.1.4 : libjpeg 8d (libjpeg-turbo 1.5.2) : libpng 1.6.34 : libtiff 4.0.9 : zlib 1.2.11 : libwebp 0.6.1 : libopenjp2 2.3.0
Found AVX2
Found AVX
Found SSE
Tesseract OCR」はGoogle、HPが開発したオープンソースOCRエンジン。
検証もされています。
ライブラリlibtesseract-devとPythonのラッパーpyocrを使います。pyocrについては以下サイト。
OCRが使用可能かをチェックして、そのツール名を表示します。
tools = pyocr.get_available_tools()
if len(tools) == 0:
print("OCR tool is not found")
sys.exit(1) #OCRツール名を表示
tool = tools[0]
print("OCR tool is '%s'" % (tool.get_name()))
ライブラリのインストール、モジュールのインポートが成功していれば、
「OCR tool is 'Tesseract (sh)'」と表示されます。
使える言語を確認します。
langs = tool.get_available_languages()
print("Available languages: %s" % ", ".join(langs))
lang = langs[0]
print("Will use lang '%s'" % (lang))
コンソール出力は
Available languages: osd, jpn, eng
Will use lang 'osd'
"jpn"と出ているので日本語が使えるようになっています。
画像はドラック&ドロップでColabに保存できます(Colabのファイルアップロード機能でもコードの実行でもできます)。確認してみると、
%matplotlib inline
import cv2
import matplotlib.pyplot as plt
from pylab import rcParams
img = cv2.imread("ocrTest2.png")
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.figure(figsize=(15,15))
plt.axis("off")
plt.imshow(img)
これをOCRします。
txt = tool.image_to_string(
Image.open("ocrTest2.png"),lang="jpn",builder=pyocr.builders.TextBuilder(tesseract_layout=6))
print( txt )
驚くほど薄くて軽いMacBook Airが、かつてないほどパワフルに進化しました。
あざやかなRetinaディスプレイ。 新しいMagic Keyboard。 Touch ID。
最大2倍のパフォーマンスを発揮するプロセッサ1。 より高速なグラフィックス。
2倍のストレージスペース。これまでのMacの中で最も環境に優しく、その洗練
されたウェッジ型のボディは100パーセント再生アルミニウムで作られて います2。
みんなに最も愛されているMacは、一日中使えるバッテリーも搭載。
好きな場所で好きなことを好きなだけできる完璧なノートブックです。
こんな感じで読み取れます。読み取り精度に問題なさそうです。
OCRについてのコードは検索すればたくさん出てきます。Colabでするとすごく簡単に試すことができますね。
この記事が気に入ったらサポートをしてみませんか?