数字图像处理图像复原实验报告
图像复原实验

数字图像处理实验报告1 - 图像复原学生姓名:学号:实验时间:地点:指导教师:一、实验目的运用理论知识,在MA TLAB环境下对图像复原技术进行实验验证,学习算法实现的科学方法,增强对算法及其效果的感性认识。
(1)对图像进行复原处理。
调用MA TLAB中的图像复原函数,编写MA TLAB程序,实现对图像的复原。
(2)C++编程,利用双线性插值将照片放大。
二、实验内容要求:以下实验采用学生本人的照片作为处理对象。
(1)利用MA TLAB做图像复原实验。
实验方法和步骤如下:选择一幅完好的照片,进行退化处理,然后对退化后的图像进行复原,并对不同参数的复原结果进行比较。
(2)用VC++编写程序,采用邻近差值和双线性插值两种方法,将图像放大到原来的1.5倍, 并存储为res0.yuv 和res1.yuv。
三、实验结果(1)①先对图像进行模糊处理,用matlab中fspecial函数产生motion滤波器,然后对灰度图像进行滤波即可得到。
再用deconvwnr函数对图像进行维纳滤波可的如下结果(程序代码详见附录1.1):由此可见滤波效果并不是很明显,其中一个原因就是要取合适的len、theta参数是很困难的,所以导致模糊效果不是很好。
②先对图像进行模糊处理,用matlab中fspecial函数产生motion滤波器,然后对灰度图像进行滤波即可得到。
在对图像加高斯噪声,用imnoise函数。
再用deconvwnr函数对图像进行维纳滤波可见不同参数情况下的滤波情况如下(程序代码详见附录1.2):由此可见,平滑滤波不一定总是能带来很好的效果,如果图像过于模糊,平滑滤波就会导致图像过于平滑,就会使得图像高频分量也就是边缘轮廓十分的不明显。
③先对图像进行模糊处理,用matlab中fspecial函数产生motion滤波器,然后对灰度图像进行滤波即可得到。
在对图像加高斯噪声,用imnoise函数。
再用deconvblind函数对图像进行盲滤波可见不同参数情况下的滤波情况如下(程序代码详见附录1.3):(2)采用双线性插值法对所给图像实现长和宽分别1.5倍的放大。
图像复原实验报告 2

