本章讲了几种形态学操作
首先卷积核滑动,如果对应的原图像所有像素都是1,中心元素就保持,否则为0
随着卷积核的靠近前景的所有像素都会被腐蚀-变0.
我们可以去除白噪声,也可以断开两个连在一起的物体
import cv2
import numpy as np
img=cv2.imread(‘black.png‘,0)
kernel=np.ones((5,5),np.uint8)#定义一个卷积核以及图像类型
erosion=cv2.erode(img,kernel,iterations=1)
cv2.imshow(‘sdss‘,img)
cv2.imshow(‘sds‘,erosion)
cv2.waitKey(0)
可以连接物体
import cv2
import numpy as np
img=cv2.imread(‘connection.jpg‘,0)
kernel=np.ones((7,7),np.uint8)
erosion=cv2.erode(img,kernel,iterations=1)
dilate=cv2.dilate(img,kernel,iterations=1)
cv2.imshow(‘sdss‘,img)
cv2.imshow(‘sdsa‘,dilate)
cv2.waitKey(0)
对图像进行腐蚀再膨胀就叫开运算
同样也用于去噪声
就是先膨胀再腐蚀
一般用来填充前景物体中的小洞
就是衣服图像膨胀和腐蚀的差别
看上去想轮廓而已
morphologyEx(img,cv2.MORPH_GRADIENT,kernel)
是图像与开运算后的差,可以获取背景噪声
参数cv2.MORPH_TOPHAT
是图像与闭运算后的差,获取前景噪声
参数cv2.MORPH_BLACKHAT
原文:https://www.cnblogs.com/DJC-BLOG/p/9126979.html