Python-Opencv中的膨胀和腐蚀
腐蚀和膨胀是对白色部分(高亮部分)而言的,不是黑色部分。 膨胀就是图像中的高亮部分进行膨胀,“邻域扩张”,效果图拥有比原图更大的高亮区域。腐蚀就是原图中高亮部分被腐蚀,“邻域被蚕食”,效果图拥有比原图更小的高亮区域。
1.膨胀
膨胀过程是有一个结构元素或者模板去在原图像素比对,当比对过程中,中心像素位置的值根据其八邻域取或运算,或运算为1就取自己的中心值,否则将周围的最大值去代替中心值,如下图。由于将周围的最大值去代替中心值,所膨胀的就是白色(高亮部分)。
膨胀函数
cv2.dilate(img,kernel,iterations)
其中:
第一个参数:img指需要腐蚀的图
第二个参数:kernel指腐蚀操作的内核,默认是一个简单的3X3矩阵,我们也可以利用getStructuringElement()函数指明它的形状
第三个参数:iterations指的是腐蚀次数,省略是默认为1
膨胀代码实现
import cv2 as cv
def dilate_demo(image):
gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)
ret, binary = cv.threshold(gray