Я попытался использовать морфологическое истончение, и на выходе есть некоторый шум.Я использую Python.Первое изображение является исходным изображением.
Исходное изображение
Это код, который я пробовал для прореживания (частично взят из OpenCV Python Tutorials ):
from skimage import morphology
import cv2
import numpy as np
img = cv2.imread('m.png',0);
size = np.size(img)
skel = np.zeros(img.shape, np.uint8)
ret, img = cv2.threshold(img, 220, 255, cv2.THRESH_BINARY_INV);
element = cv2.getStructuringElement(cv2.MORPH_CROSS, (3, 3))
done = False
while (not done):
eroded = cv2.erode(img, element)
temp = cv2.dilate(eroded, element)
temp = cv2.subtract(img, temp)
skel = cv2.bitwise_or(skel, temp)
img = eroded.copy()
zeros = size - cv2.countNonZero(img)
if zeros == size:
done = True
'cleaned = morphology.remove_small_objects(skel, min_size=64, connectivity=2) I tried to use this function to remove the noise but it gave the same output'
Это выходное изображение.
Вывод
Это то, что я получил, когда я изменил структурирующий элемент на:
element = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3))
MORPH_RECT
Желаемый результат - получить прореженное изображение без помех.Может кто-нибудь, пожалуйста, помогите мне удалить эти маленькие точки (шум)?
Желаемый вывод