currentbid.png:

Я пытаюсь определить число на этом изображении, но оно выдает буквы или неправильный номер.
Это мое изображение, я пытаюсь определить число, я пробовал массу вещей с оттенками серого и инверсией, используя тессеракт, но, кажется, ничего не работает, оно продолжает выдавать мне буквы, такие как ADA, или неправильный номер, например, если бы на изображении было написано 98,7M, это дало бы мне 19 9947 )М и я думаю, что точка испортилась, но я не могу удалить ее или изменить шрифт. Как я могу это исправить или обучить?
Вот мой текущий код:
pyautogui.screenshot("bidpossible.png", region=(900, 310, 450, 60)) #bidpossible
originalImage = cv2.imread('bidpossible.png')
grayImage = cv2.cvtColor(originalImage, cv2.COLOR_BGR2GRAY)
(_, blackAndWhiteImage) = cv2.threshold(grayImage, 127, 255, cv2.THRESH_BINARY_INV)
custom_config = r'--psm 8'
text = pytesseract.image_to_string(blackAndWhiteImage, config=custom_config)
print('Extracted Text: ', text)






как насчет использования фильтра, который попытается получить только голубой цвет, находящийся внутри границы текста?
grayImage[(grayImage<210)] = 255
grayImage[(grayImage>210) & (grayImage<230)] = 0
# test different models, imho models 6 or 7 work better
custom_config = f'--psm 7'
text = pytesseract.image_to_string(grayImage, config=custom_config)
print(f'Extracted Text: ', text) # 4.34m_
Не могли бы вы добавить к вопросу новую картинку? Дайте мне знать, если он сложнее первого.
Честно говоря, tessarect — не лучший вариант для сложных задач по распознаванию текста. Возможно, имеет смысл переключиться на нейронные сети, например, на библиотеку mocr: github.com/open-mmlab/mmocr/tree/main?tab=readme-ov-file
Спасибо, но теперь у меня также возникли проблемы с обнаружением белого текста с черным контуром на белом фоне, он выдает что-то близкое к слову. Поэтому я попробовал список слов, чтобы определить, какое слово ближе всего к нему. Это иногда работает, но ненадежно. Как я могу читать это лучше?