图像分割是将图像分划成各具特性的区域并提取出感兴趣目标区域的技术, 它是图像处理中基础而且重要的环节, 其分割结果的好坏对后续的图像分析、理解及识别都有很大影响.图像分割一直是图像处理领域中的一个热点和难点问题.近几十年来, 提出了基于阈值、基于边缘和基于区域等图像分割算法[1, 2].
分水岭算法是一种基于形态学理论的分割方法, 在该方法中将一幅灰度图像看成一个地形学上被水覆盖的自然地貌, 图像中每一像素的灰度值表示该点的海拔高度, 其每一个局部极小值及其影响区域称为集水盆, 而集水盆的边界则是分水岭.通常把分水岭算法理解为一种模拟降水的过程:雨水降落在地形表面并顺着地势向下流动, 其最终将流向不同的局部海拔高度最低的区域(极小区), 那些流向同一个极小区的雨水轨迹就形成一个连通区域, 称为集水盆.分水岭算法作为一种基于区域的图像分割算法, 上世纪70年代末, Beucher等人[3]提出了应用分水岭算法进行图像分割, 并成功应用于灰度图像的分割.但分水岭算法对图像中的噪声极其敏感, 其干扰噪声能严重影响图像的梯度信息, 造成分割轮廓偏移, 同时分水岭算法对图像噪声和目标内部细节非常敏感, 极易造成过度分割[4, 5], 使得分割结果失去意义.
为了克服传统分水岭算法可能造成分割轮廓偏移以及过分割的缺陷, 很多学者进行了相关研究, 提出了一些改进分水岭算法; Meyer等人提出了一种基于标记的分水岭算法.杨卫莉等人提出了在分割区域间进行聚类合并的算法, 这些算法在某种程度上消除了分水岭算法带来的过分割现象.
本文基于小波去噪预处理与基于信息熵最大化的阈值确定方法, 并基于此阈值提出了梯度校正的分水岭图像分割算法, 从整体上提高了图像分割方法的效果和效率.
近年来, 小波理论得到了快速的发展, 由于具有良好的时频局部化特性, 在图像去噪领域中, 取得了很好的效果.与其它传统的去噪方法相比, 小波方法在去噪的同时, 能更好地保留图像的边缘特征.小波阈值去噪的主要原理是, 小波变换具有能量集中特性, 含噪信号经过小波变换后使得噪声成分的能量分布在整个小波域但主要集中在高频部分, 而信号的能量集中分布在少数几个幅值较大的小波系数上, 其中噪声的小波系数幅值小于信号的小波系数幅值, 因此合理的选取阈值, 能有效地实现信号和噪声的分离.小波阈值去噪法具体处理过程可以分为以下三步:
(1) 选取小波函数和小波分解层数, 并对含噪图像在各尺度上进行小波分解得到小波系数;
(2) 选取阈值$ \lambda $, 其阈值定义为$ \lambda = \sigma \sqrt {2\ln N} $ ($ \sigma $为噪声的标准方差, 为图像的像素点个数), 对得到的小波系数进行修正[6];
(3) 利用小波逆变换对修正后的小波系数进行重构.
在小波阈值去噪过程中, 去噪效果依赖于阈值函数的选取, 目前阈值函数主要可以分为以下两种
(1) 硬阈值函数
(2) 软阈值函数
硬阈值函数在小波域内是不连续的, 存在间断点, 容易造成去噪后的图像在奇异点附近出现明显的Pseudo-Gibbs现象.软阈值函数在小波域内虽然保持连续, 但是软阈值函数中估计的小波系数与信号的小波系数之间存在恒定偏差, 影响去噪效果.正因为上述软硬阈值函数在去噪过程中存在这样的缺陷, 故本文提出如下改进的新阈值处理函数
其中$ 0 \le \alpha \le 1 $, 具体函数如图 1所示, $ \alpha = 0 $与$ \alpha = 1 $分别对应上述的硬阈值函数和软阈值函数, 当$ 0 < \alpha < 1 $时, 可根据$ \alpha $值的大小决定去噪效果.
图像的边缘在图像分割中起到重要的表征作用, 在图像分割中, 图像的梯度矩阵可以用来刻画图像的边缘强度和方向, 因而梯度矩阵较原始图像灰度矩阵更显重要.设图像的灰度矩阵$ f(x, y), x = 1, 2, \cdots, N; \, y = 1, 2, \cdots, M $, 在$ (x, y) $处的梯度为
其幅值$ M(x, y) $为
$ M(x, y) $实际上代表图像$ f(x, y) $的梯度图像.
为了避免因为灰度值的微小变化产生的图像过分割, 同时也要避免图像的欠分割, 本文提出如下基于最大信息熵算法确定阈值的对梯度图像进行校正的算法, 即
其中$ T $表示待定的阈值.
本文采用一种熵方法求取阈值, 即Kapur算法[7].梯度图像$ M(x, y) $像素点为$ NM $, 灰度值范围为$ [0, L - 1] $, 对应灰度级$ i \in [0, L - 1] $的像素数为$ {N_i} $, 灰度分布概率为
此时梯度图像的信息熵[8]为
不妨设用阈值$ T $将梯度图像$ M(x, y) $的灰度值分成两类$ A $和$ B $,
那么这两类的累计概率为
此时$ A $、$ B $两类的信息熵分别为
其全局总熵$ \phi (T) $为
则选取最佳阈值$ {T^*} $为
进而给出本文如下图像分割算法流程:原始图像$ \rightarrow $小波去噪预处理$ \rightarrow $梯度图像$ \rightarrow $基于信息熵最大的阈值确定$ \rightarrow $梯度校正$ \rightarrow $分水岭算法$ \rightarrow $分割图像.
本文针对含有高斯白噪声的图像, 选取小波函数sym4对图像进行2层分解, 对小波分解后得到的高频系数分别采用硬阈值函数、软阈值函数和本文阈值函数来调整小波系数, 其去噪效果如图 2所示.
本文选用峰值性噪比$ PSNR = 10{\log _{10}}\frac{{{{255}^2}}}{{MSE}} $指标来衡量图像的去噪效果, 其中$ MSE $表示去噪前后图像的均方误差. $ PSNR $值越大, 则说明去噪效果越好.阈值函数中$ \alpha $与$ PSNR $的关系如图 3所示, 从图中可以看出, $ \alpha = 0.7 $时, $ PSNR $的值最大, 即去噪效果最好.数值实验结果如表一, 小波去噪效果要好于前两者.
在Matlab软件平台中分别采用分水岭算法和本文算法对含噪图像进行分割处理, 它们的分割效果如图 4所示.从图中可以看出, 直接在梯度图像上进行分水岭分割, 明显出现过分割现象.利用本文基于梯度校正的分水岭算法, 得到了较好的分割结果.
针对图像分割中图像易受噪声干扰, 本文首先采用了小波去噪预处理, 对含噪图像进行去噪平滑.通过对给定去噪方法的比较, 显示了本文小波去噪方法具有明显优势, 而且能够在去噪过程中保留原始图像的边缘信息, 为图像的正确分割提供了可能.而本文提出的基于最大信息熵算法确定的梯度图像校正阈值, 对梯度图像进行校正, 在某种程度上避免了图像的过分割现象.数值实验结果显示, 本文提出的图像分割算法从整体上提高了图像的分割效果, 显示了分割算法有效性.