Pythonで最新バージョンのtesseract 4.0のみを呼び出す番号を取得しようとした人はいますか?
以下は3.05で機能しましたが、4.0でも文字を返します。数字ファイルを除くすべての構成ファイルを削除しようとしましたが、それでも機能しませんでした。どんな助けも素晴らしいでしょう:
imは日付、黒いテキスト、白い背景の画像です。
import pytesseract
im = imageOfDate
im = pytesseract.image_to_string(im, config='outputbase digits')
print(im)
tessedit_char_whitelist
としてconfig option
。
ocr_result = pytesseract.image_to_string(image, lang='eng', boxes=False, \
config='--psm 10 --oem 3 -c tessedit_char_whitelist=0123456789')
この助けを願っています。
Pytesseractでtessedit_char_whitelistフラグを使用してもうまくいきませんでした。ただし、回避策の1つは、機能するフラグを使用することです。これはconfig = 'digits'です。
import pytesseract
text = pytesseract.image_to_string(pixels, config='digits')
ここで、pixelsは画像の数の多い配列です(PIL画像も機能するはずです)。これにより、pytesseractは数字のみを返すようになります。ここで、それが返すものをカスタマイズするために、桁構成ファイルを見つけます。
C:\ Program Files(x86)\ Tesseract-OCR\tessdata\configs
数字ファイルを開き、必要な文字を追加します。 pytesseractを保存して実行すると、カスタマイズされた文字のみが返されます。
このGitHubの問題 で確認できるように、ブラックリストとホワイトリストはtesseractバージョン4.0では機能しません。
このブログ記事 で説明したように、この問題には3つの解決策があります。
単純な正規表現を使用してすべての数値を抽出するpython関数を作成します。
def replace_chars(text):
list_of_numbers = re.findall(r'\d+', text)
result_number = ''.join(list_of_numbers)
return result_number
result_number = pytesseract.image_to_string(im)