1、定义结构元素
形态学操作的原理:在特殊领域运算形式——结构元素(Structure Element),在每个像素位置上与二值图像对应的区域进行特定的逻辑运算。运算结构是输出图像的相应像素。运算效果取决于结构元素大小内容以及逻辑运算性质。
结构元素:膨胀和腐蚀操作的最基本组成部分,用于测试输出图像,通常要比待处理的图像小很多,二维平面结构元素由一个数值为0或1的矩阵组成。结构元素的原点指定了图像中需要处理的像素范围,结构元素中数值为1的点决定结构元素的领域像素进行膨胀或腐蚀操作时是否需要参与计算。
形态学处理的核心就是定义结构元素,在OpenCV中,可以使用其自带的 getStructuringElement 函数,可以获取常用结构元素的性质:矩形(包括线形),椭圆(包括圆形)以及十字形。
2、腐蚀、膨胀、开运算、闭运算
腐蚀(Erosion):将图像的边界收缩,去掉小的白色噪声点,适合去除噪声。白色被腐蚀,黑色加深
膨胀(Dilation):将图像的边界扩展,填充小的黑色空洞,适合填补孔洞。白色膨胀,黑色变淡;
可以看做膨胀是将白色区域扩大,腐蚀是将黑色区域扩大。
开运算(Opening):先腐蚀后膨胀,适合去除小物体。用于移除由图像噪声形成的斑点
闭运算(Closing):先膨胀后腐蚀,适合填补小孔洞。用来连接被误分为许多小块的对象