Как уточнить изображение с грубыми горизонтальными линиями, используя OpenCV? - PullRequest
1 голос
/ 22 мая 2019

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

enter image description here

Используя технику сглаживания, такую ​​как Gaussian Blur, я не смог получить удовлетворительный результат, так как линии все еще видны, и это только уменьшило разрешение изображения.

cv::GaussianBlur(image, result, cv::Size(5, 5), 3);

enter image description here

Есть ли другой метод, который больше подходит для моей проблемы?Спасибо

1 Ответ

2 голосов
/ 22 мая 2019

Как подсказал @ gameon67, вы можете использовать размер ядра 1x15 для увеличения размытия в направлении y и пропуска в направлении x. Однако я считаю, что для этого случая средняя фильтрация лучше, чем гауссова. Подробнее о них вы можете прочитать в официальной документации .

img = cv2.blur(img,(1, 15)) # average filtering

average filtering result

img = cv2.GaussianBlur(img, (1, 15), 0) # Gaussian filtering

gaussian filtering result

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