4

Pythonでtesseractを実行しようとしていますが、これは私のコードです:

import cv2
import os
import numpy as np
import matplotlib.pyplot as plt
import pytesseract
import Image
# def main():
jpgCounter = 0
    for root, dirs, files in os.walk('/home/manel/Desktop/fotografias etiquetas'):
    for file in files:
        if file.endswith('.jpg'):
        jpgCounter += 1

for i in range(1, 2):

    name                = str(i) + ".jpg"
    nameBW              = str(i) + "_bw.jpg"
    img                 = cv2.imread(name,0) #zero -> abre em grayscale
    # img                 = cv2.equalizeHist(img)
    kernel = np.array([[0,-1,0], [-1,5,-1], [0,-1,0]])
    img = cv2.filter2D(img, -1, kernel)
    cv2.normalize(img,img,0,255,cv2.NORM_MINMAX)
    med                 = np.median(img)



    retval, threshold_manual    = cv2.threshold(img, med*0.6, 255, cv2.THRESH_BINARY)
    cv2.adaptiveThreshold(img,255,cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY,11,2)
    print(pytesseract.image_to_string(threshold_manual, lang='eng', config='-psm 11', nice=0, output_type=Output.STRING))

エラーが発生するのは次のとおりです。

NameError: name 'Output' が定義されていません

なぜこれを取得しているのか分かりますか?ありがとう!

4

2 に答える 2

5

問題は、元の pytesseract パッケージ(pip を使用してダウンロード) をインストールし、 madmaze GitHub バージョンのドキュメントを参照していることですが、実際には両方が異なります。

次の手順に従って、現在のバージョンをアンインストールし、GitHub リポジトリを複製して同じものをインストールすることをお勧めします。

  1. 現在のバージョンをアンインストールします。

    pip uninstall pytesseract

  2. git を使用してmadmaze/pytesseract GitHub リポジトリのクローンを作成します。

    git clone https://github.com/madmaze/pytesseract.git

    または、ここをクリックして直接ダウンロードしてください

  3. 複製されたリポジトリのルート ディレクトリに移動し、次を実行します。

    pip install .

于 2018-01-20T15:14:39.157 に答える