基于改进二维Haar小波的图像去噪算法

2019-07-17 01:56牟奇春
关键词:子带标准偏差小波

牟奇春

(成都职业技术学院 软件学院, 成都 610041)

随着个人计算机、智能手机和社交网络的发展,图像处理已经逐渐成为人们生活中不可或缺的一部分[1-2]。图像处理在众多领域得到应用,如基于视觉的植物生长监测和识别[3]、智能交通系统[4]、生物医学成像、医学诊断和治疗操作[5-6]、多媒体应用、对象跟踪和识别[7-8]等。

实际上,图像在采集或传输过程中常被噪声损坏,因此去噪是图像预处理的一个重要部分,可以提高图像质量。图像去噪方法包括空间域滤波器和变换域滤波器[9],最常使用的空间滤波器有优均值滤波器、高斯滤波器和中值滤波器。这些滤波器能使图像平滑但会导致图像边缘模糊,另一种常用的维纳滤波器需要噪声频谱和原始信号频谱的细节[10]。自适应去噪滤波器则根据图像的统计特性进行操作,并以更高的复杂度实现更好的性能[11]。基于频域的去噪方法通常使用傅里叶变换将图像从空间域转换到频域[12],然后通过应用具有特定截止频率的滤波器去除噪声分量,最后使用傅里叶逆变换来获得去噪图像。但是,这些方法的时间复杂度较高,并且会模糊图像的细节。与仅提供频率信息的傅里叶变换相比,小波变换允许通过母小波的平移和频域扩张在两个时域中定位。小波变换不仅支持多分辨率架构,还具有稀疏性和能量压缩的优势[13]。小波变换可以进行与尺度相关的时频信号定位,并进行信号分析以检测局部信号奇异性。这些特性使小波变换成为图像去噪的理想选择。

文献[14]使用基于双树复数小波变换的局部自适应窗双变量模型设计了一种图像去噪算法,然后根据邻域系数的相关性,选择合适的邻域窗口大小进行图像去噪,但该方法的计算复杂度较高。文献[15]提出一种基于离散小波变换的图像去噪方法,通过对比不同的小波类型对图像实现去噪,其去噪性能比双树复数小波方法的性能差。文献[16]提出一种新的分解层数和噪声阈值的小波去噪方法,计算时不需要噪声估计的噪声阈值,对正负小波系数使用单独的噪声阈值,对近似分量进行去噪,允许灵活调整噪声阈值,但实验信号对信号失真的耐受性低于图像。

针对以上图像去噪方法的不足,本文在研究噪声图像的小波分解层数的基础上,提出了改进二维Haar小波变换的图像去噪算法。该方法使用子带的标准偏差来确定小波变换后高频子带中信号能量的强弱,并以此来确定是否进行下层小波分解。此外,提出了一种新的阈值函数,比较了多个阈值方案。实验结果表明:本文方法能实现图像去噪,去噪效果优于其他方法。

1 二维Haar小波变换

对于二维Haar离散小波变换(discrete wavelet transform,DWT),h(n)表示低通滤波器,g(n)表示高通滤波器。首先,通过h(n)和g(n)对图像的每一行进行滤波,然后对滤波器结果进行频率为2的下采样,选择频率为2的下采样参数是由于Haar DWT所要求的简单性。之后,每个得到的列进一步通过h(n)进行低通滤波,并通过g(n)进行高通滤波。在频率为2的下采样之后,图像最终被分解为4个不同的子带。

图1 图像的二维Haar DWT流程

在图1中,最终2D Haar DWT的结果为LL,LH,HL和HH四个不同的子带,LL对应图像的近似,HL对应图像的水平细节,LH对应垂直细节,HH对应图像的对角细节。可以通过使用LL,HL,LH和HH子带数据来构造图2所示的另一个新图像IMG_Haar。

通过二维Haar逆离散小波变换(Inverse discrete wavelet transform,IDWT)处理IMG_Haar以获得原始图像。二维IDWT执行二维DWT的逆操作。对于二维IDWT,低通滤波器保持不变,但需要翻转高通滤波器系数。此外,频率为2的下采样被更新为频率为2的上采样。

图2 由图像的二维 Haar子带数据构建的新图像

2 本文改进小波去噪方法

2.1 子带标准差确定小波分解层数

在图像数据[15]中,将加性高斯噪声作为主要的不必要干扰源进行研究。在二维DWT之后,高斯噪声在不同频带上彼此独立,但随着DWT规模的增大,噪声能量迅速降低。另一方面,原始图像信号在同一位置保持其局部最大值,并且在二维DWT之后其能量不会迅速降低。

