与二值形态学相对应另一种形态学运算是灰度形态学。灰度形态学与二值形态学相比,不仅在图像本身的空间尺寸上有一个变化,而且图像本身的灰度值也会发上变化。
灰度膨胀(Grayscale Dilation)运算
灰度形态学膨胀,在数学上的定义,可以用如下公式表示:
根据公式,对灰度形态学可以简单理解为,对于原始图像F中(m, n)坐标的灰度值,分别向右移动(a, b)个单位,再加结构化元素K(a, b)的值,再取其求得的最大值。
为了更加直观地了解灰度膨胀的运算过程,假设有一个一维的灰度分布列表和一个一维的结构化要素,其膨胀运算的过程可以如下图所示:
灰度膨胀的另一个例子如下图所示,
一些灰度膨胀运算的结果如下图所示:
灰度膨胀效果图
灰度膨胀效果图
灰度膨胀的效果
观察以上灰度膨胀效果图,可以看出灰度膨胀具有如下效果:
灰度膨胀能够使得灰度图像中,被暗区包围的亮区,区域变大,而被亮区包围的暗区,区域变小(可以简单地理解为,黑色中的白色区域面接增大,白色区域中的黑色,面积变得更小)。
- 由于膨胀运算,灰度图像中一些较小的黑色的点(灰度值小),会被灰度值更大的灰度覆盖(填充)。
- 灰度膨胀对一些灰度变化更为强烈的区域效果更明显,即灰度变化率更大的区域,灰度膨胀的效果更明显。
灰度腐蚀
同样,为了更加深刻地理解灰度腐蚀的基本原理,与灰度膨胀一样,以一个简单的一维数据为例,介绍灰度腐蚀的计算过程,如下图所示:
更多的示例如下所示:
灰度腐蚀的效果图如下所示:
灰度腐蚀的特征
灰度腐蚀的效果,与灰度膨胀来对比,呈现出相反的特征,具体特征如下:
- 原始图像中,被暗色域包围的亮色域的区域大小会收缩,而被亮色域包围的暗色域的区域大小会扩张;
- 图像中一些较小的亮点会消失,而一些小的暗点会变大(可以认为,灰度具有让图像灰度值变小的效果,所以,灰度较大的白色会趋于消失,而灰度较小的黑色的尺寸会趋于增大。)
- 与灰度膨胀一样,灰度腐蚀的效果在图像灰度变化剧烈(图像梯度更大)的区域更明显。
灰度开运算
灰度开运算的过程,如下图所示,可以看出,对原始图像进行灰度开运算后,原始图像的尺寸并没有发生改变,只是一些灰度值变小了。
如下图所示,是一个灰度开运算效果的具体实例,如红框所标的部分,通过灰度开运算,灰度图像中一些被暗色(黑)包围的较小的亮色(白)通过开运算杯抹去,而蓝框表示出的一些较大的亮色区域却被保留了下来。
如下图所示,是灰度开运算的另一个例子,可以看出,结构化元素的尺寸越大,灰度图像中被抹去的亮色区域也越大。
灰度开运算的特点
综合以上两个实例,可以看出,灰度开运算具有如下特点:
- 对于一副灰度图像而言,如果一副图像中亮色(像素值较高)区域的尺寸比结构化元素的尺寸小,则会被抹去。
灰度闭运算
以数学计算的方式理解,灰度闭运算,其计算过程如下图所示:
可以看到灰度闭运算,并不会改变图像本身的尺寸,而是会对增加图像的像素值,也就是,灰度闭运算会使得图像变得更亮。
观察以下图片,可以看出灰度闭运算的效果,使得图片中被红色边框所标示的尺寸较小的亮色区域(像素值较大)的部分尺寸增加,而蓝色方框标示出的较大的亮色区域并未发生改变。
观察以下图片,可以看出,当灰度闭运算的结构化元素尺寸越大,所造成,原始灰度图像中被填埋的区域面积也越大。
灰度闭运算的效果
通过以上分析,灰度闭运算具有如下效果:
- 如果一副图像中,被暗色区域包围的亮色区域的尺寸小于结构化元素的尺寸,则灰度闭运算会使得该亮色区域的亮度增强。
- 如果,灰度开运算结构化元素的尺寸越大,对原始图像的影响也越大,即原始图像中亮色增强的区域也越大。
灰度形态学算法的比较
最后,以一条曲线为例,比较四种灰度形态学算法的异同