1. 程式人生 > >opencv-python影象孔洞填充

opencv-python影象孔洞填充

  在進行影象分割的過程中,由於演算法的不穩定或者影象質量的問題,會造成影象孔洞出現,這個時候就需要對影象中的孔洞進行填充,具體函式如下

def fillHole(im_in):
	im_floodfill = im_in.copy()

	# Mask used to flood filling.
	# Notice the size needs to be 2 pixels than the image.
	h, w = im_in.shape[:2]
	mask = np.zeros((h+2, w+2), np.uint8)

	# Floodfill from point (0, 0)
cv2.floodFill(im_floodfill, mask, (0,0), 255); # Invert floodfilled image im_floodfill_inv = cv2.bitwise_not(im_floodfill) # Combine the two images to get the foreground. im_out = im_in | im_floodfill_inv return im_out

  這裡呼叫了 opencv 庫中的泛洪函式。我們將影象輸入就可以獲得整幅影象填充後的結果。