pythonを勉強しているものです。
tesseractで文字認識をしようとしたところ今投稿している環境のみでlist out のエラーが起きます。
他のパソコンでは起きず、修正ができないので質問させてもらいます。
何回もtesseractを導入しなおしたりもしたんですが・・・
# ocr_card_filter.py import os from PIL import Image import pyocr import pyocr.builders # インストール済みのTesseractのパスを通す path_tesseract = "C:\Program Files (x86)\Tesseract-OCR" if path_tesseract not in os.environ["PATH"].split(os.pathsep): os.environ["PATH"] += path_tesseract # OCRエンジンの取得 tools = pyocr.get_available_tools() tool = tools[0] # 原稿画像の読み込み img_org = Image.open("./card_image/zairyucard_omote.jpg") img_rgb = img_org.convert("RGB") pixels = img_rgb.load() # 原稿画像加工(黒っぽい色以外は白=255,255,255にする) c_max = 169 for j in range(img_rgb.size[1]): for i in range(img_rgb.size[0]): if (pixels[i, j][0] > c_max or pixels[i, j][1] > c_max or pixels[i, j][0] > c_max): pixels[i, j] = (255, 255, 255) # OCR実行 builder = pyocr.builders.TextBuilder() result = tool.image_to_string(img_rgb, lang="jpn", builder=builder) print(result)
Traceback (most recent call last): File "F:\python\文字2.py", line 16, in <module> tool = tools[0] IndexError: list index out of range
環境はwin10 64bit python3.7.5
回答1件
あなたの回答
tips
プレビュー