J'extrait les contours d'une image, que vous pouvez voir ici: OpenCV comment lisser le contour, ce qui réduit le bruit
Cependant, il a un peu de bruit. Comment puis-je atténuer le bruit? Je l'ai fait un gros plan pour rendre plus clair ce que je veux signifiait
Image originale que je l'ai utilisé:
code:
rMaskgray = cv2.imread('redmask.jpg', cv2.CV_LOAD_IMAGE_GRAYSCALE)
(thresh, binRed) = cv2.threshold(rMaskgray, 50, 255, cv2.THRESH_BINARY)
Rcontours, hier_r = cv2.findContours(binRed,cv2.RETR_CCOMP,cv2.CHAIN_APPROX_SIMPLE)
r_areas = [cv2.contourArea(c) for c in Rcontours]
max_rarea = np.max(r_areas)
CntExternalMask = np.ones(binRed.shape[:2], dtype="uint8") * 255
for c in Rcontours:
if((cv2.contourArea(c) > max_rarea * 0.70) and (cv2.contourArea(c)< max_rarea)):
cv2.drawContours(CntExternalMask,[c],-1,0,1)
cv2.imwrite('contour1.jpg', CntExternalMask)
Pouvez-vous poster le code utilisé pour créer cette? –
@MartinEvans Modifié! – marco
Que se passe-t-il si vous remplacez cv2.CHAIN_APPROX_SIMPLE par cv2.CHAIN_APPROX_NONE? – tfv