こんにちは、プロクラスの堀口です。
今回は、OCR(Optical Character Recognition = 画像から文字を読み取る技術)についてブログを書きたいと思います。
それに至った経緯は、業務中chatGPTからGoogle ColabでOCRを行うことを提案されたからですが、これを実践した内容は1次情報の発信になります。
AI時代でも価値があるブログはリアル体験・実例ベースの1次情報です。
※chatGPTの回答です。
Google ColabでGeminiを使ってOCRを実践
右側のチャット欄で行いたいことを投げかけるだけで、左側でPythonのプログラムが実行されていきます。
エラーが発生してもGeminiの提案から選択するだけで解消してくれます。
しかし、5回ほどのやり取りを要して出力されたのは、以下のテキストです。tesseractを使用したとのこと。(AI(ディープラーニング)ではなく “ルール+伝統的アルゴリズム” ベースで進化してきた技術)
原文を一片も読み取れません。
今回は、サンプルとして以下のブログから画像をお借りしました。
https://blog.gururimichi.com/entry/2015/02/17/212738
chatGPTが出力したコードをGoogle Colabで実行してOCRを実践
Python
from google.colab import files
import easyocr
from PIL import Image
uploaded = files.upload()
filename = list(uploaded.keys())[0]
reader = easyocr.Reader(['ja', 'en']) # 日本語+英語
result = reader.readtext(filename, detail=0)
print("===== OCR結果 =====")
for line in result:
print(line)
easyocr(昔ながらの「ルールベースOCR」ではなく、ニューラルネットワークを使って判断する “AIタイプのOCR” に分類されます。)を使用したとのことですが、pytesseractと比較してまだ可読性があります。
結論:chatGPTの方が手書きの文章では、OCRの性能が高い
「ChatGPTのOCR(Visionモデル)は高解像度で復元しながら文脈ベースで補完できるため、単純OCRより正確です。」とのこと。
しかし、Google Colabで大量処理・自動化・機密情報・業務組込みを行う場合はchatGPTよりも優位性があるようです。
