数字图像的退化与复原.docx
- 文档编号:7328168
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:14
- 大小:1.26MB
数字图像的退化与复原.docx
《数字图像的退化与复原.docx》由会员分享,可在线阅读,更多相关《数字图像的退化与复原.docx(14页珍藏版)》请在冰点文库上搜索。
数字图像的退化与复原
实验二、数字图像的退化与复原
一、实验目的
1.掌握数字图像的存取与显示方法。
2.理解数字图像运动模糊、高斯模糊以及其他噪声引起模糊(图像降质现象)的物理本质。
3.掌握matlab的开发环境。
4.掌握降质图像的逆滤波复原和维纳滤波复原方法。
二、实验原理
此实验是对数字图像处理课程的一个高级操作。
在深入理解与掌握数字图像退化的基础理论上,利用逆滤波与维纳滤波方法对数字图像进行复原。
图像的退化
数字图像在获取过程中,由于光学系统的像差、光学成像衍射、成像系统的非线性畸变、成像过程的相对运动、环境随机噪声等原因,图像会产生一定程度的退化。
图像的复原
图像复原是利用图像退化现象的某种先验知识,建立退化现象的数学模型,再根据模型进行反向的推演运算,以恢复原来的景物图像。
因而图像复原可以理解为图像降质过程的反向过程。
图像降质的数学模型
图像复原处理的关键问题在于建立退化模型。
输入图像f(x,y)经过某个退化系统后输出的是一幅退化的图像。
为了讨论方便,把噪声引起的退化即噪声对图像的影响一般作为加性噪声考虑。
原始图像f(x,y)经过一个退化算子或退化系统H(x,y)的作用,再和噪声n(x,y)进行叠加,形成退化后的图像g(x,y)。
图1表示退化过程的输入和输出关系,其中H(x,y)概括了退化系统的物理过程,就是要寻找的退化数学模型。
图1图像的退化模型
数字图像的图像恢复问题可以看作是:
根据退化图像g(x,y)和退化算子H(x,y)的形式,沿着反向过程去求解原始图像f(x,y)。
图像退化的过程可以用数学表达式写成如下形式:
g(x,y)=H[f(x,y)]+n(x,y)
(1)
在这里,n(x,y)是一种统计性质的信息。
在实际应用中,往往假设噪声是白噪声,即它的频谱密度为常熟,并且与图像不相关。
在对退化系统进行了线性系统和空间不变系统的近似之后,连续函数的退化模型在空域中可以写成:
g(x,y)=f(x,y)*h(x,y)+n(x,y)
(2)
在频域中可以写成:
G(u,v)=F(u,v)H(u,v)+N(u,v)(3)
其中,G(u,v)、F(u,v)、N(u,v)分别是退化图像g(x,y)、原图像f(x,y)、噪声信号n(x,y)的傅立叶变换;H(u,v)是系统的点冲击响应函数h(x,y)的傅立叶变换,称为系统在频率域上的传递函数。
可见,图像复原实际上就是已知g(x,y)求f(x,y)的问题或已知G(u,v)求F(u,v)的问题,它们的不同之处在于一个是空域,一个是频域。
逆滤波
逆滤波是非约束复原的一种。
非约束复原是指在已知退化图像g的情况下,根据对退化系统H和n的一些了解和假设,估计出原始图像
,使得某种事先确定的误差准则为最小。
由于
g=Hf+n(4)
我们可得:
n=g-Hf(5)
逆滤波法是指在对n没有先验知识的情况下,可以依据这样的最有准则,即寻找一个
,使得H
在最小二乘方误差的意义下最接近g,即要使n的模或范数(norm)最小:
(6)
上式的极小值为:
(7)
如果我们在求最小值的过程中,不做任何约束,由极值条件可以解出
为:
(8)
对上式进行傅立叶变换得:
(9)
可见,如果知道g(x,y)和h(x,y),也就知道了G(u,v)和H(u,v).根据上式,即可得出F(u,v),再经过反傅立叶变换就能求出f(x,y)。
逆滤波是最早应用于数字图像复原的一种方法,并用此方法处理过由漫游者、探索者等卫星探索发射得到的图像。
维纳滤波
维纳滤波是最小二乘类约束复原的一种。
在最小二乘类约束复原中,要设法寻找一个最有估计
,使得形式为
的函数最小化。
求这类问题的最小化,常采用拉格朗日乘子算法。
也就是说,要寻找一个
,使得准则函数
(10)
为最小。
求解
得到
(11)
式中,
。
如果用图像f和噪声的相关矩阵Rf和Rn表示Q,就可以得到维纳滤波复原方法。
具体维纳滤波复原方法的原理请参考相关图书。
三、实验仪器和设备
1、PC机1台
2、原始coins图像文件
3、matlab编程软件
四、实验内容及步骤
(1)安装Matlab7.5
(2)读取v.jpg图像并显示。
I=imread('v.jpg');
imshow(I);
(3)设计运动模糊滤波器、设计高斯模糊噪声滤波器。
运动模糊滤波器:
I=imread('v.jpg');
noise=0.1*randn(size(I));
psf=fspecial('motion',21,11);
blurred=imfilter(I,psf,'circular');
subplot(1,2,2),imshow(blurred);title('运动模糊')
subplot(1,2,1),imshow(I);title('原图')
显示运动模糊退化图像:
修改运动模糊参数及运动模糊图像显示:
I=imread('v.jpg');
noise=0.1*randn(size(I));
psf=fspecial('motion',50,25);
blurred=imfilter(I,psf,'circular');
subplot(1,2,2),imshow(blurred);title('运动模糊')
subplot(1,2,1),imshow(I);title('原图')
高斯模糊噪声滤波器:
I=imread('v.jpg');
noise=0.1*randn(size(I));
psf=fspecial('gaussian',21,11);
blurred=imfilter(I,psf,'circular');
subplot(1,2,2),imshow(blurred);title('高斯模糊')
subplot(1,2,1),imshow(I);title('原图')
显示高斯模糊退化图像:
高斯模糊噪声滤波器修改参数及显示图像:
I=imread('v.jpg');
noise=0.1*randn(size(I));
psf=fspecial('gaussian',12,15);
blurred=imfilter(I,psf,'circular');
subplot(1,2,2),imshow(blurred);title('高斯模糊图像')
subplot(1,2,1),imshow(I);title('原图')
(4)设计逆滤波器,并对降质图像进行复原,比较复原图像与原始图像。
对运动模糊图像进行复原:
I=imread('v.jpg');
len=10;
theta=10;
PSF=fspecial('motion',len,theta);
Blurredmotion=imfilter(I,PSF,'circular','conv');
subplot(2,2,1),imshow(I);title('原图')
subplot(2,2,2),imshow(Blurredmotion);title('运动模糊图像')
wnr1=deconvwnr(Blurredmotion,PSF);
subplot(2,2,3),imshow(wnr1);title('复原图像')
对高斯模糊噪声图像进行复原:
I=imread('v.jpg');
len=10;
theta=10;
PSF=fspecial('gaussian',len,theta);
Blurredgaussian=imfilter(I,PSF,'circular','conv');
subplot(2,2,1),imshow(I);title('原图')
subplot(2,2,2),imshow(Blurredgaussian);title('高斯模糊图像')
wnr1=deconvwnr(Blurredgaussian,PSF);
subplot(2,2,3),imshow(wnr1);title('复原图像')
(7)设计维纳滤波器,并对降质图像进行复原,比较复原图像与原始图像。
对运动模糊图像进行复原:
I=imread('v.jpg');
subplot(2,2,1),imshow(I);title('原图')
len=30;
theta=75;
PSF=fspecial('motion',len,theta);
J=imfilter(I,PSF,'conv','circular');
subplot(2,2,2),imshow(J);title('运动模糊图像')
wiener_img=deconvwnr(J,PSF);
subplot(2,2,3),imshow(wiener_img);title('复原图像')
对高斯模糊噪声图像进行复原:
I=imread('v.jpg');
subplot(2,2,1),imshow(I);title('原图')
len=30;
theta=75;
PSF=fspecial('gaussian',len,theta);
J=imfilter(I,PSF,'conv','circular');
subplot(2,2,2),imshow(J);title('高斯模糊图像')
wiener_img=deconvwnr(J,PSF);
subplot(2,2,3),imshow(wiener_img);title('复原图像')
(8)计算退化图像、不同方法复原后图像的信噪比。
I=imread('v.jpg');
I=rgb2gray(I);
subplot(2,3,1);imshow(I);title('原图')
h1=fspecial('motion',50,50);
MotionBlur=imfilter(I,h1);
subplot(2,3,2);imshow(MotionBlur);title('运动模糊')
h2=fspecial('motion',20,10);
MotionBlur2=imfilter(I,h2);
subplot(2,3,3);imshow(MotionBlur2);title('运动模糊二')
B=deconvwnr(MotionBlur2,h2);
subplot(2,3,4);imshow(B);title('复原二')
G=imnoise(I,'gaussian',0,0.02);
subplot(2,3,5);imshow(G);title('高斯模糊')
h1=fspecial('gaussian');
Q=imfilter(G,h1);
subplot(2,3,6);imshow(Q);title('高斯还原')
[M,N]=size(I);
Yu_I=double(I);
Yu_B=double(B);
ga=sum(sum(Yu_I.^2));
gb=sum(sum((Yu_I-Yu_B).^2));
SNR=10*log(ga/gb);
P=sqrt(sum((Yu_I-Yu_B).^2));
Q=sqrt(sum(Yu_I.^2));
V=P/Q;
Yu_cc=corrcoef(Yu_I,Yu_B);
SNR=24.3754
V=0.2611
Yu_cc=
1.00000.8494
0.84941.0000
>>五、实验心得
通过本次实验,我掌握了matlab的开发环境和数字图像的存取与显示方法。
理解了数字图像运动模糊、高斯模糊以及其他噪声引起模糊(图像降质现象)的物理本质,掌握降质图像的逆滤波复原和维纳滤波复原方法。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字图像 退化 复原
![提示](https://static.bingdoc.com/images/bang_tan.gif)