ocr очистка изображений с помощью python opencv - PullRequest
1 голос
/ 18 июня 2020

В настоящее время я изучаю OCR компьютерного зрения. У меня есть изображение, которое нужно отсканировать. Я столкнулся с проблемой во время очистки изображения.

Я использую opencv2 в python, чтобы делать вещи. Это исходное изображение:

image = cv2.imread(image_path)
cv2.imshow("imageWindow", image)

image

I want to cleans the above image, the number at the middle (64) is the area I wanted to scan. However, the number got cleaned as well.

image[np.where((image > [0,0,105]).all(axis=2))] = [255,255,255]
cv2.imshow("imageWindow", image)

Что мне делать, чтобы поправить здесь чистку? Я хотел, чтобы экран, на котором находится номер 64, был очищен, потому что потом я выполню оптическое сканирование.

Пожалуйста, помогите, заранее спасибо.

1 Ответ

2 голосов
/ 18 июня 2020

То, что вы пытаетесь сделать, называется «пороговой обработкой». Похоже, ваша техника перекрашивает пиксели, которые опускаются ниже определенного порога, но яркость ЖК-дисплея di git на этом изображении меняется достаточно, чтобы отбросить его.

Я бы потратил некоторое время на чтение о пороговых значениях, вот хорошее начальное место: Пороговое значение в OpenCV с Python. Вам, вероятно, понадобится адаптивный метод (например, адаптивное определение порогового значения по Гауссу), но вы можете найти другие способы, которые будут работать с вашими изображениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...