三次样条插值在小波去噪中的应用

2016-09-08 10:39
计算机应用与软件 2016年8期
关键词:蜜源样条插值

张 涛 张 欣

(贵州大学大数据与信息工程学院 贵州 贵阳 550025)



三次样条插值在小波去噪中的应用

张涛张欣*

(贵州大学大数据与信息工程学院贵州 贵阳 550025)

针对传统小波阈值函数在图像去噪中的不足,结合三次样条插值提出一种新的阈值函数。该函数具有很好的光滑性,既克服了硬阈值函数不连续性造成的吉布斯效应,也解决了软阈值函数引起的恒定偏差问题,而且能够根据图像噪声方差的大小,自适应地改变函数系数以达到最佳的去噪效果;最后,利用人工蜂群算法构造新的阈值进行去噪。实验结果表明,该去噪方法无论是主观感受,还是客观评价均优于软阈值及硬阈值的去噪效果,与其他改进的小波去噪方法相比该算法也具有较好的效果。

小波变换三次样条插值阈值函数人工蜂群算法(ABC)

0 引 言

图像中的噪声对图像后期的处理带来严重的影响,因此图像去噪是图像处理的首要任务。由于小波变换具有有效、高度直观的描述框架和多分变率图像存储的优点,尤其是可以同时在空间域和频域研究图像[1],使其在图像去噪中获得了很好的效果。目前小波去噪主要包括三种方法:基于小波阈值去噪算法、基于小波系数相关性去噪算法和基于小波极大值去噪算法[2],其中阈值去噪算法应用最为广泛。

传统的小波阈值去噪算法是Donoho于1995年提出的。虽然该方法简单,但却存在固有的缺点:硬阈值函由于在阈值处不连续,因此对图像处理之后会造成Gibbs振荡效应;软阈值函数存在着恒定的偏差,这些限制了其应用。对此国内外学者相继提出了改进的算法[3-8],文献[3]通过改进阈值,在多阈值的情况下进行去噪;文献[4,5]通过改进阈值函数进行去噪;文献[6]在Bayes风险最小的情况下进行了局部去噪;文献[7]通过改进阈值函数和阈值进行去噪;文献[8]将人工蜂群算法引入小波中进行去噪;这些算法在一定程度上实现了小波阈值去噪的优化。本文在此基础上,采用三次样条插值构造阈值函数,利用人工蜂群算法优化阈值,实现了较好的去噪效果。

1 传统小波阈值函数去噪原理

设一幅M×N的图像被高斯噪声污染后的表示如下:

hj,k=fj,k+nj,k

(1)

其中j=1,2, …,M;k=1,2,…,N;hj,k为含噪图像在(j,k)处的灰度值,fj,k是原图像在(j,k)处的灰度值,nj,k为服从N(0,σ2)的正态分布。

设hj,k经过小波变换后变为wj,k,由于该过程是线性变换[9],所以wj,k是fj,k的小波系数与nj,k的小波系数之和;另一方面,变换后原图像本身的能量集中于较大的小波系数中,而噪声的能量则分布于较小的系数中,因此可以设置一个阈值,大于该阈值的小波系数认为是fj,k的小波变换,给予保留;而小于该阈值的小波系数则认为是nj,k的小波变换,给予删除,这样就达到了去噪的目的,其步骤如下所示:

(1) 对hj,k进行小波系数分解得wj,k;

(2) 对wj,k进行阈值处理,设vj,k为处理后的小波系数,硬阈值方法为:

(2)

软阈值方法为:

(3)

(4)

2 三次样条插值构造新的阈值函数

2.1三次样条插值构造阈值函数

2.1.1三次样条插值简介

早期工程师制图时,把富有弹性的细长木条(所谓样条)用压铁固定在样点上,在其他地方让它自由弯曲,然后沿木条画下曲线,称为样条曲线。三次样条插值(简称Spline插值)是通过一系列形值点的一条光滑曲线,数学上通过求解三弯矩方程组得出曲线函数组的过程。其定义如下:

若点a=x0

