Извлеките текст из изображения с помощью tessaract и opencvPython

Программы на Python
Anonymous
Извлеките текст из изображения с помощью tessaract и opencv

Сообщение Anonymous »

screenshot.png:
Изображение

modified_image.png:
Изображение

Я пытаюсь извлечь текст из изображения, но, похоже, я это делаю, tessaract дает мне некоторые случайные значения, хотя я думаю, что обработал изображение до очень хорошего формата. Мне нужен только белый текст, и я хочу игнорировать красный текст.

Код: Выделить всё

import cv2 as cv
import pytesseract
from PIL import Image

image = cv.imread("screenshot.png", cv.IMREAD_GRAYSCALE)

ret, modified_image = cv.threshold(image, 120, 255, cv.THRESH_BINARY_INV + cv.THRESH_OTSU)

modified_image= cv.resize(modified_image, None, fx=2, fy=2, interpolation=cv.INTER_CUBIC)

#cv.imshow("image", image)
#cv.imshow("modified_image", modified_image)
cv.imwrite("modified_image.png", modified_image)

pytesseract.pytesseract.tesseract_cmd = r'C:\Tesseract-OCR\tesseract.exe'

text = pytesseract.image_to_string(Image.open('modified_image.png'), config="--psm 6 --oem 3", lang="eng")

print(f'Text: {text}')
При этом будет неправильно напечатано «CWS-1Y» вместо «CW9-1Y». Насколько я понял, используется шрифт Shentox, но, судя по тому, что я смог найти в Интернете, обучение тессаракту на нем представляет собой сложную задачу.

Подробнее здесь: https://stackoverflow.com/questions/784 ... and-opencv

Вернуться в «Python»