注:都是基于黑白像素而言,无论是彩色图像还是二值化图像。膨胀是趋于白色的区域膨胀;腐蚀是基于白色区域腐蚀



腐蚀
def erode_funciton(image): #腐蚀
print(image.shape)
gray = cv.cvtColor(image,cv.COLOR_BGR2GRAY)
ret, binary = cv.threshold(gray,0,255,cv.THRESH_BINARY_INV | cv.THRESH_OTSU)
cv.imshow("binary",binary)
'''
cv.getStructuringElement:结构元素(shape有许多种图形,按需使用)
shape = cv.MORPH_RECT:矩形
shape =cv.MORPH_ELLIPSE:圆形
ksize = (3,3):结构元素大小
'''
kernel = cv.getStructuringElement(cv.MORPH_RECT,(3,3))
dst = cv.erode(binary,kernel)
cv.imshow("erode_demo",dst)


膨胀
def dilate_funciton(image): #膨胀
print(image.shape)
gray = cv.cvtColor(image,cv.COLOR_BGR2GRAY)
ret, binary = cv.threshold(gray,0,255,cv.THRESH_BINARY_INV | cv.THRESH_OTSU)
cv.imshow("binary",binary)
'''
cv.getStructuringElement:结构元素
shape = cv.MORPH_RECT:矩形
ksize = (3,3):结构元素大小
'''
kernel = cv.getStructuringElement(cv.MORPH_RECT,(5,5))
dst = cv.dilate(binary,kernel)
cv.imshow("erode_demo",dst)

网友评论