假设噪声图像为Imgnoisy,纯图像Img和添加的白高斯噪声G_noise可以在等式(1)中表示。

Imgnoisy=Img+G_noise

(1)

为了研究高斯噪声的行为,假设加性高斯白噪声具有零均值和标准差σ_noise,并且上述Img等于零。然后,在二维Haar DWT之后,噪声能量将在所有子带中均匀分布。

如等式(2)和(3)所示,在一级二维Haar DWT之后,噪声将分布在LL,HL,LH和HH这4个不同子带中,子带标准偏差值为σ1,σ2,σ3和σ4。 假设均值为零时,子带平均噪声能量与子带标准偏差值相关联。

(2)

σ1≈σ2≈σ3≈σ4

(3)

从等式(2)(3)可以很容易地导出等式(4),即子带噪声标准偏差近似等于σ_noise。

σi≈σ_noise ,i=1,2,3,4

(4)

当执行更多小波分解时,所有子带噪声的标准偏差近似等于σ_noise。在上述分析中,仅考虑使用零均值和标准差为30的高斯噪声作为512×512大小的Imgnoisy。在二维DWT之后,获得的子带标准偏差值是σ1= 29.984 4,σ2= 29.978 2,σ3= 29.980 0和σ4= 30.049 4。这证明高斯噪声子带标准偏差值接近原始高斯噪声标准偏差30。

上述分析表明纯高斯噪声的行为发生。现假设Img在等式(1)中不等于零,且将零均值高斯噪声添加到图像中。在一级二维Haar DWT之后,子带LL,HL,LH和HH的标准偏差值分别为σnew1,σnew2,σnew3和σnew4,则有:

(5)

具有较高标准偏差值的子带通常表示其具有比其他子带更多的图像信号能量,其他子带具有更多的噪声能量。在小波分解k层,频图像分量位于HLk、LHk和HHk中,低频分量位于LLk频段。本文算法将在具有更多噪声能量的子带上进行阈值处理。

本文提出的小波分解层的过程分为以下3个主要步骤。

步骤1 在噪声图像上应用第1层二维Haar DWT,然后获得第1层高频子带的标准偏差值为σ_HL1、σ_LH1和σ_HH1,假设它们中的最小值是σ_min1。如果以上3个值都接近σ_min1,则表示3个子带中的所有子带都不受图像能量的支配。因此,阈值处理可以直接应用于这3个高频频段。

如果第1层高频子带具有比σ_min1高得多的标准偏差值,则表明所识别的子带具有更多的图像信号能量,并且还应对所识别的第一层进行第2层小波分解。高频子带去除其相关的第2层高频子带中的噪声,这个阶段不需要递归。

步骤2 在LL1子带上应用二维Haar DWT, 然后获得第2层高频子带的标准差值为σ_HL2、σ_LH2和σ_HH2。假设它们中的最小值是σ_min2。 如果这3个值都接近σ_min2,则将阈值直接应用于这3个高频子带。另一方面,如果任何子带标准偏差值远高于σ_min2,则只执行下一个层的小波分解,并且还对生成附加的3个高频子带执行阈值,这个阶段不是递归的。

步骤3 在LL2子带上应用二维Haar DWT, 然后执行与步骤2中描述的类似的分解和阈值处理策略,图像去噪处理在第3步结束时停止。

2.2 阈值函数

阈值的选择对于使用小波阈值方法进行图像去噪的算法性能至关重要。非常小的阈值不能充分消除噪声,而太大的阈值可以消除重要的图像特征。Donoho定义的通用阈值因为简单性常被使用。

(6)

σ=median(|HH1|)/0.674 5

(7)

其中:λ表示通用阈值,σ表示通用阈值噪声的标准偏差,sig_len是信号的长度。根据式(8)使用依赖于分解层的阈值。

(8)

其中,k表示二维DWT分解层数,使用的缩放参数1/(k+1)是考虑当执行更多层数的二维DWT时子带中的高频分量将更多地受噪声能量支配。常用的阈值函数有硬阈值、软阈值和半软阈值函数。

硬阈值函数将小波系数的绝对值与阈值λ进行比较,它保留了绝对值大于阈值的小波系数,对于低于阈值的小波系数,则将小波系数设置为零,硬阈值函数描述为:

(9)

硬阈值函数是不连续的,具有保留图像局部特征(例如边缘)的特点,缺点是可能在重建图像中产生视觉失真。

