退化及复原图像
- 格式:pdf
- 大小:368.58 KB
- 文档页数:4
4记录和整理实验报告。
图像降质的数学模型图像复原处理的关键问题在于建立退化模型。
输入图像f(x, y)经过某个退化系统后输出的是一幅退化的图像。
为了讨论方便,把噪声引起的退化即噪声对图像的影响一般作为加性噪声考虑,这也与许多实际应用情况一致,如图像数字化时的量化噪声、随机噪声等就可以作为加性噪声,即使不是加性噪声而是乘性噪声,也可以用对数方式将其转化为相加形式。
原始图像f(x,y)经过一个退化算子或退化系统H(x,y)的作用,再和噪声n(x,y)进行叠加,形成退化后的图像g(x,y)。
图2-1表示退化过程的输入和输出的关系,其中H(x,y)概括了退化系统的物理过程,就是所要寻找的退化数学模型。
图2-1图像的退化模型数字图像的图像恢复问题可看作是:根据退化图像g(x/Y)和退化算子H(x,y)f(x,y) ------------- ^(x,y)的形式,沿着反向过程去求解原始图像f(x,y),或者说是逆向地寻找原始图像的最佳近似佔讣。
图像退化的过程可以用数学表达式写成如下的形式:g(x,y)=H[f(x, y)] +n(x, y) (2-1)在这里,n(x,y)是一种统计性质的信息。
在实际应用中,往往假设噪声是白噪声,即它的频谱密度为常数,并且与图像不相关。
在图像复原处理中,尽管非线性、时变和空间变化的系统模型更具有普遍性和准确性,更与复杂的退化环境相接近,但它给实际处理工作带来了巨大的困难,常常找不到解或者很难用计算机来处理。
因此,在图像复原处理中,往往用线性系统和空间不变系统模型来加以近似。
这种近似的优点使得线性系统中的许多理论可直接用于解决图像复原问题,同时乂不失可用性。
匀速直线运动模糊的退化模型在所有的运动模糊中,山匀速直线运动造成图象模糊的复原问题更具有一 般性和普遍意义。
因为变速的、非直线运动在某些条件下可以被分解为分段匀速 直线运动。
本节只讨论山水平匀速直线运动而产生的运动模糊。
假设图象/Cv,y)有一个平面运动,令兀«)和几(“分别为在x 和y 方向上 运动的变化分量,T 表示运动的时间。
4-4 退化及复原图像一、 实验目的
掌握生成退化图像和复原图像的方法.
二、 实验内容
1. 生成带噪声的运动退化图像
2. 使用decovwnr 复原模糊的带噪图像
三、 实验步骤
1.模糊噪声图像建模fspecial imfilter pixeldup
clc
clear
f = checkerboard(8);
PSF = fspecial('motion',7,45);
gb = imfilter(f,PSF,'circular');
imshow (gb)
title('使用PSF = fspecial(motion,7,45) 模糊后的图像') noise = imnoise(zeros(size(f)),'gaussian',0,0.001);
imshow (noise,[])
title('高斯纯噪声图像')
g = gb + noise;
imshow (g,[])
title('模糊加噪声的图像')
2.使用deconvwnr 函数复原模糊噪声图像
clc
clear
f = checkerboard(8);
PSF = fspecial('motion',7,45)
gb = imfilter(f,PSF,'circular');
noise = imnoise(zeros(size(f)),'gaussian',0,0.001);
g = gb + noise;
imshow (g,[])
title('模糊加噪声的图像')
% ***************
fr1 = deconvwnr(g,PSF);
imshow(fr1,[])
title('简单的维纳滤波(逆滤波)后的结果') Sn = abs(fft2(noise)).^2;
nA = sum(Sn(:))/prod(size(noise));
Sf = abs(fft2(f)).^2;
fA = sum(Sf(:))/prod(size(f));
R = nA/fA;
fr2 = deconvwnr(g,PSF,R);
imshow(fr2,[])
title('使用常数比率的维纳滤波后的结果') NCORR = fftshift(real(ifft(Sn)));
ICORR = fftshift(real(ifft(Sf)));
fr3 = deconvwnr(g,PSF,NCORR,ICORR); imshow(fr3,[])
title('使用自相关函数的维纳滤波后的结果') 3.当模糊但不含噪声时使用维纳滤波还原clc
clear
f = checkerboard(8);
imshow (f)
PSF = fspecial('motion',7,45)
gb = imfilter(f,PSF,'circular');
imshow (gb)
% ***************
g = gb;
fr1 = deconvwnr(g,PSF);
imshow (fr1,[])
四、 实验总结
通过本次实验,我掌握了生成退化图像和复原图像的方法.知道了如何生成带噪声的运动退化图像,知道了使用decovwnr 复原模糊的带噪图像。
通过本次实验,我对高斯噪声有了进一步的了解,同时,对维纳滤波也有了初步的认识。
不过要想对理论有个呢过深入的认识,还得多加思考,多加研究。