首先要明白两点
1. 腐蚀与膨胀是对图像高亮度像素起作用;(一般都是二值化图像)
2. 计算机扫描整体图像由左至右,自上而下;
下面以3*3模版为例
首先教材都是这样写的:
膨胀:求局部最大;
腐蚀:求局部最小;
重点来了:
如何确定经过膨胀处理后的每个像素值?
[1 2 3
4 5 6
7 8 9]
我们要计算某个像素的像素值(这里需要更新值为5的像素值),就是扫描包括自己在内的3*3 = 9个相邻像素
膨胀(求局部最大):直观上看,你会发现高亮度的区域被放大,低亮度区域变瘦了
[1 2 3
4 9 6
7 8 9]
很明显5被最大的9取代了,即局部最大
腐蚀(求局部最小)直观上来看就是暗区域被放大,高亮区域变瘦
[1 2 3
4 1 6
7 8 9]
5被1取代了,即局部最小
在实际操作中,都是基于二值图像进行操作,计算量也会大大缩减!
再说开运算,闭运算!
将同一幅图像完成以下操作:
开运算:先腐蚀,后膨胀
闭运算:先膨胀,后腐蚀
PS:不建议一幅图片反复的腐蚀或者膨胀,真的毁三观!!!