图像在获取过程中常会受到噪声干扰, 为对含噪图像进行有效的利用, 首先需要对其进行去噪处理.然而, 在对图像进行有效去噪的同时, 常常会对图像的边缘特征等信息造成丢失.因此, 在设计图像去噪算法时, 既要对含噪图像进行有效地去噪, 同时又要很好地保留图像的边缘特征.近些年来, 小波变换以其低熵性、小波基选择的多样性、多分辨特性和去相关性等特点在图像去噪方面得到广泛而有效的应用. Donoho和Johnstone (见文[1-3])在高斯噪声模型下提出了基于小波阈值去噪的算法框架, 并给出了具体的阈值估计, 该算法实现简单、计算量小且理论上证明在均方意义下渐进最优.本文提出一种基于Canny算子边缘检测的小波阈值去噪的新方法, 不但可以有效去除噪声, 同时能够保留原始图像重要的边缘特征.
小波阈值去噪法的主要原理是, 小波变换具有能量集中特性, 含噪信号经由小波变换后使得噪声成分的能量分布在整个小波域但主要集中在高频部分, 而信号的能量集中分布在少数几个幅值较大的小波系数上, 其中噪声的小波系数幅值小于信号的的小波系数幅值, 因此合理的选取阈值, 并能有效地实现信号和噪声的分离.小波阈值去噪法具体处理过程可以分为三步(见文[4, 5]): (1) 选取小波函数和小波分解层数, 并对含噪信号在各尺度上进行小波分解. (2) 对小波系数进行阈值处理, 根据选定的阈值, 若小波系数的幅值小于该阈值, 则置为零, 反之则保留或进行一定的收缩处理. (3) 利用小波逆变换对处理后的小波系数进行重构.
在小波阈值去噪过程中, 最为重要的就是阈值和阈值函数的选取.如果阈值过小, 处理后的小波系数仍含有大量的噪声成分, 去噪效果不理想; 若阈值过大, 则造成有用信号的丢失, 导致图像失真.
在阈值去噪法中, 阈值函数主要可以分为以下两种:
(1) 硬阈值函数
(2) 软阈值函数
2.1、2.2式中$w_{j, k}$为小波系数, $\lambda_j$为第$j$层确定的阈值, ${\rm sgn}(.)$为符号函数, 两种方法各有特点, 硬阈值函数可以很好地保留图像的边缘等特征, 但在$\pm\lambda_j$处不连续, 容易使去噪后的图像出现振铃、Pseudo-Gibbs现象, 软阈值函数方法整体连续性好, 处理的结果更平滑, 视觉效果更自然.
本文采用三种比较常用的阈值, 分别为由Donoho和Johnstone共同提出的全局阈值$\lambda=\sigma\sqrt{2\ln{N}}$、基于Stein的无偏似然估计原理的rigrsure自适应阈值和heursure混合型阈值, 其中$\sigma$为图像噪声的标准差, $N$为图像像素数.由于传统的阈值去噪对各个不同层次的小波系数使用同样的阈值, 一定程度上影响了每个层次上的信噪分离, 因此本文采用小波细节系数自相关性分析的分层阈值降噪法进行图像去噪.
边缘是指图像上那些不连续的点或剧烈变化的像素点的集合, 是图像最基本的特征, 例如纹理结构的突变、灰度值的突变、颜色的突变等等.图像的边缘检测是图像分析、解释和识别的重要前提.传统的边缘检测算子有Roberts算子、Prewitt算子、Sobel算子和Canny算子等.本文所采用的Canny算子(见文[6, 7])检测速度快、对噪声比较敏感且具有很好的检测精度.该算法较之其它边缘检测方法的优越之处在于, 它使用两种不同阈值分别检测强边缘和弱边缘, 并且仅当弱边缘和强边缘相连时才将弱边缘包含在输出图像中, 因此Canny算子更容易检测出真正的弱边缘.
传统的Canny算法(见文[8])选用一维高斯函数$G(x)=-\frac{1}{\sqrt{2\pi}\sigma}e^{\frac{-x^2}{2\sigma^2}}$构造滤波函数, 首先分别按行和列对原始含噪图像$f$进行平滑去噪处理. $\sigma$为高斯曲线的标准差, 控制着平滑程度, 并得到处理后的平滑图像$I$, 同时采用如下一阶偏导数的有限差分近似计算平滑图像$I$在$(i, j)$处的水平和垂直方向的偏导数:
此时, 平滑图像$I$在$(i, j)$处的梯度模$M(i, j)=\sqrt{G^2_x[i, j]+G^2_y[i, j]}$及梯度方向$\theta(i, j)=\arctan\frac{G_y[i, j]}{G_x[i, j]}$.如果图像在$(i, j)$像素点的梯度模$M(i, j)$大于或等于沿梯度方向两个相邻像素点的梯度模, 则判断该点为可能的边缘点.并分别利用双阈值检测算法及边缘链接算法得到最后的边缘图像.
步骤1 对含噪原始图像$f$利用Canny边缘检测算子进行边缘检测, 并得到边缘图像$f_e$;
步骤2 对边缘图像$f_e$和原始图像$f$分别进行多层小波分解, 并分别得到图像在小波域的图像表示$W_{f_e}$和$W_f$;
步骤3 分别对$W_{f_e}$和$W_f$小波系数进行阈值处理, 得到$W'_{f_e}$和$W'_f$;
步骤4 在图像的相应像素点, 利用
进行数据的加权处理, 其中权系数$0<r<1$;
步骤5 对$W$进行小波逆变换, 并得到基于边缘保护和去噪的重构图像$g$.
本文采用典型的lena灰度测试图像, 并对测试图像添加均值为0方差为0.1的高斯白噪声, 并选择symlets对称小波函数(见文[9, 10]).为了数值刻画算法的去噪效果, 本文选用均方差(${\rm MSE}$)指标和峰值信噪比(${\rm PSNR}$)指标, 具体指标分别为:
式中$f$为原始图像, $g$为重构图像.由于权系数的选取对去噪效果至关重要, 本文基于均方差指标${\rm MSE}$达到最小和峰值信噪比指标${\rm PSNR}$达到最大为目标, 选取权系数.在2层和3层小波分解下, 图 1给出了基于rigrsure阈值去噪时, 指标${\rm MSE}$、${\rm PSNR}$、${\rm MSE}+\frac{1}{\rm PSNR}$与权系数$r$的关系图, 从实验数值结果可以看出, 随着$r$不断增加, ${\rm MSE}$、${\rm MSE}+\frac{1}{{\rm PSNR}}$先单调递减后单调递增, ${\rm PSNR}$先单调递增后单调递减, 并在$r=0.8$时, ${\rm MSE}$、${\rm MSE}+\frac{1}{\rm PSNR}$达到最小, ${\rm PSNR}$达到最大, 故综合考虑, 本文选取权系数$r=0.8$.同样在本文采用的另外两种阈值去噪方法下, 也得到了相同的权系数$r=0.8$.
表 1给出了在不同小波分解层数下, 采用全局阈值$(\lambda_i=\lambda=\sigma\sqrt{2\ln N})$和分层阈值以及考虑边缘和不考虑边缘情形下, lena图像的去噪效果评价指标${\rm MSE}$和${\rm PSNR}$的数值分析结果.总体上看, 考虑边缘检测的阈值去噪较不考虑边缘的阈值去噪, 其峰值信噪比提高约4$db$到5$db$, 均方差有所降低; 综合考虑均方差和信噪比指标, 在进行2层小波分解时基于边缘检测的rigrsure分层阈值, 其指标最好.在视觉效果上(如图 2.1--2.6所示), 计及边缘检测的rigrsure分层阈值去噪方法较之不计及边缘的rigrsure分层阈值去噪方法更好地保护了图像的边缘细节, 并在2层小波分解下达到最优.另外, 对于heursure混合型阈值去噪方法, 从表中数据可以看出, 也得到了和rigrsure分层阈值去噪方法相近的数值分析结果.
本文提出了基于Canny边缘检测和基于分层小波阈值去噪相结合的去噪算法, 对含噪图像进去噪处理, 实验结果表明该算法既能有效去除噪声又能很好的保留图像的边缘, 在兼顾去噪效果和保留图像边缘特征方面, 当进行2层小波分解同时计及边缘特征时, 达到了一个好的平衡.