python實現膨脹與腐蝕


目錄:

(一)膨脹

(二)腐蝕

 (三)腐蝕代碼(erode)

 (四)膨脹代碼(dilate)

 

 

 

(一)膨脹(或)

 

 (二)腐蝕(與)

 

 (三)腐蝕代碼(erode)

 1 def erode_demo(image):  #腐蝕
 2     print(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)
 9 
10 src = cv.imread("./5.png")  #讀取圖片
11 cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)    #創建GUI窗口,形式為自適應
12 cv.imshow("input image",src)    #通過名字將圖像和窗口聯系
13 
14 erode_demo(src)
15 
16 cv.waitKey(0)   #等待用戶操作,里面等待參數是毫秒,我們填寫0,代表是永遠,等待用戶操作
17 cv.destroyAllWindows()  #銷毀所有窗口

 1 kernel = cv.getStructuringElement(cv.MORPH_RECT,(5,5)) 

 (四)膨脹代碼(dilate)

 1 import cv2 as cv
 2 import numpy as np
 3 
 4 def dilate_demo(image):  #膨脹
 5     print(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)
12 
13 src = cv.imread("./5.png")  #讀取圖片
14 cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)    #創建GUI窗口,形式為自適應
15 cv.imshow("input image",src)    #通過名字將圖像和窗口聯系
16 
17 dilate_demo(src)
18 
19 cv.waitKey(0)   #等待用戶操作,里面等待參數是毫秒,我們填寫0,代表是永遠,等待用戶操作
20 cv.destroyAllWindows()  #銷毀所有窗口

 參考:

https://www.cnblogs.com/ssyfj/p/9276999.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM