Поиск цифр с помощью pytesseract

iCloudmta

Новичок
Пользователь
Июл 3, 2021
1
0
1
Пишу программу для определение скорости на работе машиниста определяет минимальную и максимальную скорость (на скрине отметил зеленым)
но не определяет свою скорость (отметил красным) мои догатки из за того что шрифт толстый
код - https://pastebin.com/ib9AAuA0
cкрин: https://imgur.com/a/H37j7UF
что можно сделать
Заранее спасибо
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
не определяет свою скорость (отметил красным) мои догатки из за того что шрифт толстый
Не определяет потому, что белые цифры на сером фоне.
что можно сделать
Можно сделать изображение черно-белым и подобрать границы поточнее.
Вот пример (для вашего скрина):

Python:
import cv2
import pytesseract


# Открываем изображение (https://imgur.com/a/H37j7UF)
img1 = cv2.imread('1.png')

# координаты фрагмента со значением скорости
x1 = 1745
x2 = 1800
y1 = 880
y2 = 930

# обрезка
cropped_image = img1[y1:y2, x1:x2]

# Увеличение изображения в 9 раз
resized_image = cv2.resize(cropped_image, None, fx=9, fy=9)

# трансформация изображения в оттенки серого
grayImage = cv2.cvtColor(resized_image, cv2.COLOR_BGR2GRAY)

# трасформация изображения в чернобелое
(thresh, blackAndWhiteImage) = cv2.threshold(grayImage, 215, 255, cv2.THRESH_BINARY)

# Распознавание, допустимы только цифры
speed1 = pytesseract.image_to_string(blackAndWhiteImage, config='outputbase digits')
print(speed1) # 56
 

Форум IT Специалистов