OPENCV形态学
- 腐蚀(或侵蚀)
- 膨胀(或扩张)
- 开运算
- 闭运算
- 顶帽
- 黑帽
- 梯度图
- OpenCV API:CV2.morphologyEx
腐蚀
作用:
腐蚀是最基本的形态学操作之一,它能够将图像的边界点消除。
它通过使图像沿着边界向内收缩,达到消除边界点的目的。一般输入图像为二值图像。
腐蚀操作是将像素点与卷积核函数做与运算,只有全1时(或最小值)才保留这个像素点,否则则舍弃这个点。
语法格式
dst = cv2.erode(src, k, anchor, iterations, boderType, boderValue)
- src: 输入的原图像
- k: kernel代表腐蚀操作时所采用的结构类型,它可以自定义生成,也可以通过函数cv2.getStructuringElement()生成。
- anchor: anchor代表element结构中锚点的位置。该值默认为(-1,-1),在核的中心位置。
- iterations : iteration是是腐蚀操作迭代的次数,该值默认为1,即进行一次腐蚀操作。
- boderType: 扩充边界的模式,缺省是NoneT,表示不进行边界扩充
- boderValue:边界值,一般使用默认值。当borderType=cv2.BORDER_CONSTANT时,扩充边界的元素以borderValue填充
膨胀
作用:
是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。可以用来填补物体中的空洞.
膨胀过程是有一个结构元素或者模板去在原图像素做滑动,中心像素位置的值根据其邻域取或运算,或运算为1,则为1,否则为0。(或最大值)
语法格式
dst = cv2.dilate(src