腐蚀
内核在图像中华东,原始图像中的一个像素(1或0)只有在内核下的所有像素都是1时才会被认为是1,否则就会变为0.
所以边界因为都不是1,所以都会变成0
import cv2 as cv
import numpy as np
img = cv.imread('j.png',0)
kernel = np.ones((5,5),np.uint8)
erosion = cv.erode(img,kernel,iterations = 1)
扩张
与腐蚀的作用相反
dilation = cv.dilate(img,kernel,iterations = 1)
开放
开放是腐蚀的另外一个称呼
opening = cv.morphologyEx(img, cv.MORPH_OPEN, kernel)
关闭
关闭与开放作用相反
closing = cv.morphologyEx(img, cv.MORPH_CLOSE, kernel)
形态学梯度
gradient = cv.morphologyEx(img, cv.MORPH_GRADIENT, kernel)
高帽
tophat = cv.morphologyEx(img, cv.MORPH_TOPHAT, kernel)
黑帽
blackhat = cv.morphologyEx(img, cv.MORPH_BLACKHAT, kernel)
参考文献:
https://blog.csdn.net/qq_41905045/article/details/81335275
https://docs.opencv.org/3.4.3/d9/d61/tutorial_py_morphological_ops.html