(1) 在每个子区间[xi,xi+1](i=0, 1, 2,…,n-1)上S(x)是三次多项式;

(2)S(x)在[a,b]二阶连续可导;

则称S(x)是区间 [a,b]上的三次样条函数[10]。

若求f(x)在[a,b]的三次样条插值函数,由定义可设S(x)=aix+bix+cix+di,x∈[xi,xi+1](i=0, 1, 2,…,n-1)其中ai、bi、ci、di为未知数,共4n个,按照三次样条插值的定义,则有如下条件:

1) 插值条件n+1个:S(xi)=f(xi);

2) 连续条件n-1个:S(xi-0)=S(xi+0);

3) 一阶导数连续条件n-1个:S(1)(xi-0)=S(1)(xi+0);

4) 二阶导数连续条件n-1个:S(2)(xi-0)=S(2)(xi+0)。

其中S(n)(x)表示对S(x)n次求导,共确定4n-2个条件,若要求解S(x),还需要两个条件,称为边界条件:S(1)(x0)=f(1)(x0),S(1)(xn)=f(1)(xn);由以上4n个条件便可求出S(x)。

2.1.2新阈值函数的构造

当n=2时,需要8个条件方可求出S(x),为了使构造的新阈值函数在[λ-ε,λ+ε]内具有很好的光滑性,且可以与硬阈值函数很好地衔接,则S(x)在应满足如下条件:

1)S(λ-ε)=0;

2)S(λ+ε)=λ+ε;

3)S(λ-0)=m;

4)S(λ+0)=m;

5)S(1)(λ-ε)=0;

6)S(1)(λ+ε)=1;

7)S(1)(λ-0)=S(1)(λ+0);

8)S(2)(λ-0)=S(2)(λ+0)。

其中ε=k1×λ,m=k2×λ,k1调节邻域的大小,k2调节S(x)在阈值处的值; 条件1)、2)、5)和6)保证新阈值函数可以光滑地与硬阈值函数衔接条件3)、4)、7)和8)保证了新阈值函数在λ处一、二阶导数连续。通过下式:

(5)

(6)

取λ=0.5, k1=0.5, k2=0.5,新阈值函数、硬阈值函数及软阈值函数的对比图像如图1所示。可以看出采用三次样条插值构造的vj,k有如下特点:

(1) 既克服了硬阈值函数的不连续性,又解决了软阈值函数的恒定偏差,且高阶可导,具有很好的光滑性。

(2) k1越小,则过渡阶段的邻域范围就越小,S(x)的斜率越大,新阈值函数趋近阈值函数的速度越快;若k1越大,过渡阶段越长,去噪后的图像会出现模糊现象。

(3) k2越小,新阈值函数在[λ-ε, λ]范围内越趋近于0,越有利于去噪。但k2过小,S(x)容易在λ处出现Runge现象,此时构造的vj,k在零点附近容易出现剧烈的振荡现象。为了实现较好的去噪效果,需要合理地对k1、k2进行取值,经过多次实验,当k1=0.1、k2=0.3时基于本文阈值函数的小波去噪效果最好。

图1 各阈值函数的对比图

2.2人工蜂群算法寻优阈值

2.2.1人工蜂群算法简介

人工蜂群算法是模仿蜜蜂行为提出的一种优化方法,是集群智能思想的一个具体应用。标准的ABC模型主要包括三个基本的组成元素:蜜源、被雇佣的蜜蜂(也称为引领蜂)以及未被雇佣的蜜蜂。未被雇佣的蜜蜂又分为跟随蜂与侦察蜂。蜜源相当于优化问题的可行解,它由其所含花蜜的丰富程度、获取难易以及距离蜂巢的远近等因素决定;引领蜂携带蜜源的信息,并可以将其分享给其它的蜜蜂,它的数量与蜜源相等;跟随蜂通过观察引领蜂的舞姿来获取不同蜜源的收益率,并根据一定的规则选出最好的蜜源前去采蜜,在此过程中,跟随蜂也会在该蜜源附近寻找是否有更好的蜜源;侦察蜂则负责在蜂巢附近随机的搜寻新蜜源。总的采蜜过程如下:

