运动模糊图像的复原
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
运动模糊图像的复原
一、 设计目的:
1、提高分析问题、解决问题的能力,进一步巩固数字图像处理的基本原理和方法;
2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理和开发设计;
3、通过本课程设计,加深对数字图像复原的理解.
二、设计内容
1、自选黑白图像,并获得失真图像。
2、对失真图像进行FFT ,并从频谱上研究如何获得失真参数。
3、用获得的参数对失真图像加以恢复。
三、实验原理
匀速直线运动造成的模糊就可以运用数学推导出其退化函数。假设对平面匀速运动的
物体采集一副图像),(y x f ,并设)(0t x 和)(0t y 分别是景物在x 和y 方向的运动分量,T 是
采集时间,忽略其他因素,假设采集到的由于运动造成的模糊图像),(y x g 为:
⎰--=T
dt t y y t x x f y x g 000)](),([),( 其傅里叶变换为:
dxdy e dt t y y t x x f dxdy
e y x g v u G vy ux j T vy ux j )(2000)(2)](),([),(),(+-∞∞-∞∞-+-∞∞-∞
∞-⎰⎰⎰
⎰⎰⎥⎦⎤⎢⎣⎡--==ππ
改变计分顺序,有
dt dxdy e t y y t x x f y x G vy ux j T ])(),([),()(2000+-∞∞-∞∞-⎥⎦
⎤⎢⎣⎡--=⎰⎰⎰π
再利用傅里叶变换的移位性,有
d e v u F dt e v u F y x G T
t vy t ux j T t vy t ux j ⎰⎰+-+-==0)]()([20)]()([20000),(),(),(ππ
令
dt e u v H T t vy t ux j ⎰+-=0)]()([200),(π (5.3.8)
则
),(),(),(v u F v u H v u G =
如果给定运动量0x 和0y ,退化传递函数可直接(5.3.8)得到。
假设当前图像只在x 方向做匀速直线运动,即
⎩⎨⎧==0)(/)(0
0t y T at t x (5.3.10) 由上式可见,当t=T 时,),(y x f 在水平方向的移动距离为a 。将式(5.3.10)代入(5.3.8),得
ua j T T uat j T t ux j e ua ua
T dt e dt e v u H πππππ---===⎰⎰)sin(),(0/20)(20 上式表明,当n 为整数时,H 在u=n/a 处为零。
3、逆滤波复原
设M=N ,ˆ=H -1g =(WDW -1)-1g =WD -1W -1gv (5.4.9)
上式两边左乘W -1,,得
g W D f
W 111ˆ---=
(5.4.10)
由循环矩阵对角化的讨论可知,上式的各个元素可写成如下形式: )
,(),(),(ˆv u H v u G v u F = u,v=0,1,...,M-1 (5.4.11)
其中H(u,v)为滤波函数
将(5.2.52)代入(5.4.11),有
)
,(),(),(),(ˆv u H v u N v u F v u F += u ,v=0,1,…,M-1 (5.4.12) 对上式求逆变换就得到复原后的图像。
四、设计过程
1、获得失真图像,已知LEN=30,THETA=45
程序如下:
C=imread('cameraman.tif');
subplot(121);
imshow(C);
LEN=30;
THETA=45;
PSF=fspecial('motion',LEN,THETA);
MF=imfilter(C,PSF,'circular','conv');
subplot(122),imshow(MF);
imwrite(MF,'cameraman-MF.tif');
原始图像失真图像对失真图像做FFT,显示其频谱:
A=imread('cameraman-MF.tif')
B=fftshift(fft2(A));
imshow(log(abs(B)),[ ]);
[x,y]=ginput(3);
x =
135.1738
140.9920
147.1524
y =
122.8529
117.0348
110.5321