第06章图像复原ppt课件.ppt
《第06章图像复原ppt课件.ppt》由会员分享,可在线阅读,更多相关《第06章图像复原ppt课件.ppt(65页珍藏版)》请在三一办公上搜索。
1、1,第6章 图像复原(2)image restoration 运动模糊复原,2,3,4,5,(a)模糊图像(b)恢复后的图像,匀速运动引起的图像模糊,沿水平方向匀速运动造成的模糊图像的恢复处理,在获取图像过程中,由于景物和摄像机之间的相对运动,往往造成图像的模糊。其中由均匀直线运动所造成的模糊图像的恢复问题更具有一般性和普遍意义。因为变速的、非直线的运动在某些条件下可以看成是均匀的、直线运动的合成结果。,6,由匀速运动引起的模糊,设图像f(x,y)有一个平面运动,令 x0(t)和 y0(t)分别为在 x 和 y 方向上运动的变化分量,t 表示运动的时间。记录介质的总曝光量是在快门打开到关闭这段
2、时间的积分。则模糊后的图像为,其中 g(x,y)为模糊后的图像。上式就是由目标物或摄像机相对运动造成图像模糊的模型。,7,令G(u,v)为模糊图像g(x,y)的傅立叶变换,两边傅立叶变换得:,由匀速运动引起的模糊,改变积分次序,则有,由傅立叶变换的位移性质,可得,8,则可得,G(u,v)=H(u,v)F(u,v),令,这是已知退化模型的傅立叶变换式。若 x(t)、y(t)的性质已知,传递函数可直接求出,因此,f(x,y)可以恢复出来。,由水平方向均匀直线运动造成的图像模糊的模型及其恢复用以下两式表示:,由匀速运动引起的模糊,9,可产生一个反映匀速直线运动的二维滤波器(以水平线为0角度基准,按逆
3、时针旋转角度Theta方向移动Len个像素)。,用MATLAB函数产生运动模糊图像,PSF=fspecial(motion,Len,Theta),例:PSF=fspecial(motion,15,35),10,PSF:is the point-spread functionNSR:is the noise-to-signal power ratio of the additive noiseNCORR:is the autocorrelation function of the noise ICORR:is the autocorrelation function of the origina
4、l image,用MATLAB函数复原模糊图像,J=deconvwnr(I,PSF,NSR)J=deconvwnr(I,PSF,NCORR,ICORR),Note that the output image J could exhibit ringing introduced by the discrete Fourier transform used in the algorithm.To reduce the ringing use I=edgetaper(I,PSF)prior to calling DECONVWNR.,11,edgetaper(I,PSF)函数,由于图像的边界对图像而
5、言是不连续的,因此复原操作常常会产生“环”。复原前可用edgetaper(I,PSF)函数进行预处理。,The EDGETAPER function blurs the edges of orignal image I using the PSF,and reduces the ringing effect in image deblurring methods that use the discrete Fourier transform,such as DECONWNR,DECONVREG,and DECONVLUCY.,12,I=imread(cameraman.tif);PSF=fsp
6、ecial(gaussian,120,20);edgesTapered=edgetaper(I,PSF);figure,imshow(I,)figure,imshow(edgesTapered,),13,clear all;close all;clcI=imread(football.jpg);figure(1);imshow(I);%设置运动位移为28个像素LEN=28;%设置运动角度为15度THETA=15;%建立二维仿真线性运动滤波器PSFPSF=fspecial(motion,LEN,THETA);%用PSF产生退化图像MF=imfilter(I,PSF,circular,conv);
7、figure(2);imshow(MF);%用Wiener滤波消除运动模糊的图像wnr=deconvwnr(MF,PSF);figure,imshow(wnr);,例:用MATLAB程序实现由于 运动图像模糊和去除运动模糊。,14,clear all;close all I=im2double(imread(cameraman.tif);imshow(I);title(Original Image(courtesy of MIT);%Simulate a motion blur.LEN=21;THETA=11;PSF=fspecial(motion,LEN,THETA);blurred=imf
8、ilter(I,PSF,conv,circular);%Simulate additive noise.noise_mean=0;noise_var=0.0001;blurred_noisy=imnoise(blurred,gaussian,noise_mean,noise_var);figure,imshow(blurred_noisy),title(Simulate Blur and Noise)%Try restoration assuming no noise.estimated_nsr=0;wnr2=deconvwnr(blurred_noisy,PSF,estimated_nsr)
9、;figure,imshow(wnr2)title(Restoration of Blurred,Noisy Image Using NSR=0)%Try restoration using a better estimate of the noise-to-signal-power ratio.estimated_nsr=noise_var/var(I(:);wnr3=deconvwnr(blurred_noisy,PSF,estimated_nsr);figure,imshow(wnr3)title(Restoration of Blurred,Noisy Image Using Esti
10、mated NSR);,15,16,clear all;close all;clcI=imread(football.jpg);figure,subplot(1,3,1);imshow(I);title(football);LEN=15;THETA=45;PSF1=fspecial(motion,LEN,THETA);%motion blurBlurred1=imfilter(I,PSF1,circular,conv);wnr1=deconvwnr(Blurred1,PSF1);%motion subplot(1,3,2);imshow(wnr1);title(Motion Restored,
11、True PSF);V=0.02;PSF2=fspecial(gaussian,15,0.2);%Gaussian lowpassBlurred2=imfilter(I,PSF2,conv);BlurredNoisy2=imnoise(Blurred2,gaussian,0,V);wnr2=deconvwnr(BlurredNoisy2,PSF2);%noisesubplot(1,3,3);imshow(wnr2);title(Noise Restored,True PSF),例:运动模糊复原与噪声模糊复原比较。,17,clear;close all;clcI=imread(football.
12、jpg);figure,imshow(I);xlabel(原图像)%给指定图象添加高斯噪声。V=0.002;Noise=imnoise(I,gaussian,0,V);figure,imshow(Noise);xlabel(高斯噪声图像)%给指定图象添加运动模糊和高斯噪声。len=28;theta=11;PSF=fspecial(motion,len,theta);Motion_Blur=imfilter(I,PSF,circular,conv);Motion_Blur_Noise=imnoise(Motion_Blur,gaussian,0,V);figure,imshow(Motion_B
13、lur_Noise);xlabel(运动模糊噪声图像)NP=V*prod(size(I);Edged=edgetaper(Motion_Blur_Noise,PSF);reg1,Lagra=deconvreg(Edged,PSF,NP);,edgetaper(I,PSF)函数举例,18,clear all;close all;clcI=imread(football.jpg);I=imcrop(I);%I=I(10+1:256,222+1:256,:);len=28;theta=14;PSF=fspecial(motion,len,theta);%真实PSFMotion_Blur=imfilt
14、er(I,PSF,circular,conv);figuresubplot 221;imshow(Motion_Blur);xlabel(运动模糊图像)de_Motion_Blur1=deconvwnr(Motion_Blur,PSF);subplot 222;imshow(de_Motion_Blur1);xlabel(真实PSF Winner复原)PSF2=fspecial(motion,2*len,theta);%长PSFde_Motion_Blur2=deconvwnr(Motion_Blur,PSF2);subplot 223;imshow(de_Motion_Blur2);xlab
15、el(长PSF Winner复原)PSF3=fspecial(motion,len,2*theta);%陡PSFde_Motion_Blur3=deconvwnr(Motion_Blur,PSF3);subplot 224;imshow(de_Motion_Blur3);xlabel(陡PSF Winner复原),例:比较真实PSF函数和估计PSF函数恢复运动模糊图像。,19,20,%接上例:运动模糊复原与噪声模糊复原比较。NP=(V*prod(size(I).2;%噪声功率NPOW=sum(NP(:)/prod(size(I);%噪声自相关函数(ACF)NCORR=fftshift(real
16、(ifftn(NP);IP=abs(fftn(im2double(I).2;%原始图像的功率IPOW=sum(IP(:)/prod(size(I);%图像自相关函数(ACF)ICORR=fftshift(real(ifftn(IP);wnr3=deconvwnr(BlurredNoisy1,PSF1,NCORR,ICORR);wnr4=deconvwnr(BlurredNoisy2,PSF2,NCORR,ICORR);subplot(1,2,1);imshow(wnr3);subplot(1,2,2);imshow(wnr4);,利用图像自相关信息完成图像维纳滤波复原,除了利用PSF参数进行图
17、像复原外,MATLAB还提供了利用图像自相关信息,即图像自相关函数ICORR和噪声的自相关函数NCORR来完成图像复原质量的方法。,21,I=checkerboard(8);noise=0.1*randn(size(I);PSF=fspecial(motion,21,11);Blurred=imfilter(I,PSF,circular);BlurredNoisy=im2uint8(Blurred+noise);NP=abs(fftn(noise).2;NPOW=sum(NP(:)/numel(noise);NCORR=fftshift(real(ifftn(NP);IP=abs(fftn(I
18、).2;IPOW=sum(IP(:)/numel(noise);ICORR=fftshift(real(ifftn(IP);ICORR1=ICORR(:,ceil(size(I,1)/2);NSR=NPOW/IPOW;subplot(221);imshow(BlurredNoisy,);title(模糊和噪声图像);subplot(222);imshow(deconvwnr(BlurredNoisy,PSF,NSR),);title(deconbwnr(A,PSF,NSR);subplot(223);imshow(deconvwnr(BlurredNoisy,PSF,NCORR,ICORR),
19、);title(deconbwnr(A,PSF,NCORR,ICORR);subplot(224);imshow(deconvwnr(BlurredNoisy,PSF,NPOW,ICORR1),);title(deconbwnr(A,PSF,NPOW,ICORR_1_D);,维纳滤波复原MATLAB编程,22,例:使用函数deconvwnr对有噪声模糊图象进行复原重建。clear;close allI=imread(flowers.bmp);I=imcrop(I)%I=I(10+1:256,222+1:256,:);imshow(I);xlabel(原图像)%产生一个运动模糊图像,然后显示le
20、n=28;theta=15;PSF=fspecial(motion,len,theta);Motion_Blur=imfilter(I,PSF,circular,conv);figure,subplot 221;imshow(Motion_Blur);xlabel(运动模糊图像)%用不带参数的函数deconvwnr重建运动模糊图像,然后显示de_Motion_Blur=deconvwnr(Motion_Blur,PSF);subplot 222;imshow(de_Motion_Blur);xlabel(运动模糊图像复原)%在上述运动模糊图像中添加随机噪声,然后显示Noise=0.1*rand
21、n(size(I);Motion_Blur_Noise=imadd(Motion_Blur,im2uint8(Noise);subplot 223;imshow(Motion_Blur_Noise);xlabel(运动模糊噪声图像)%用函数deconvwnr重建运动模糊噪声图像,然后显示de_Motion_Blur_Noise=deconvwnr(Motion_Blur_Noise,PSF);subplot 224;imshow(de_Motion_Blur_Noise);xlabel(运动模糊噪声图像维纳复原),23,24,%接上页%用带参数NSR的函数deconvwnr重建,然后显示NSR
22、=sum(Noise(:).2)/sum(im2double(I(:).2);de_Motion_Blur_Noise_SNR=deconvwnr(Motion_Blur_Noise,PSF,NSR);figure(3)subplot 221;imshow(I);xlabel(原图像)subplot 222;imshow(Motion_Blur_Noise);xlabel(运动模糊噪声图像)subplot 223;imshow(de_Motion_Blur_Noise_SNR);xlabel(带参数NSR维纳复原)%用带参数NCORR和ICORR的函数deconvwnr重建,然后显示NP=ab
23、s(fftn(Noise).2;NCORR=fftshift(real(ifftn(NP);IP=abs(fftn(im2double(I).2;ICORR=fftshift(real(ifftn(IP);de_Motion_Blur_Noise_NCORR_ICORR=deconvwnr(Motion_Blur_Noise,PSF,NCORR,ICORR);subplot 224imshow(de_Motion_Blur_Noise_NCORR_ICORR);xlabel(带参数NCORR和ICORR维纳复原),25,26,例6.1 维纳滤波复原的具体实现方法,【例6.1】原始图像如图6.2
24、(a),使用函数DECONVWNR对图6.2(b)所示的无噪声模糊图像进行复原重建,观察所得结果,并将不同PSF产生的复原效果进行比较。,(a)原始图像(b)无噪声模糊图像 图6.2 原始图像及无噪声模糊图像,27,图6.3 不同PSF产生的复原效果比较,(a)真实的PSF复原(b)较“长”的PSF复原(c)较“陡峭”的PSF复原,28,J=DECONVREG(I,PSF)J=DECONVREG(I,PSF,NP)J=DECONVREG(I,PSF,NP,LRANGE)J=DECONVREG(I,PSF,NP,LRANGE,REGOP),where NP(optional):is the ad
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 06 图像 复原 ppt 课件

链接地址:https://www.31ppt.com/p-2103551.html