1) 在初始阶段,蜂群在整个空间随机寻找蜜源;

2) 找到蜜源的侦察蜂变为引领蜂,在采蜜后,它将该蜜源的信息送回蜂巢与跟随蜂分享,当该蜜源采完后,它变为侦察蜂继续搜寻新的蜜源;

3) 跟随蜂根据引领蜂携带的蜜源信息,按照一定的规则选择一个蜜源进行开采,然后重复步骤2),直到满足结束条件[11,12]。

2.2.2新阈值的优化算法

由于小波变换后每层的系数不同,利用单一阈值去噪的效果并不理想,因此有必要对阈值进行改进。在利用人工蜂群算法时,把信噪比(SNR)作为寻优目标函数,其中SNR越大表示图像去噪效果越好,其公式如下所示:

(7)

(8)

本文结合小波去噪的过程,对算法做如下改进:

1) 初始化设置:群体个数为SN、最大循环次数MaxCycles、控制参数Limit、问题的维数D及计数Bas,其中引领蜂、跟随蜂数目为SN/2,蜜源数目与引领蜂数目相等。

2) 引领蜂根据式(9),在蜜源附近寻找新的蜜源,采用轮盘赌法择优选择,当新蜜源比原蜜源好时,更新蜜源的位置,否则Bas加1。

Sm,n=Xm,n+Rm,n×(Xm,n-Xp,n)

(9)

其中p∈{1,2,…,SN},n∈{1,2…,D},且p≠n,Rm,n∈[-1,1]。Xm,n是当前的初始蜜源,它由式(4)产生,Xp,n是随机选择的一个邻域个体的蜜源。

3) 跟随蜂根据式(7),选择使SNR最大的蜜源对引领蜂进行选择。

4) 跟随蜂在步骤3)中选择的蜜源附近搜寻新的蜜源,根据式(9)更新蜜源的位置。

5) 在搜寻蜜源的过程中,如果未更新的次数超过一定的次数,即未更新计数Bas的值大于限制的参数Limit时,与该蜜源相对应的引领蜂变为侦察蜂,由式(10)产生新的蜜源。

Xmin,mn=Xmin,n+rand(0,1)×(Xmax,n-Xmin,n)

(10)

其中Xmax,n,Xmin,n是变量的最大值和最小值,rand(0,1)是[0,1]之间的随机数。

6) 返回算法的引领蜂阶段,继续迭代,直到迭代次数大于MaxCycles,此时的阈值是最优值(流程如图2所示)[11]。

图2 人工蜂群算法优化阈值流程图

3 实验结果及分析

为了验证本文算法,使用MATLAB 7.1对加入均值为0、方差为0.03的高斯白噪声的Lena图分别采用硬阈值函数、软阈值函数、文献[4]提出的方法和本文提出的方法进行了仿真实验。实验采用sym4小波进行三层分解,人工蜂群的个数SN=80,MaxCycles=3000,D=30,Limit=1/2×SN×D=1200,Bas初始值为0。实验结果如图3所示,可以看出本文算法在视觉方面具有较好的效果,在图3(c)以及图3(d)中帽子顶部和背景处出现了振荡现象,而在本文算法去噪结果(图3(e))中振荡现象有明显的消除。

图3 各阈值函数对Lena含噪图像去噪的效果比较

为了进一步比较本文提出的阈值函数与软硬阈值函数的性能,对加入不同方差的含噪图像分别用软、硬阈值方法,文献[4]方法及本文方法进行去噪,用信噪比(SNR)衡量去噪效果的好坏。从表1中可以看出本文阈值函数的去噪效果优于传统阈值函数以及文献[4]的去噪效果。

表1 不同方差的高斯噪声图像在不同阈值函数下去噪的信噪比

4 结 语

