用逆滤波和维纳滤波进行图像复原
在图像的获取、传输以及记录保存过程中,由于各种因素,如成像设备与目 标
物体的相对运动,大气的湍流效应,光学系统的相差,成像系统的非线性畸变, 环境的随机噪声等原因都会使图像产生一定程度的退化, 图像退化的典型表现是 图像出现模糊、失真,出现附加噪声等。
由于图像的退化,使得最终获取的图像 不再是原始图像,图像效果明显变差。
为此,要较好地显示原始图像,必须对退 化后的图像进行处理,恢复出真实的原始图像,这一过程就称为图像复原。
图像复原技术是图像处理领域一类非常重要的处理技术, 主要目的就是消除 或减轻在图像获取及传输过程中造成的图像质量下降即退化现象, 恢复图像的本 来面目。
图像复原的过程是首先利用退化现象的某种先验知识,建立退化现象的数学模 型,然后再根据退化模型进行反向的推演运算,以恢复原来的景物图像。
一、 实验目的
1了解图像复原模型
2了解逆滤波复原和维纳滤波复原
3掌握维纳滤波复原、逆滤波的 MatIab 实现
二、 实验原理
1、逆滤波复原
如果退化图像为g x, y ,原始图像为f x,y ,在不考虑噪声的情况下,其 退化
模型可用下式表示
g χ,y rgE f
χ- ,y- - d d (12-25)
由傅立叶变换的卷积定理可知有下式成立
G u,v =H u,v F u,v
(12-26)
式中,G u,v 、H u,v 、F u,v 分别是退化图像 g x,y 、点扩散函数
h x y 、原始图像f X, y 的傅立叶变换。
所以
(12-27)
由此可见,如果已知退化图像的傅立叶变换和系统冲激响应函数 (“滤被” f x,y =F 4 F u,v =F G u,v H u,v
传递函数),则可以求得原图像的傅立叶变换,经傅立叶反变换就可以求得原始图像f x,y,其中G u,v除以H u,v起到了反向滤波的作用。
这就是逆滤波复
原的基本原理。
在有噪声的情况下,逆滤波原理可写成如下形式
G u,v N u,v F u,v = 丿 H (u,v )H (u,v )
(12-28)
式中,N u,v 是噪声n x, y 的傅立叶变换。
2、维纳滤波复原
维纳滤波就是最小二乘滤波,它是使原始图像 f x,y 与其恢复图像? x,y
之间的均方误差最小的复原方法。
对图像进行维纳滤波主要是为了消除图像中存 在的噪声,对于线性空间不变系统,获得的信号为
g X,y =
. . f :- / h X — : , y — : d :d : n x, y (12-29)
为了去掉g x, y 中的噪声,设计一个滤波器 m X, y ,其滤波器输出为? x,y , 即
(12-30)
使得均方误差式
e 2 (12-31)
成立,其中? x, y 称为给定g x, y 时f x, y 的最小二乘估计值。
设S f u,v 为f x, y 的相关函数R f x, y 的傅立叶变换,S n u,v 分别
为n x,y 的相关函数R 1 x, y 的傅立叶变换,H u,v 为冲激响应函数h x, y 的
傅立叶变换,有时也把S f u,v 和S n u, v 分别称为f x,y 和n x, y 的功率谱密 度,则滤波器m x,y 的频域表达式为
(12-32)
g I*, : m χγ, y 「: d d :
1 H u,v 口 ∣H(u ,vf
I H M f,:|
?x, y =
x, y - ? x, y
于是,维纳滤波复原的原理可表示为
(12-33)
对于维纳滤波,由上式可知,当H u,v =0时,由于存在SI U,V 项,所以
Sf(U )V)
H U )V 不会出现被O 除的情形,同时分子中含有H u,v 项,在H u,v ]=O 处,
了逆滤波;当Sn U)V -H U)V 时,H U ,V =0,表明维纳滤波避免了逆滤波中
S f (U)V)
出现的对噪声过多的放大作用;当 S n U)V 和S f U)V 未知时,经常用K 来代替
S n(U)V )于是
S f U)V '疋
其中,K 称为噪声对信号的功率谱度比,近似为一个适当的常数。
这是实际 中应
用的公式。
三、MATLA 实现
clear;
l=imread('rice.tif);
imshow(l);
I=rgb2gray(l); %将原图像转化为黑白图
figure;
SUbPlOt(2,2,1);imshow(I);title('转成黑白图像');
[m,n]=size(I);
F=fftshift(fft2(I));
k=0.0025;
for u=1:m
for v=1: n
H(U)V)=exp((-k)*(((u-m∕2)^2+(v - n∕2)^2)^(5∕6)));
end end
G=F.*H;
IO=real(ifft2(fftshift(G)));
I? U)V =
H u,v
H u,v 2
g 2 Sn(U,V ∖
H (u,v 十 ——
' Sf(u,v) G(u,v H U)V 三0。
当 S n U)V - S f U)V 时, H U)V > 吋,此时维纳滤波就变成
I1=im noise(ui nt8(IO),'gaussia n',0,0.001)
SubPlOt(2,2,2);imshow(uint8(I1));title('模糊退化且添加高斯噪声的图像');
F0=fftshift(fft2(I1));
F1=F0.∕H;
I2=ifft2(fftshift(F1));
SUbPlOt(2,2,3);imshow(uint8(I2));title('全逆滤波复原图');
K=0.1;
for u=1:m
for v=1: n
H(u,v)=exp(-k*(((u-m∕2)^2+(v- n∕2)^2)^(5∕6)));
H0(u,v)=(abs(H(u,v)))^2; H1(u,v)=H0(u,v)/(H(U,v)*(H0(u,v)+K));
end
end
F2=H1.*F0;
I3=ifft2(fftshift(F2));
SUbPlOt(2,2,4);imshow(uint8(I3));title('维纳滤波复原图');
四、运行结果
FlIe Edi t Vi ⅛w Insert Tools Desktop 世ιħdo* HtlP
□ Q S l⅜¼ Q ① ® i 遲□ B T B ⅞
复原后图像:
五、心得体会
通过这次做实验报告,使我对逆滤波和维纳滤波有了一定的了解,通过对运行结果的观察,了解了逆滤波和维纳滤波对运动模糊图像的联系和区别。