软阈值函数将小波系数向零移位,绝对值大于λ的小波系数减去λ,其他系数都设置为0。软阈值处理后,小波域中的小波系数更平滑,重建图像看起来更平滑,软阈值函数描述为:

(10)

半软阈值是一种在软阈值和硬阈值之间进行插值的函数,它使用阈值λ1和第二阈值λ2,半软阈值函数描述为:

(11)

本文在上述阈值函数的基础上,提出一种新的阈值函数,该阈值函数可以克服硬阈值函数对于小波系数过度收缩、软阈值处理使图像边缘模糊的缺点。所提出的阈值函数是连续的,且在有噪小波系数和图像信号小波系数之间提供了更平滑的过渡,本文阈值函数描述为:

(12)

当|x|=λ,y=0;当|x|=2λ,|y|=λ/2;当|x|接近∞,y将近似等于x。本文阈值函数如图3所示。

图3 本文阈值函数

3 实验结果与分析

本文图像去噪的性能指标是根据峰值信噪比PSNR和均方误差MSE。PSNR表达式为:

(13)

MSE表达式为:

(14)

其中: IMGnoisyij表示噪声图像像素,IMGij表示ith行和jth列中的原始图像像素值,wd和ht表示图像的宽度和高度。图4给出了基于本文讨论不同方法的512×512灰度噪声Lena图像和去噪图像,增加的高斯噪声均值为0,标准差为30。

图4 使用不同阈值函数去噪效果

在图4中,噪声图像的PSNR值是18.58, 使用硬阈值、软阈值、半软阈值和本文方法的去噪图像的PSNR值分别为23.87、26.90、26.39和27.30 dB。本文图像去噪性能优于其他3种阈值函数。图5和图6给出了标准差为5时高斯噪声图像的去噪PSNR和MSE值。表1给出了具有从10到25的不同高斯噪声标准差的512×512 Lena灰度图像的各种测试结果。

图5 不同阈值函数下图像去噪PSNR值

图6 不同阈值函数下图像去噪MSE值

从图5、图6和表1中数据可以得出:本文方法能获得比硬阈值、软阈值和半软阈值方法更好的PSNR和MSE值。当标准差为10~15范围的值时,本文方法性能比半软阈值方法好,半软阈值方法能比硬阈值和软阈值方法获得更好的PSNR和MSE值。对于标准差为20~25范围的值,软阈值方法具有仅次于本文方法的性能,但比硬阈值和半软阈值方法能获得更好的PSNR和MSE值。

为了验证本文方法的有效性,对200幅噪声图像进行实验,得到其平均的PSNR和MSE值,如图7所示,此时高斯标准差为10。

表1 不同标准值噪声下的去噪性能

图7 不同阈值函数下图像去噪PSNR和MSE值

从图7中可以看出:本文方法对于多幅图像去噪得到的平均PSRN值和MSE值优于其他3种阈值函数,说明本文方法的有效性。

所提出的小波去噪方法使用二维Haar DWT和IDWT具有低复杂度,该算法要求低频带的三层小波分解,而与图像大小无关。只有当相关的子带标准偏差远高于同一层的其他子带的最小标准偏差时,才需要执行每个层的高频子带的下一层小波变换;否则,不需要对高频子带进行进一层的小波分解。 因此,本文提出的小波去噪方法的复杂程度与原始图像像素的总数呈线性关系,即O(n),其中n表示总图像像素数。

4 结束语

本文提出了一种能够确定小波分解层数的改进二维Haar小波阈值图像去噪方法。该方法能够根据子带的标准差来确定是否进行下一层小波分解。此外,提出了一种新的阈值函数,实现了比硬阈值、软阈值和半软阈值方法更好的去噪性能。该方法复杂度低、易于实现,且小波分解的层数不依赖于图像大小。提出的小波去噪算法仅需要O(n)个实数运算。实验结果表明:本文方法能够有效实现图像去噪,去噪效果优于硬阈值、软阈值和半软阈值方法。未来工作将研究高频子带的标准差对小波阈值的影响。

猜你喜欢
子带标准偏差小波
基于多小波变换和奇异值分解的声发射信号降噪方法
超高分辨率星载SAR系统多子带信号处理技术研究
一种基于奇偶判断WPT的多音干扰抑制方法*
构造Daubechies小波的一些注记
倾斜改正在连续重力数据预处理中的应用
子带编码在图像压缩编码中的应用
基于MATLAB的小波降噪研究
高分辨率机载SAR多子带合成误差补偿方法
基于改进的G-SVS LMS 与冗余提升小波的滚动轴承故障诊断
平滑与褶皱表面目标的散射光谱的研究