本文结合三次样条插值与人工蜂群算法提出了一种新的阈值函数与阈值。新的阈值函数不仅连续,而且高阶可导,可通过改变调节系数k1和k2以及结合新的阈值获得最好的去噪效果。从实验仿真中可以看出,相比传统软硬阈值函数和文献[4]法,该方法对图像去噪更加有效。从文中可以看出,阈值大小的估计直接影响着去噪的效果,而噪声方差的大小对阈值的估计起着关键的作用[13],因此如何正确地计算噪声方差的大小是后续研究的重点。

[1] Gonzalez R C, Woods R E, Ediins S L. DigitalImage Processing Using MATLAB[M].Beijing: Publishing House of Electronics Industry,2013:179-182.

[2] 林椹尠,宋国乡,薛文.图像的几种小波去噪方法的比较与改进[J].西安电子科技大学学:自然科学版,2004,31(4):626-629.

[3] 查宇飞,毕笃彦.基于小波变换的自适应多阈值图像去噪[J].中国图象图形学报, 2005,10(5):567-580.

[4] 王益艳,王晅,傅博,等.基于小波变换的图像自适应阈值去噪算法[J].微计算机应用,2008,19(1):15-18.

[5] 李骜,李一兵,孟霆,等.小波阈值去噪的收缩函数改进法[J].计算机工程与设计,2011,32(10):3450-3452.

[6] 武海洋,王慧,程宝,琴.基于最小Bayes风险的小波局部自适应图像去噪[J].计算机应用,2010,30(12):3238-3245.

[7] 袁开明,舒乃秋,孙云莲,等.基于阈值寻优法的小波去噪分析[J].武汉大学学报:工学版,2015,48(1):74-80.

[8] 李万高,赵雪梅.基于蜂群算法的多小波图像去噪研究[J].重庆邮电大学学报:自然科学版,2013,25(4):532-537.

[9] 高文仲,陈志云,曾秋梅.小波阈值图像去噪算法改进[J].华东师范大学学报:自然科学版,2013,2013(6):83-92.

[10] 张民选,罗贤兵.数值分析[M].南京:南京大学出版社,2013:78-84.

[11] 何鹏.人工蜂群算法研究[D].上海:华东理工大学,2014.

[12] 杨丹.人工蜂群算法的改进及研究应用[D].合肥:安徽大学,2014.

[13] 石强.于噪声水平估计的图像与视频去噪[D].合肥:合肥工业大学,2013.

APPLICATION OF CUBIC SPLINE INTERPOLATION IN WAVELET DENOISING

Zhang TaoZhang Xin*

(SchoolofBigDataandInformationEngineering,GuizhouUniversity,Guiyang550025,Guizhou,China)

To overcome the drawback of traditional wavelet threshold function in denoising, combining with cubic spline interpolation we proposed a new threshold function. The function has good smoothness, it overcomes the Gibbs effect caused by the discontinuity of hard threshold function while solves the constant deviation problem caused by soft threshold function as well. And the function can adaptively change its coefficients to achieve best denoising effect according to the size of image noise variance. Finally, it uses artificial bee colony algorithm to construct a new threshold for denoising. Experimental results showed that this denoising method, in either subjective feelings or objective evaluation, is better than soft threshold and hard threshold denoising effect. And compared with other improved wavelet denoising method, this algorithm also has a good effect.

Wavelet transformCubic spline interpolationThreshold functionArtificial bee colony algorithm(ABC)

2015-03-30。国家自然科学基金项目(11204046);贵州省科技厅工业攻关项目(黔科合GY字[2010]3056);贵州大学研究生创新基金项目(研理工2014007)。张涛,硕士生,主研领域:数字图像处理。张欣,副教授。

TP391

A

10.3969/j.issn.1000-386x.2016.08.019

猜你喜欢
蜜源样条插值
一元五次B样条拟插值研究
林下拓蜜源 蜂业上台阶
基于Sinc插值与相关谱的纵横波速度比扫描方法
指示蜜源的导蜜鸟
三次参数样条在机床高速高精加工中的应用
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
基于样条函数的高精度电子秤设计
蜜蜂采花蜜
一种改进FFT多谱线插值谐波分析方法
基于四项最低旁瓣Nuttall窗的插值FFT谐波分析