Byl jsem trpí po dlouhou dobu v průběhu řešení tohoto problému. Potřebuji odstranit multi-barevné kroužky a tečky v obraze, ale udržet husté tvary. Snažil jsem se použít open cv, opakoval celé pixely, ale pořád se nemůžu zbavit zbytečné z obrázku. Díky předem za radu.
0
Můžete zkusit pomocí eroze/dilatace z OpenCV. Zde je rychlý příklad, upravte parametry podle potřeby.
import cv2
import numpy as np
img = cv2.imread('img.png')
blurred_img = cv2.medianBlur(img, 5)
kernel = np.ones((3,3),np.uint8)
erosion = cv2.erode(blurred_img, kernel, iterations=1)
output = cv2.dilate(erosion, kernel, iterations=1)
cv2.imwrite('output.png', output)
Díky. vskutku, open cv pracoval dobře, ale udělal jsem to trochu jinak, změnil jsem původní obraz pomocí dilatace.
ProBuro