我想我的手在openCV和python上建立一個基本的腳本從圖像中讀取文本。Python:圖像到文本
現在我對這個說File Not Found的錯誤感到困惑,問題是我無法理解這個回溯。哪個文件不在那裏?任何圖書館或其他問題。 它正在寫thresh.png和removednoise.png。
我正在使用python 3.6,如果有任何兼容性問題,請讓我知道。 如果需要更多信息,請讓我知道。
通過指向一個方向幫助我。在此先感謝
這是我的代碼。
import cv2
import numpy as np
import pytesseract
from PIL import Image
#src_path ="D:/python'/practice"
def get_string(img_path):
img = cv2.imread(img_path)
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
kernel = np.ones((1, 1), np.uint8)
img = cv2.dilate(img, kernel, iterations=1)
img = cv2.erode(img, kernel, iterations=1)
cv2.imwrite("removed_noise.png", img)
img = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 11, 2)
cv2.imwrite("thres.png", img)
result = pytesseract.image_to_string(Image.open("thres.png"))
return result
print ('------------TEXT------------')
print (get_string("imag1.png"))
錯誤消息:
D:\python'\practice>python OCR_text.py
------------TEXT------------
Traceback (most recent call last):
File "OCR_text.py", line 25, in <module>
print (get_string("imag1.png"))
File "OCR_text.py", line 18, in get_string
result = pytesseract.image_to_string(Image.open("thres.png"))
File "D:\Python\lib\site-packages\pytesseract\pytesseract.py", line 122, in image_to_string
config=config)
File "D:\Python\lib\site-packages\pytesseract\pytesseract.py", line 46, in run_tesseract
proc = subprocess.Popen(command, stderr=subprocess.PIPE)
File "D:\Python\lib\subprocess.py", line 707, in __init__
restore_signals, start_new_session)
File "D:\Python\lib\subprocess.py", line 990, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified
Tesseract已安裝,是否可以因爲我在C:ddirectory中安裝了tesseract,並且正在D:目錄 –
中運行python和pytestesseract,這只是該問題。我從C目錄卸載了Tesseract並安裝在D目錄中。多謝兄弟 –