Googleドライブを使って気軽にPythonでOCRを試してみる
気軽にPythosでOCR試せないかなぁって
思ったので実際やってみた時のメモです。
環境準備(Googleドライブ)
1.Googleドライブにログイン
2.colaboratory の追加を行う
画面左側にある[マイドライブ]を右クリックし
[その他]-[アプリを追加]をクリック。
その後、colaboratory を検索し、追加します。
3.colaboratoryを開く
画面左にある、[新規]からcolaboratoryを開く
環境準備(プラグイン追加とか)
1.下記のコマンドを実行し、Tesseract OCR と pyocr をインストールする
!opt install tesseroct-ocr libtesseract-dev tesseract-ocr-jpm
!pip install pyocr
2.画像をアップロードする
画面左側にあるファイルからOCRのターゲットとしたい画像をアップロードする
今回は下記の画像をアップロードした
簡単な漢字とミスリードしそうな漢字を試してみたかったため
この文字をチョイスしました。
コーディングしてみる
1.必要なものをimportする
下記の記載で事前に必要なものを
importする。
今回は使わなかったけどcv2もついでに。
cv2は画像を変換したい場合に使うもの。
from PIL import Image
import pyocr
import cv2
2.画像を変数にセット
下記の記載で画像を開く
img1= Image.open('文字列.png')
3.OCRモジュールにセット
下記のコマンドを実行して、ツールを設定します。
pyocr.get_available_tools を使用して
使うモジュールをセットする
今回はTesseravt(sh)を使用するよう設定。
tools = pyocr.get_available_tools()
tool = tools[0]
4.OCRで読み込んだものを文字型にして表示
下記のコマンドを記載して実行する。
tesseract_layoutは適当に「6」としてみます。
txt1 = tool.image_to_string(
img1,
lang='jpn',
builder=pyocr.builders.TextBuilder(tesseract_layout=6)
)print(txt1)
5.実行して表示内容を確認する
おしい。黄昏(たそがれ)を読ませた結果が「黄皆」。
ちょっと形が難しいとだめかぁ。。。って感じでした。
tesseract_layoutを調整してもこれが一番しっぽりしたなぁ。。。
もう少し画像を鮮明にかつ読み込めるように
コード調整すれば何とかなるかも。
参考にさせていただいたもの
●【30分で習得】PythonでOCR(光学文字認識)の実装をわかりやすく解説
いまにゅ様の動画です。すごく勉強になります。
是非グットボタンを!
@bohemian916様の記事です。
基礎が分からない私には勉強になりました。
●Pythonで書くTesseract 4の基本的な使い方。APIとCLIからOCRを実行する方法
吉池様の記載内容です。
Tesseractが無知な私でもわかりやすく記載されています。