數字示例

我正在使用標準的 pytesseract img 文本。我已經嘗試過僅使用數字選項 90% 的時間它是完美的,但上面是一個嚴重錯誤的示例!這個例子根本沒有產生任何字符
如您所見,現在有字母,因此語言選項沒有用,我確實嘗試在抓取的影像中添加一些文本,但仍然出錯。
我使用 CV2 增加了對比度,我的捕獲上游的文本已經模糊
關于提高準確性的任何想法?
uj5u.com熱心網友回復:
這是使用 OpenCV 和 Pytesseract OCR 的簡單方法。要對影像執行 OCR,對影像進行預處理很重要。這個想法是獲得一個處理過的影像,其中要提取的文本是黑色的,背景是白色的。為此,我們可以轉換為
轉換為灰度->應用銳化濾鏡

大津的門檻

Pytesseract OCR 的結果
124,685
代碼
import cv2
import numpy as np
import pytesseract
pytesseract.pytesseract.tesseract_cmd = r"C:\Program Files\Tesseract-OCR\tesseract.exe"
# Load image, grayscale, apply sharpening filter, Otsu's threshold
image = cv2.imread('1.png')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
sharpen_kernel = np.array([[-1,-1,-1], [-1,9,-1], [-1,-1,-1]])
sharpen = cv2.filter2D(gray, -1, sharpen_kernel)
thresh = cv2.threshold(sharpen, 0, 255, cv2.THRESH_BINARY_INV cv2.THRESH_OTSU)[1]
# OCR
data = pytesseract.image_to_string(thresh, lang='eng', config='--psm 6')
print(data)
cv2.imshow('sharpen', sharpen)
cv2.imshow('thresh', thresh)
cv2.waitKey()
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/435696.html
標籤:Python 图片 opencv ocr python-正方体
