Есть хорошие методы для удаления строк? - PullRequest
1 голос
/ 15 января 2020

background

object image

Я хочу устранить серые линии в 16-битном изображении, которое вы можете видеть.

Конечная цель - удалить строку в изображении объекта (второе изображение) с фоновым изображением (первое изображение).

Я думал, что нужно БПФ, но я не знаю, как применялось БПФ. Будут и другие способы.

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

1 Ответ

0 голосов
/ 15 января 2020

Одним простым способом использования Python / OpenCV является многократное использование морфологии закрытия с небольшим вертикальным прямоугольником angular ядро.

Ввод:

enter image description here

import cv2
import numpy as np

img = cv2.imread('lines.png')

# do morphology multiple times to remove horizontal lines
kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (1,5))
result = cv2.morphologyEx(img, cv2.MORPH_CLOSE, kernel, iterations = 9)

# write result to disk
cv2.imwrite("lines_removed.png", result)

# display it
cv2.imshow("result", result)
cv2.waitKey(0)


enter image description here

Тем не менее, изображение повсюду будет слегка изменено

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