小波阈值图像降噪与MATLAB仿真设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

小波阈值图像降噪及MATLAB仿真

图像信号在生成和传输过程中常常因受到各种噪声的干扰和影响而使图像降质,这对后续图像的处理(如分割、压缩和图像理解等)将产生不利影响。为了抑制噪声,改善图像质量,便于更高层次的处理,必须对图像进行降噪预处理。

小波降噪的方法有多种,如利用小波分解与重构的方法滤波降噪、利用小波变换模极大值的方法去噪、利用信号小波变换后空域相关性进行信噪分离、非线性小波阈值方法去噪、平移不变量小波降噪法,以及多小波降噪等等。归结起来主要有三类:模极大值检测法、阈值降噪法和屏蔽(相关)降噪法。其中最常用的就是阈值法去噪,其基本思想就是利用图像小波分解后,各个子带图像的不同特性选取不同的阈值,从而达到较好的降噪目的。而且,小波变换本身是一种线形变换,因而对于类似于高斯噪声的效果较好。线性运算往往还会造成边缘模糊,小波分析技术正因其独特的时频局部化特性在图像信号和噪声信号的区分以及有效去除噪声并保留有用信息等方面较之传统的降噪具有明显的优势,且在降噪的同时实现了图像一定程度的压缩和边缘特征的提取。所以小波降噪具有无可比拟的优越性。小波降噪主要优点有:

低熵性,小波系数的稀疏分布,使得图象变换后的熵降低;

多分辨率,由于采用了多分辨率的方法,所以可以非常好地刻画信号的非平稳特征,如边缘、尖峰、断点等;

去相关性,因为小波变换可以对信号进行去相关,且噪声在变换后有白化趋势,所以小波频域比时域更利于降噪;

选基灵活性,由于小波变换可以灵活选择变换基,从而对不同应用场合、不同的研究对象,可以选用不同的小波函数,以获得最佳的效果。

一、阈值去噪法简述

1992年,斯坦福大学的Donoho D L 和Johnstone 教授提出一种具有良好的统计优化特性的降噪方法,称作“Wavelet Shrinkage ”(即阈值收缩法)。

该方法的主要思想是:基于图像和噪声在经小波变换后具有不同的统计特性:图像本身的能量对应着幅值较大的小波系数,主要集中在高频(LL );噪声能量则对应着幅值较小的小波系数,并分散在小波变换后的所有系数中。根据该特征,设置一个阈值门限,认为大于该阈值的小波系数的主要成份为有用的信号,给予收缩后保留;小于该阈值的小波系数,主要成份为噪声,予以剔除,这样就可以达到降噪的目的。

降噪时,通常认为低通系数含有大量的图像能量,一般不作处理,只对剩余三个高通部分进行处理。因此,一次阈值降噪并不能完全去除噪声,还需要对未作处理的低频部分(LL )再次进行小波分解和阈值去噪,直到实际图像与估计图像的偏差达到最小值。

但是,随着分解和降噪次数的增加,小波系数中的噪声能量越来越少,并且趋于分散,降噪的效果将逐渐降低。一般来说,进行3-4层小波分解和降噪就可以达到满意的降噪效果。

小波阈值降噪的基本思路是:

(1)先对含噪信号()k f 做小波变换,得到一组小波系数k j W ,;

(2)通过对k j W ,进行阈值处理,得到估计系数k j W

,^,使得k j W ,^与k j W ,两者的差值尽可能小;

(3)利用k j W ,^

进行小波重构,得到估计信号()k f 即为降噪后的信号。

Donoho 提出了一种非常简洁的方法对小波系数k j W ,进行估计。对()k f 连续做几次小波分解后,有空间分布不均匀信号()k s 各尺度上小波系数k j W ,在某些特定位置有较大的值,这些点对应于原始信号()k s 的奇变位置和重要信息,而其他大部分位置的k j W ,较小;对于白噪声()k n ,它对应的小波系数k j W ,在每个尺度上的分不都是均匀的,并随尺度的增加,k j W ,系数的幅值减小。因此,通常的降噪办法是寻找一个合适的数λ作为阈值(门限),把低于λ的小波函数k j W ,(主要由信号()k n 引起),设为零,而对于高于λ的小波函数k j W ,(主要由信号()k s 引起),则予以保留或进行收缩,从而得到估计小波系数k j W ,^

,它可理解为基本由信号()k s 引起的,然后对k

j W ,^

进行重构,就可以重构原始信号。

估计小波系数的方法如下,取: ()N log 2σλ= (4-1) 定义: ⎪⎩

⎪⎨⎧≤≥=λλk j k j k j k j W W W W ,,,,^

,0, (4-2)称之为硬阈值估计方法。 一般软阈值估计定义为

()()⎪⎩

⎪⎨⎧≤≥-=λλλk j k j k j k j W W k Wj W sign W ,,,,^

,0,, (4-3) 两种阈值方法各有差异,前者具有连续性,在数学上易于处理,而后者更接近实际情况。

阈值化处理的关键是阈值的选择,如阈值太小,降噪后仍留有噪声,但阈值如果太大,重要的信号与图像特征会被滤掉,引起偏差。

二、 基于MATLAB 的小波降噪函数简介

常用的图像降噪方式是小波阈值降噪方法。这是一种实现简单而效果较好的降

噪方法,阈值降噪方法的思想很简单,就是对小波分解后的各层系数模大于和小于某阈值的系数分别进行处理,然后利用处理后的小波系数重构出降噪后的图像。在阈值降噪中,阈值函数体现了对小波分解系数的不同处理策略和不同的估计方法。常用的阈值函数有硬阈值函数和软阈值函数。硬阈值函数可以很好地保留图像边缘等局部特征,但图像会出现伪吉布斯效应等视觉失真等现象;而软阈值处理相对较光滑,但可能会造成边缘模糊等失真现象,为此人们提出了半软阈值函数。

小波阈值降噪方法处理阈值的选取,另一个关键因素是阈值的具体估计。如果阈值太小,降噪后的图像仍然存在噪声;相反如果阈值太大,重要图像特征有被滤掉,引起偏差。从直观上讲,对于给定的小波系数,噪声越大,阈值就越大。

MATLAB中实现图像的降噪,主要是阈值获取和图像降噪实现两个方面。

1 阈值获取

MATLAB中实现阈值获取的函数有ddencmp、select、wbmpen和wdcbm2。这里主要介绍函数ddencmp。

函数ddencmp的功能是获取降噪或压缩的默认值。该函数是降噪和压缩的导向函数,它给出一维或二维信号使用小波或小波包进行降噪和压缩一般过程的所有默认值。

其语法格式为:

[THR,SORH,KEEPAPP,CRIT]=ddencmp(IN1,IN2,X)

[THR,SORH,KEEPAPP]= ddencmp(IN1,‘wv’,X)

[THR,SORH,KEEPAPP,CRIT]= ddencmp(IN1,‘wp’,X)

2 阈值降噪

MATLAB中实现阈值降噪的函数有wden、wdencmp、wpdencmp、wthresh、wpthcoef

相关文档
最新文档