例子:待處理影象
目標:取出電路圖,消除標註
#plt.imshow(s,'gray'), plt.title('電路原圖')
#構造開運算結構元素
struct_1 = np.zeros((15,15),np.uint8)
struct_2 =struct_1.copy()
struct_1[7,...] = 1struct_2[...,7] = 1struct_3 = np.identity(9,np.uint8)
struct_4 =np.fliplr(struct_3)
s_5 = np.identity(3,np.uint8)
s_6 =np.fliplr(s_5)
#水平方向腐蝕、膨脹
row = cv2.erode(s,struct_1,iterations = 1)
row = cv2.dilate(row,struct_1,iterations = 1)
#豎直方向腐蝕、膨脹
col = cv2.erode(s,struct_2,iterations = 1)
col = cv2.dilate(col,struct_2,iterations = 1)
#右斜方向腐蝕、膨脹
right = cv2.erode(s,struct_3,iterations = 1)
right = cv2.dilate(right,s_5,iterations = 1)
#左斜方向腐蝕、膨脹
left = cv2.erode(s,struct_4,iterations = 1)
left = cv2.dilate(left,s_6,iterations = 1)
img_out = row + col + 2*right + 2*left
plt.imshow(img_out,
'gray
'), plt.title('
腐蝕圖'
)cv2.imwrite(
'out.bmp
',img_out)
結果:
二值形態學 膨脹,腐蝕
最近在做乙個motion detection的課題,在課題中提取的運動物體往往由離散的點組成,如果要用連通分量的計算方法提取每個運動物體的輪廓不太容易,為此要將由離散點組成的影象進行膨脹,腐蝕運算。膨脹 dilation 考慮兩幅二值影象a,b。它們的前景用黑色,背景用白色。另fa和fb表示各自前景...
二值形態學 膨脹,腐蝕
最近在做乙個motion detection的課題,在課題中提取的運動物體往往由離散的點組成,如果要用連通分量的計算方法提取每個運動物體的輪廓不太容易,為此要將由離散點組成的影象進行膨脹,腐蝕運算。膨脹 dilation 考慮兩幅二值影象a,b。它們的前景用黑色,背景用白色。另fa和fb表示各自前景...
形態學運算元 腐蝕,膨脹,開閉
本文總結了腐蝕,膨脹和開閉操作在二值影象上的應用,基於opencv給出了例項。參考 數字影象處理 第三版 岡薩雷斯 腐蝕的定義為 在二維整數空間 其中上面的定義含義是,b對a的腐蝕是乙個用z平移的b包含在a中的所有的點z的集合。腐蝕縮小或細化了二值影象中的物體。可以將腐蝕視為形態學濾波,這種操作將小...