opencv濾波 腐蝕 膨脹操作

2021-09-26 13:50:16 字數 1310 閱讀 2269

1、均值濾波(簡單的平均卷積操作):

blur = cv2.blur(img,(3,3))   # (3,3)為卷積核大小

2、方框濾波(基本和均值濾波一樣,可以選擇歸一化):

box = cv2.boxfilter(img,-1,(3,3),normolize=true)   # normolize=true表示卷積操作後除以9,也就是歸一化

3、高斯濾波:

gussian = cv2.gaussianblur(img,(5,5),1)

高斯核(離得近的畫素點更重要、權重更大):

[0.6, 0.8, 0.6]

[0.8, 1.0, 0.8]

[0.6, 0.8, 0.6]

高斯影象:

4、中值濾波(去燥):

median = cv2.medianblur(img,5)

3*3的9個畫素排序,取最中間的畫素作為當前畫素值

5、展示所有影象:

res = np.hstack((blur,gussian,median)) #三個影象合併,vstack為豎直合併

cv2.imshow('res',res)

6、腐蝕操作(變瘦):

cv2.erode(img,kernel,iterations=1)

kernel決定腐蝕大小程度,iterations決定腐蝕操作迭代次數

7、膨脹操作(和腐蝕操作互為逆運算)

cv2.dilate(img,kernel,iterations=1)

8、開運算/閉運算:

開運算(先腐蝕、後膨脹):cv2.morphplogyex(img,cv2.morph_open,kernel)

閉運算(先膨脹、後腐蝕):cv2.morphplogyex(img,cv2.morph_close,kernel)

9、梯度運算(梯度 = 膨脹 - 腐蝕):

cv2.morphplogyex(img,cv2.morph_gradient,kernel)

10、禮帽和黑帽:

禮帽 = 原始輸入 - 開運算結果:cv2.morphplogyex(img,cv2.morph_tophoat,kernel)

黑帽 = 閉運算 - 原始輸入:cv2.morphplogyex(img,cv2.morph_blackhat,kernel)

Opencv 膨脹與腐蝕

簡而言之 一組基於形狀處理影象的操作。形態操作將結構元素應用於輸入影象並生成輸出影象。最基本的形態作用是 侵蝕和擴張。它們有廣泛的用途,即 消除噪音 隔離單個元素並連線影象中的不同元素。查詢影象中的強度凸點或孔 我們將簡要解釋膨脹和侵蝕,使用以下影象作為示例 該操作包括將影象與某些核心 b 進行卷積...

OpenCV 膨脹與腐蝕

include include include using namespace cv using namespace std int element size 3 int max size 21 mat src,dst void callback demo int,void int main int...

Open Cv 膨脹與腐蝕

影象形態學1 膨脹 dilate 與腐蝕 是灰度與二值影象處理中的重要手段 數學集合論和拓撲集合的基礎上發展起來 膨脹 dilate 與腐蝕 erode 最值濾波 3 3模板?膨脹 3 3模板中的最大值替換中心畫素 腐蝕 3 3模板中的最小值替換中心畫素 膨脹的作用 物件大小增加乙個畫素 3x3 平...