Можно ли как-то прочитать цифровой номер в духовке с помощью оптического распознавания текста? - PullRequest
1 голос
/ 23 сентября 2019

Я делаю небольшой проект, используя тессеракт OCR.То, что я хочу прочитать, это цифровой номер, который генерируется печью.Я предварительно обработал изображение с помощью openCV, но tesseract не может правильно прочитать изображение.например.194 как 794 .. дайте мне знать, есть ли способ справиться с этим.спасибо.

Изображение, которое я хочу прочитать, показано ниже

https://i.imgur.com/Lt7D9G3.jpg

import cv2
import numpy

img_color = cv2.imread('20190509_103247.jpg', cv2.IMREAD_COLOR)

dst = img_color.copy()
roi = img_color[1600:1800,600:1100]
dst[0:200,0:500]=roi
blur = cv2.GaussianBlur(roi,(5,5),0)
gray_dst = cv2.cvtColor(blur, cv2.COLOR_BGR2GRAY)
ret, thr = cv2.threshold(gray_dst, 70, 255,cv2.THRESH_BINARY)
canny = cv2.Canny(roi,100,255)
sobel = cv2.Sobel(gray_dst,cv2.CV_8U,1,0,3)
laplacian = cv2.Laplacian(gray_dst,cv2.CV_8U,ksize=3)
rev = cv2.bitwise_not(canny)

# blur = cv2.GaussianBlur(roi,(5,5),0)

# stencil = numpy.zeros(rev.shape).astype(rev.dtype)
# _, contours, _ = cv2.findContours(rev, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
# color = [255, 255, 255]
# cv2.fillPoly(stencil, contours, color)
# result = cv2.bitwise_and(rev, stencil)

cv2.namedWindow('Show Image')

cv2.imshow('Show Image', rev)

cv2.waitKey(0)

cv2.imwrite('savedimage.jpg', rev)



cv2.destroyAllWindows()

1 Ответ

0 голосов
/ 23 сентября 2019

Вы можете создать обучающие данные, которые будут работать для ваших шрифтов / глифов, чтобы улучшить преобразование числового дисплея в правильные цифры.

Ссылки:

...