python初心者です。
・実行したいこと
複数ページのtiffファイルを、OCRで全ページ文字認識し、テキストファイルへ書き出しをしたいです。
・問題点
image_to_string()関数を呼び出し、OCR実行させましたが、1ページ目の画像しかテキストファイルへ書き出しができません。
・ご教示いただきたいこと
どこに問題があるのか分からず解決ができません。
問題点・解決方法をご教示いただけますでしょうか。
ページ数を確認することはできるのですが、ページを繰り返し処理をする方法がわかりません。
fLength =img_org.n_frames
print(fLength)#ページ数は確認できる
また、image_to_string()の引数の設定で工夫できるのかと調べてみたのですが、TextBuilder()でpagemodeの番号を変更しても解決ができません。
result = tool.image_to_string(img_org, lang="jpn", builder=builder)
お手数をおかけしますが、どうぞよろしくお願いいたします。
該当のソースコード
import os
from PIL import Image
import pyocr
import pyocr.builders
from pathlib import Path
os.chdir(ファイルパス)
--- 1.インストール済みのTesseractのパスを通す---
path_tesseract = "C:\Program Files\Tesseract-OCR"
if path_tesseract not in os.environ["PATH"].split(os.pathsep):
os.environ["PATH"] += os.pathsep + path_tesseract
--- 2.OCRエンジンの取得---
tools = pyocr.get_available_tools()
tool = tools[0]
--- 3.原稿画像の読み込み---
img_org = Image.open(".\gazou.tiff")
---ページ数を求める---
fLength =img_org.n_frames
print(fLength)
--- 4.OCR実行---
builder = pyocr.builders.TextBuilder()
result = tool.image_to_string(img_org, lang="jpn", builder=builder)
print(result)
txtph = Path(".\gazo_to_text.txt")
with txtph.open(mode="w") as f:
f.write(result)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/16 12:28