NSR=sum(noise(:).^2)/sum(MF(:).^2);
subplot(232);imshow(MF,[]);title(‘运动模糊’);
subplot(233);imshow(deconvwnr(MF,PSF),[]);title(‘逆滤波复原’);
实验报告
实验课程名称数字图像处理
实验项目名称图像复原
年级2010
专业光信息科学与技术
学生姓名XXX
学号XXXXX
理学院
实验时间:2013年5月2日
学院:理学院专业:光信息科学与技术班级:光信XXX
姓名
XXX
学号
XXXX
实验组
实验时间
2013.5.2
指导教师
XXXX
成绩
实验项目名称
图像复原
实验目的及要求:
subplot(131);imshow(f);title('原图像');
s=0.9;
theta=pi/6;
T=[s*cos(theta) s*sin(theta) 0
-s*sin(thetaaketform('affine',T);
g=imtransform(f,tform,'Fillvalue',0.5);
subplot(132);imshow(g);title('几何失真图像');
cpselect(g,f);
tform=cp2tform(input_points,base_points,'projective');
gp=imtransform(g,tform,'XData',[1 320],'YData',[1 256]);
数字图像处理实验报告——图像复原实验

实验报告课程名称数字图像处理导论专业班级_______________姓名_______________学号_______________电气与信息学院和谐勤奋求是创新2.对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。
I=imread('moon.tif');H = fspecial('sobel');subplot(2,2,1)imshow(I);title(' Qriginal Image ');Sobel = imfilter(I,H,'replicate');subplot(2,2,2)imshow(Sobel);title(' Sobel Image ')H = fspecial('laplacian',0.4);lap = imfilter(I,H,'replicate');subplot(2,2,3)imshow(lap);title(' Laplacian Image ')H = fspecial('gaussian',[3 3],0.5);gaussian = imfilter(I,H,'replicate');subplot(2,2,4)imshow(gaussian);title(' Gaussian Image ')3.使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。
originalRGB = imread('trees.tif');subplot(3,2,1)imshow(originalRGB);title(' Qriginal Image ');h = fspecial('motion', 50, 45); %motion blurredfilteredRGB = imfilter(originalRGB, h);subplot(3,2,2)imshow(filteredRGB);title(' Motion Blurred Image ');boundaryReplicateRGB = imfilter(originalRGB, h, 'replicate');subplot(3,2,3)imshow(boundaryReplicateRGB);title(' 0-Padding');boundary0RGB = imfilter(originalRGB, h, 0);subplot(3,2,4)imshow(boundary0RGB);title('Replicate');boundarysymmetricRGB = imfilter(originalRGB, h, 'symmetric'); subplot(3,2,5)imshow(boundarysymmetricRGB);title(' Symmetric ');boundarycircularRGB = imfilter(originalRGB, h, 'circular'); subplot(3,2,6)imshow(boundarycircularRGB);title(' Circular');5.对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。
最新数字图像处理实验四报告

精品资料
数字图像处理实验四
报告
........................................
贵州大学实验报告学院:专业:班级:
3、维纳滤波
复原公式:
如果噪声为0,则维纳滤波退化为逆滤波。
如果噪声功率谱和信号功率谱都是未知或不能估计时可近似为:实
验仪器计算机一台;Matlab软件
实验步骤1、编写逆滤波复原程序。
读取图像,人工产生一个模糊图像,通过逆滤波方法对该模糊复原。
人工产生一个模糊且带有噪声的图像,过逆滤波方法对该模糊复原。
比较无噪声和有噪声时逆滤波的复原效果。
计算复原后图像的PSNR。
MES1=abs(sum(sum((I-I2).^2))/(m*n)) %均方差PSNR1=20*log10(MAX/sqrt(MES1)) %峰值信噪比%计算维纳滤波复原后图像的PSNR
MES2=abs(sum(sum((I-I3).^2))/(m*n))
PSNR2=20*log10(MAX/sqrt(MES2))
注:各学院可根据教学需要对以上栏木进行增减。
表格内容可根据内容扩充。
图像恢复(数字图像处理实验报告)

数字图像处理作业——图像恢复摘要数字图像恢复是数字图像处理的一个基本的和重要的课题,它是后期图像处理(分析和理解)的前提。
图像在摄取、传输、储存的过程中不可避免地引起图像质量的下降(图像退化),图像恢复就是试图利用退化过程的先验知识使已退化的图像恢复本来面貌,即根据退化的原因,分析引起退化的环境因素,建立相应的数学模型,并沿着使图像降质的逆过程恢复图像。
本文首先对测试图像进行模糊及加噪处理,然后用不同的图像恢复方法,如维纳滤波恢复、约束最小二乘滤波进行图像恢复,并比较它们的处理效果。
发现维纳滤波较约束最小二乘法滤波效果要好,这是因为前者利用了原图像的统计信息,采用了真实的PSF函数来恢复。
无论何种算法,它们都要依据获取的相关信息才能有效地实施,算法利用的信息越多,信息的准确性越高,复原图像的质量也就越高。
实验原理:图像复原处理是建立在图像退化的数学模型基础上的,这个退化数学模型能够反映图像退化的原因。
图像的退化过程可以理解为施加于原图像上的运算和噪声两者联合作用的结果,图像退化模型如图1所示,可以表示为:g ( x , y ) = H [ f ( x , y )] + n ( x , y ) = f ( x , y ) *h ( x , y ) + n ( x , y ) (1)图1 图像退化模型(1)在测试图像上产生高斯噪声lena 图-需能指定均值和方差;并用滤波器(自选)恢复图像;实验原理:噪声是最常见的退化因素之一,也是图像恢复中重点研究的内容,图像中的噪声可定义为图像中不希望有的部分。
噪声是一种随机过程,它的波形和瞬时振幅以及相位都随时间无规则变化,因此无法精确测量,所以不能当做具体的处理对象,而只能用概率统计的理论和方法进行分析和处理。
本文中研究高斯噪声对图像的影响及其去噪过程。
①高斯噪声的产生:所谓高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声。
一个高斯随机变量z 的PDF 可表示为:P (z )(2)其中z 代表灰度,u 是z 的均值,是z 的标准差。
数字图像实验报告 医学图像频域滤波与图像复原

实验七医学图像频域滤波与图像复原实验目的:1.熟悉医学图像离散傅里叶变化的原理和方法;2.掌握医学图像频域滤波的原理;3.掌握使用Matlab中的函数实现医学图像进行频域滤波的方法;4.掌握使用Matlab中的图像退化与复原的方法;实验内容:一、医学图像频域滤波方法与实现使用imnoise给图像BMRI1_24bit.bmp添加概率为0.2的椒盐噪声,对原图像和加噪声后的图像进行傅氏变换并显示变换后的移中频谱图,然后分别使用Butterworth低、高通滤波器对噪声图像进行低通和高通滤波,显示D0为5,10,20,40时的滤波效果图,并说明存两种滤波效果中所存在的差异及原因。
答:>> f=imread('BMRI1_24bit.bmp');>> f=rgb2gray(f);>> g=imnoise(f,'salt & pepper',0.2);>> f=double(f);>> g=double(g);>> F1=fft2(f);>> F2=fft2(g);>> FC1=fftshift(F1);>> FC2=fftshift(F2);>> f=ifft2(F1);>> g=ifft2(F2);>> imshow(uint8(f));title('逆变换后原图像');>> figure,imshow(uint8(g));title('逆变换后的椒盐噪声原图像');>> figure,imshow(F1);title('原图像的傅氏变换');>> figure,imshow(F2);title('椒盐噪声原图像的傅氏变换');>> figure,imshow(log(1+abs(FC1)),[]);title('原图像的移中频谱图');>> figure,imshow(log(1+abs(FC2)),[]);title('椒盐噪声原图像的移中频谱图');Butterworth低通滤波器Butterworthd.mfunction Butterworthd(I)I=rgb2gray(I);[M,N]=size(I);m=fix(M/2);n=fix(N/2);%形容图像的中心点nn=3;%三阶prompt={'Iuput Filter Cutoff(d0):'}; defans={'5'};i=inputdlg(prompt,'input',1,defans);d0=str2num(i{1});% d0=5;% for k=1:4F=fft2(I);FC=fftshift(F);for i=1:Mfor j=1:Nd=sqrt((i-m)^2+(j-n)^2);h=1/(1+(d/d0)^(2*nn));FC(i,j)=h*FC(i,j);endendF=ifftshift(FC);I=ifft2(F);I=uint8(real(I));%real提取它的实部figure,imshow(I);title(['低通d0=',num2str(d0)]);% d0=d0*2;% end>> f=imread('BMRI1_24bit.bmp');>> g=imnoise(f,'salt & pepper',0.2);>> Butterworthd(g);Butterworth高通滤波器Butterworthg.mfunction Butterworthg(I)I=rgb2gray(I);[M,N]=size(I);m=fix(M/2);n=fix(N/2);%形容图像的中心点nn=3;%三阶prompt={'Iuput Filter Cutoff(d0):'};defans={'5'};i=inputdlg(prompt,'input',1,defans);d0=str2num(i{1});% d0=5;%for k=1:4F=fft2(I);FC=fftshift(F);for i=1:Mfor j=1:Nd=sqrt((i-m)^2+(j-n)^2);h=1/(1+(d0/d)^(2*nn));FC(i,j)=h*FC(i,j);endendF=ifftshift(FC);I=ifft2(F);I=uint8(real(I));%real提取它的实部figure,imshow(I);title(['高通d0=',num2str(d0)]);%d0=d0*2;%end>> f=imread('BMRI1_24bit.bmp');>> g=imnoise(f,'salt & pepper',0.2); >> Butterworthg(g);图像从空间域变换到频率域后,其低频分量对应图像中灰度值变化比较缓慢的区域,高频分量则表征图像中物体的边缘和随机噪声等信息。
数字图像处理之图像复原

实验五、图象复原一、实验目的1.了解图象退化的几种原因;2.掌握对相应退化原因的复原方法。
二、实验内容1.使用函数fspecial( )和imfilter( )模拟产生退化图象;2.对于不同的噪声引起图像的退化,采用不同的滤波方法复原图象。
3.学会使用维纳滤波器deconvwnr()函数对图像进行复原的方法。
三、实验步骤1.加性噪声退化图象用imnoise( )函数给图象加噪声,如增加高斯白噪声。
使用平滑滤波器对其进行滤波,可达到复原图像的效果x=imread(‘cameraman.tif’);x=imnoise(x,’gaussian’)imshow(x)h=fspecial(‘average’)y=imfilter(x,h);figureimshow(y)2、周期噪声退化图像对于周期噪声可以通过频域滤波来减弱或消除,实现复原图像。
实验五文件夹中有被正弦周期噪声污染退化的图像'pout_g_64.bmp',使用理想带阻滤波器对其频域滤波,复原图像。
(1) pout_g_64.bmp图像及其傅立叶谱见下图。
(2) 构造理想带阻滤波器close allx=imread('pout_g_64.bmp');xm=size(x,1); xn=size(x,2);M2=floor(xm/2); N2=floor(xn/2);u=-M2:1:M2-1; v=-N2:1:N2-1;[U,V]=meshgrid(u,v);D=sqrt(U.^2+V.^2);D0=64;W=4;H=double(D<(D0-W/2)|D>(D0+W/2));figureMesh(U,V,H) ;title('D0=64,W=4,理想带阻滤波器')思考:使用上述理想带阻滤波器对’pout_g_64.bmp’图像进行频域滤波,得到复原图像,结果类似下图。
close allx=imread('pout_g_64.bmp');xm=size(x,1); xn=size(x,2);M2=floor(xm/2); N2=floor(xn/2);u=-M2:1:M2-1; v=-N2:1:N2-1;[U,V]=meshgrid(u,v);D=sqrt(U.^2+V.^2);D0=64;W=4;H=double(D<(D0-W/2)|D>(D0+W/2));F=fft2(x);f=fftshiFt(F);G=f.*H;subplot(121)imshow(real(G));title('频域滤波')GG=fftshift(G);I=ifft2(GG);subplot(122)imshow(uint8(I))title('复原后图像')3、运动模糊退化图像给图像添加运动模糊,使用deconvwnr()维纳滤波器进行图像复原。
数字图像处理实验三:图像的复原

南京工程学院通信工程学院实验报告课程名称数字图像处理C实验项目名称实验三图像的复原实验班级算通111 学生姓名夏婷学号 208110408 实验时间 2014年5月5日实验地点信息楼C322实验成绩评定指导教师签名年月日实验三、图像的恢复一、实验类型:验证性实验二、实验目的1. 掌握退化模型的建立方法。
2. 掌握图像恢复的基本原理。
三、实验设备:安装有MATLAB 软件的计算机四、实验原理一幅退化的图像可以近似地用方程g=Hf+n 表示,其中g 为图像,H为变形算子,又称为点扩散函数(PSF ),f 为原始的真实图像,n 为附加噪声,它在图像捕获过程中产生并且使图像质量变坏。
其中,PSF 是一个很重要的因素,它的值直接影响到恢复后图像的质量。
I=imread(‘peppers.png’);I=I(60+[1:256],222+[1:256],:);figure;imshow(I);LEN=31;THETA=11;PSF=fspecial(‘motion’,LEN,THETA);Blurred=imfilter(I,PSF,’circular’,’conv’);figure;imshow(Blurred);MATLAB 工具箱中有4 个图像恢复函数,如表3-1 所示。
这4 个函数都以一个PSF 和模糊图像作为主要变量。
deconvwnr 函数使用维纳滤波对图像恢复,求取最小二乘解,deconvreg 函数实现约束去卷积,求取有约束的最小二乘解,可以设置对输出图像的约束。
deconvlucy 函数实现了一个加速衰减的Lucy-Richardson 算法。
该函数采用优化技术和泊松统计量进行多次迭代。
使用该函数,不需要提供有关模糊图像中附加噪声的信息。
deconvblind 函数使用的是盲去卷积算法,它在不知道PSF 的情况下进行恢复。
调用deconvblind 函数时,将PSF 的初值作为一个变量进行传递。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图像复原
信息132 李佳奇1304010311
一、实验目的
1、熟悉并掌握MATLAB图像处理工具箱的使用;
2、理解并掌握常用的图像的恢复和分割技术。
二、实验内容
空域滤波复原
close all;clear all;clc;
I=imread('d:/zhien.jpg');
I=im2double(I);
I=imnoise(I,'gaussian',0.05);%添加高斯噪声
PSF=fspecial('average',3);
J=imfilter(I,PSF);
K=exp(imfilter(log(I),PSF));
figure;
subplot(131);imshow(I);
subplot(132);imshow(J);
subplot(133);imshow(K);
分析:空域滤波就是在待处理图像中逐点地移动掩模。
在每一点(x,y)处,滤波器在该点的响应通过事先定义的关系来计算。
对于线性空间滤波,其响应由滤波器系数与滤波掩模扫过区域的相应像素值的乘积之和给出
维纳滤波
I=imread('d:/zhien.jpg');
H=fspecial('motion',50,45);
J=imfilter(I,H,'circular','conv');
subplot(221);imshow(J);
title('运动模糊后的lena.bmp(角度为45)');
J1=imnoise(J,'gaussian',0,0.01);
subplot(222);
imshow(J1);
title('加噪模糊的lena.bmp');%figure;
J2=deconvwnr(J1,H);
subplot(223)
imshow(J2);
title('模糊噪声图像的维纳滤波复原');
noise=imnoise(zeros(size(I)),'gaussian',0,0.01);
NSR=sum(noise(:).^2)/sum(im2double(I(:)).^2);
J3=deconvwnr(J1,H,NSR);
subplot(224)
imshow(J3);
title('引入SNR的维纳滤波复原');
分析:维纳滤波是一种有约束的复原恢复,它综合了退化图像和噪声统计特性两个方面进行了复原处理。
维纳滤波,它是使原图像及其恢复图像之间的均方差最小的复原方法。
是在假象图像信号可以近似看作平稳随机过程的前提下,按照使恢复的图像与原图像f(x,y)的均方差最小原则来恢复图像。
约束最小二乘法滤波
I= imread('d:/zhien.jpg');
I1=checkerboard(8);
PSF=fspecial('motion',50,45);
V=0.0001; J=imfilter(I,PSF,'circular','conv');
J1=imnoise(J,'gaussian',0,0.01);
subplot(1,2,1); imshow(J1);
title('模糊加噪图像');
NoisePower=V*prod(size(I));
[G,LAGRA]=deconvreg(J,PSF,NoisePower);
subplot(1,2,2); imshow(G);
title('约束最小二乘滤波复原');
分析:
约束最小二乘方图像复原是一种以平滑测度为准则的复原方法。
实验中首先得到运动模糊和高斯噪退化后的图像Zn,然后对图像进行约束最小
平方复原,同时获得最佳复原的参数γ,如果将参数γ的值调大,则图像会比较模
糊,但对噪声的改善效果较为明显,如果将参数γ的值调小,则图像会比较清晰,
但背景会出现一定的噪声。
盲解卷积复原
I=imread('d:/zhien.jpg');
I=im2double(I);
LEN=20;
THETA=20;
PSF=fspecial('motion',LEN,THETA);
J=imfilter(I,PSF,'circular','conv');%运动模糊INITPSF=ones(size(PSF));
[K,PSF2]=deconvblind(J,INITPSF,30);%图像复原figure;
subplot(121);imshow(PSF,[]);
subplot(122);imshow(PSF2,[]);
axis auto;
figure;
subplot(121);imshow(J);%显示退化图像subplot(122);imshow(K);%显示复原图像。