课题的目的及意义
由于视频降噪是属于图像处理中的图像增强和复原技术,由于近年来数字图像的广泛应用,所以视频降噪也是当前研究的热点问题之一。而本课题主要研究的是视频降噪算法的研究,并提出自己的算法。在图像采集和传输过程中,信号常常会受到随机噪声的干扰。因而破坏了图像像素间的结构、纹理、内容等方面的相关性。使得图像失真,并且难于压缩、识别和理解。因此,在大多数图像应用场合都需要降低图像中的噪声,使图像恢复本来的面目。由于低层的图像预处理算法处理的数据量大,用一般的软件来实现会比较慢,而且对于一些实时性要求比较高的系统,如视频图像实时处理系统,处理速度往往是要考虑的关键要素,因为一旦速度跟不上,实时性也就无从谈起。针对图像预处理阶段运算结构比较简单的特点,所以硬件实现是可以满足这个要求的。这也是现在图像处理领域的热点问题之一。
1.4 论文的主要内容
全文的主要内容共分为六章,分别为:
第一章 绪论。综合介绍了图象处理的背景、应用展望,以及课题选择的目的和意义。
第二章 SOPC技术介绍。首先介绍了SOPC技术及实现的方式,然后介绍试验中所需要用到的软件QuartusⅡ的设计流程,最后介绍了硬件描述语言VHDL。
第三章 方案介绍、比较及选择。首先介绍几种典型的降噪方法,并比较它们的优缺点,然后按照其优缺点进行选择,从中选出自己的方案。
第四章 中值滤波的硬件实现。先介绍了中值滤波实现的总体框架,再具体介绍了框架中各个组件的功能及实现。
第五章 在SOPC中建立系统。先对组件进行选择并生成系统,然后再将生成的片上系统于硬件实现的滤波块进行连接,建立顶层文件。
第六章 功能模块与系统的仿真。先对各个模块进行仿真,然后再对系统进行仿真。
降噪方案介绍、比较及选择
现在数字图像处理的方法主要分成两大部分:一是空域分析法,二是频域分析法。空域分析法就是对图像矩阵进行处理;频域分析法是通过图像变换将图像从空域变换到频域,从另一个角度来分析图像的特征并进行处理。我们研究了现有的降噪算法。常有的降噪方法主要可以分为线性滤波技术和非性滤波技术。线性滤波主要是基于均值操作的,其对象主要是高斯白噪声,如低通滤波器、高通滤波器等是属于线性滤波器范畴的滤波方法。由于图像的边缘轮廓含有大量的高频信息,所以在消除噪声的同时低通滤波器降使图像的边缘变得模糊。反之为了提升边缘轮廓可以采用高通滤波器,但噪声同时也将被加强。非线性滤波方法主要是中值滤波,主要针对椒盐噪声,也被用来去除诸如误码和卫星“闪点”等脉冲噪声。中值滤波在消除噪声的同时能保护边缘信息,特别是对于冲击噪声尤为有用,但是对于二维信号(如数字图像中对于图像的线条或边缘等比较复杂的情况)或者更高维信号,可能会引人更多的信号失真和特性丢失。现在图像变换是我们对图像进行处理的另一个思维方向。从古老的傅立叶变换发展到余弦变换,再到现在风靡全球的小波变换,他们都代表了空间域图像的变换域表示方法。我们选择了较具有代表性的算法来分析,在总结现有多种算法的基础上进行了改进并提出了自己的算法,以达到降噪质量的提高。
3.1 均值滤波
均值滤波的基本思想是建立一个矩形的滤波窗口,其大小可以自由设定,经过实验证明:3×3的大小是比较好的,而且一般的中值滤波也是取的3×3的窗口,所以这里也取3×3窗口。中值滤波是以要处理的象素点以滤波窗口为中心,然后读取滤波窗口中所有象素的灰度值,计算他们的均值(计算公式: 所有象素的灰度值之和/滤波窗口大小),然后用这个求出的均值去替代所处理的象素灰度值。均值滤波的数学表达式如是式(3-1)所示:
(3-1)
在公式(3-1)中g(x, y)为输出图像,f( i, j)为原图像,W表示滤波窗口,M表示滤波窗口大小。均值滤波的实现起来比较简单,但这种方法存在产生模糊边缘,而且也没有利用到像素之间的相关信息等缺点。在对算法进行思考后,我们可以进行一些改进措施来保护边缘。改进后的均值滤波思想是:首先进行边缘保护,判断该点是否是边缘,如果是边缘点则保护起来;不是边缘点就继续向下执行,进行噪声检测,然后根据噪声等级实现自适应降噪。由于改进后的方法实现起来十分地复杂,而且还需要进行几次阈值的确定,实现起来比较麻烦,所以我们不采用这种方法。
3.2 维纳滤波
维纳滤波是一种自适应的线性滤波方法,它是用来解决从噪声中提取信号问题的一种过滤的方法,它能根据图像的局部方差调整滤波器的输出,它的最终目标是使恢复图像f(x,y)与原始图像f(x,y)的均方误差最小。如公式(3-2)所示:
(3-2)
3.3 标准中值滤波
标准中值滤波的原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替。中值的定义如下:一组数 把n个数按照值的大小顺序排列如下:
(3-3)
在式(3-3)中y为该序列的中值。把一个点的特定长度或形状的邻域称作窗口。对于二维中值滤波,可利用某种形式的二维窗口,如:方形、圆形、十字形等。设式(3-4) 表示数字图像各点的灰度值,如下式所示:
(3-4)
那么滤波窗口为A的二维中值滤波可定义如式(3-5):
(3-5)
虽然标准中值滤波技术在衰减噪声的同时能较好的保护图像边缘,但由于其仅考虑滤波窗口内的输入数据的排序信息,而未考虑输入数据的时序源信息,故在图像处理中会产生边缘抖动,并会删除掉一些重要的图像细节,如细线,拐角等。所以要对算法进行改进。
3.4 图像小波域滤波
小波分析用于图像去噪处理,主要是针对图像信号与噪声信号经小波变换后在不同的分辨率呈现不同的规律,在不同的分辨率下,设定阈值门限,调整小波系数,达到图像去噪的目的。
在小波系数进行取舍之前,实际上按照一定准则(或者阈值化)将小波系数划分为两类:一类是重要的、规则的小波系数;另一类是被看作非重要的或者受噪声干扰较大的小波系数。通常以小波系数的绝对值作为小波系数的分类单元。小波系数绝对值趋向于零,意味着小波系数所包含的信息量受噪声干扰强烈。最常用的阈值化去噪方法:一是默认阈值消噪处理,即在消噪处理过程中采用程序中设定的阈值,对分解信号进行分类处理,以求消除噪声;二是给定软(或硬)阈值消噪处理,阈值通过某一个经验公式获得,该阈值比默认的阈值去噪效果更有说服力。
对于“软阈值化”,绝对值小于阈值 的小波系数数值用零代替;绝对值大于阈值 的小波系数数值用 来缩减。如式(3-6)所示:
(3-6)
式中,W表示小波系数的数值;sgn( )是符号函数,当数值大于零,符号为正,反之符号为负。对于“硬阈值化”,仅仅保留绝对值大于阈值 的小波系数,并且被保留系数与系数相同(没有被缩减),如式(3-7)所示:
(3-7)
阈值化处理的关键在于选择合适的阈值 。如果阈值太小,处理后的信号仍有噪声存在;阈值太大,重要的图像特征将被滤掉,引起偏差。
3.5 基于图像锐化和平滑的滤波技术
图像平滑往往使图像中的边界、轮廓变得模糊,为了减少这种不利效果的影响,我们对滤波技术进行了改进,利用到了图像锐化技术,使图像的边缘变得更清晰。图像锐化的目的是使图像的边缘、轮廓线以及图像的细节变得清晰。经过平滑的图像变得模糊是因为图像受到平均或积分运算,那我们对其进行逆运算就可以使图像变得清晰。
LUM滤波器是一类新的基于排序的滤波器,主要用于信号和图像处理的各种应用中。该滤波结构通过两个参数分别调整LUM滤波器的平滑和锐化程度,从而实现不同功能,因此该滤波器具有通用性且易于实现。
设W是一个以 为中心像素,具有N(N为奇数)个像素点的窗口函数,即:
(3-8)
对于二维信号,可把窗口看成一个简单的 方窗,排序后的集合表示如式(3-9):
(3-9)
下面我们分别给出LUM平滑器、LUM锐化器和通用LUM滤波器的定义。
3.5.1 LUM平滑器
LUM平滑器是LUM滤波器的一个子滤波结构,主要用于平滑图像。定义滤波输出:
(3-10)
其中 。从定义可知。如果 ,那么LUM平滑器的输出为 ;如果 ,则输出为 ;否则,输出为 。参数 k用于控制滤波器的平滑特性,通过调节k值,可折衷噪声平滑和细节保留这一矛盾。k值越小,其保留细节的特性越突出,k值越大,其噪声平滑的效果越好。因此,可根据图像的不同特点及不同滤波目的,动态的调节k值以获得不同的滤波效果。
3.5.2 LUM锐化器
LUM锐化器是LUM滤波器的另一个子滤波结构,其作用是锐化图像,增强图像的边缘。具有参数 的LUM锐化器的输出 的定义如下:
(3-11)
其中 。通过改变参数 的值可得到不同程度的锐化效果, 的值越小,锐化的效果越明显。由于LUM锐化器的边缘增强的同时不会扩大背景噪声,也不会误删除小的信号,因此是一个较好的保留细节和增强边缘的滤波器。
3.5.3 LUM滤波器
为得到一个既能平滑图像,又能增强边缘的滤波器,把LUM平滑器和LUM锐化器组合在一起是很有必要的,这就是通常所说的LUM滤波器。这样LUM滤波器的定义如下:
(3-12)
从式(3-12)可以看出,只需要调节参数k和l就可以实现LUM滤波器的不同功能,因此,LUM滤波器是一个简单易实现且功能强大的滤波器,它避免传统线性边缘增强滤波器的一些缺点,具有极强的可设计性和极大的灵活性,可根据需要来设计实现不同功能,例如:可把它设计成对附加噪声不敏感的滤波器,也可把它设计成在去除脉冲噪声的同时能增强的滤波器等。
3.6 几种算法的比较及选择
(1)4点邻域均值滤波及5×5中值滤波和维纳滤波以图像模糊为代价,可以不同程度地滤除相关噪声。4点窗口邻域均值滤波由于取的邻域较小,滤除效果不是很好,仍有不少噪声残留,但图像模糊程度却是较小的。但如果增大了邻域范围,能够更好滤除噪声,但图像的模糊程度加重;5×5中值滤波窗口取得相对较大,能够较好地滤除噪声,但同时图像的模糊程度也随之增大,这主要和所选取的窗口大小有关。所以用3×3的中值滤波窗口就能在图像模糊程度不大的前提下实现对噪声的滤除。
(2)原始图像经过均值滤波后,噪声得到了抑制,图像也得到了平滑,但同时也使图像边缘变得模糊。中值滤波能较好地保护边界,但对图像中的细节处理不理想。经实验证实,中值滤波能有效去除图像中的噪声点,特别是在一片连续变化缓和的区域中(比如人的皮肤),几乎能完全去除灰度突变点(可以认为是噪声点),也因为如此,中值滤波不适合用在细节点多或细节线多的图像中,因为细节点有可能被当成噪声点去除。这也是中值滤波的一个比较大的缺点。
(3)尽管维纳滤波方法是按最小原则导出的,在理论上更精确,维纳滤波虽能使噪声得到抑制,并较好保存图像的边缘和高频细节信息,但是去噪后的图像显得很模糊。
(4)小波域去噪的图像,只有当阈值选择合适,才能使质量明显好转信噪比有较大的提高。如果在阈值得选择上选取得不恰当得话,那么也不能得到清晰得图像。
(5) LUM滤波器由于是基于平滑与锐化,所有说是可以突出图像中模糊的部分,它可以用来处理经过均值滤波、中值滤波和维纳滤波后的图像,而且通过对LUM滤波器中的两个参数进行设置,就可以实现理想滤波了。
所以通过上面对几种算法的比较可以看出,经过维纳滤波和均值滤波的图像的模糊程度很大,不能很好地恢复图像,在去除噪声的同时也损失的很多的图像信息。而小波域去噪虽然能很好地实现噪声地去除,但在实现上和对阈值的选取上有很多的要求,实现起来比较地繁琐。LUM滤波器的特点是使图像中的细节部分突出或增强被模糊了的细节,而这一般不用的在对图像首先的预处理上,一般使用于处理后的图像。综上所述,这次设计选取中值滤膜来实现图像的降噪,因为如果用3×3窗口的中值滤波去处理带有噪声的图像,那么由于窗口很小,那么所损失的图像的信息就很少,而且对图像也不会造成很明显的模糊,所以选择中值滤波进行设计。
3.7 中值滤波与LUM滤波器的仿真
通过仿真后我们可以看到,将LUM滤波器和中值滤波结合起来用于去掉图像的椒盐噪声有很好的效果。而且LUM滤波器现在的技术也比较成熟了,所以这里就用中值滤波来实现图像去噪,而且用SOPC技术来实现图像降噪现在也十分流行。LUM滤波和中值滤波的仿真图如图3-1到图3-5。