形态学,即数学形态学,是图像处理过程中一个非常重要的研究方向。形态学主要从图像内提取分量信息,该分量信息通常对于表达和描绘图像的形状具有重要意义,通常是图像理解时所使用的最本质的形状特征。
形态学操作主要包含:腐蚀、膨胀、开运算、闭运算、形态学梯度运算、礼帽运算、黑帽运算等。
1. 腐蚀
腐蚀能够消除图像的边界点,使得图像沿着边界向内收敛,也可以将小于指定结构体元素的部分去除。借此可以实现去除噪声、元素分割等功能。
在OpenCV 中,使用函数 cv2.erode( )实现腐蚀操作,其语法格式为:
dst = cv2 .erode ( src, kernel [, anchor [, iterations[, borderrype [,
borderValue]]]])
式中:
- dst 是腐蚀后所输出的目标图像,该图像和原始图像具有同样的类型和大小。
- src 是需要进行腐蚀的原始图像,图像的通道数可以是任意的。
- •kernel 代表腐蚀操作时所采用的结构类型。它可以自定义生成,也可以通过函数cv2.getStructuringElement()生成。
- anchor代表element结构中锚点的位置。该值默认为(-1,-1),在核的中心位置。
- iterations 是腐蚀操作迭代的次数,该值默认为 1,即只进行一次腐蚀