目錄:
(一)膨脹
(二)腐蝕
(三)腐蝕**(erode)
(四)膨脹**(dilate)
(一)膨脹(或)
(二)腐蝕(與)
(三)腐蝕**(erode)
1def erode_demo(image): #腐蝕2
(image.shape)
3 gray =cv.cvtcolor(image,cv.color_bgr2gray)
4 ret,binary = cv.threshold(gray,0,255,cv.thresh_binary_inv|cv.thresh_otsu)
5 cv.imshow("
binary
",binary)
6 kernel = cv.getstructuringelement(cv.morph_rect,(3,3)) #
可以修改卷積核大小來增加腐蝕效果,越大腐蝕越強
7 dst =cv.erode(binary,kernel)
8 cv.imshow("
erode_demo
",dst)
910 src = cv.imread("
./5.png
") #
讀取11 cv.namedwindow("
input image
",cv.window_autosize) #
建立gui視窗,形式為自適應
12 cv.imshow("
input image
",src) #
通過名字將影象和視窗聯絡
1314
erode_demo(src)
1516 cv.waitkey(0) #
等待使用者操作,裡面等待引數是毫秒,我們填寫0,代表是永遠,等待使用者操作
17 cv.destroyallwindows() #
銷毀所有視窗
(四)膨脹**(dilate)
1import
cv2 as cv
2import
numpy as np34
def dilate_demo(image): #膨脹5
(image.shape)
6 gray =cv.cvtcolor(image,cv.color_bgr2gray)
7 ret,binary = cv.threshold(gray,0,255,cv.thresh_binary_inv|cv.thresh_otsu)
8 cv.imshow("
binary
",binary)
9 kernel = cv.getstructuringelement(cv.morph_rect,(5,5))
10 dst =cv.dilate(binary,kernel)
11 cv.imshow("
dilate_demo
",dst)
1213 src = cv.imread("
./5.png
") #
讀取14 cv.namedwindow("
input image
",cv.window_autosize) #
建立gui視窗,形式為自適應
15 cv.imshow("
input image
",src) #
通過名字將影象和視窗聯絡
1617
dilate_demo(src)
1819 cv.waitkey(0) #
等待使用者操作,裡面等待引數是毫秒,我們填寫0,代表是永遠,等待使用者操作
20 cv.destroyallwindows() #
銷毀所有視窗
參考:
腐蝕與膨脹
小結 也就是說無論腐蝕還是膨脹,都是把結構元素b像卷積操作那樣,在影象上平移,結構元素b中的原點就相當於卷積核的核中心,結果也是儲存在核中心對應位置的元素上。只不過腐蝕是b被完全包含在其所覆蓋的區域,膨脹時b與其所覆蓋的區域有交集即可。灰度形態學 在講述灰度值形態學之前,我們進行乙個約定,即將結構元...
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...