您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 北航数字图象处理实验报告
..数字图像处理实验报告实验二图像变换实验1.实验目的学会对图像进行傅立叶等变换,在频谱上对图像进行分析,增进对图像频域上的感性认识,并用图像变换进行压缩。2.实验内容对Lena或cameraman图像进行傅立叶、离散余弦、哈达玛变换。在频域,对比他们的变换后系数矩阵的频谱情况,进一步,通过逆变换观察不同变换下的图像重建质量情况。3.实验要求实验采用获取的图像,为灰度图像,该图像每象素由8比特表示。具体要求如下:(1)输入图像采用实验1所获取的图像(Lena、Cameraman);(2)对图像进行傅立叶变换、获得变换后的系数矩阵;(3)将傅立叶变换后系数矩阵的频谱用图像输出,观察频谱;(4)通过设定门限,将系数矩阵中95%的(小值)系数置为0,对图像进行反变换,获得逆变换后图像;(5)观察逆变换后图像质量,并比较原始图像与逆变后的峰值信噪比(PSNR)。(6)对输入图像进行离散余弦、哈达玛变换,重复步骤1-5;(7)比较三种变换的频谱情况、以及逆变换后图像的质量(PSNR)。4.实验结果1.DFT的源程序及结果J=imread('10021033.bmp');P=fft2(J);fori=0:size(P,1)-1forj=1:size(P,2)G(i*size(P,2)+j)=P(i+1,j);endendQ=sort(G);fori=1:size(Q,2)if(isize(Q,2)*0.95&&i+1=size(Q,2)*0.95)t=Q(i);endendG(abs(G)t)=0;forn=0:size(P,1)-1..form=1:size(P,2)W(n+1,m)=G(n*size(P,2)+m);endendf2=ifft2(W);f3=uint8(f2);axes(handles.axes2);imshow(f3)axes(handles.axes1);imshow(J)psnr1=psnr(J,f3);set(handles.text3,'string',psnr1);2.DCT的源程序及结果J=imread('10021033.bmp');P=dct2(J);fori=0:size(P,1)-1forj=1:size(P,2)G(i*size(P,2)+j)=P(i+1,j);endendQ=sort(G);fori=1:size(Q,2)if(isize(Q,2)*0.95&&i+1=size(Q,2)*0.95)t=Q(i);endendG(abs(G)t)=0;forn=0:size(P,1)-1..form=1:size(P,2)W(n+1,m)=G(n*size(P,2)+m);endendf2=idct2(W);f3=uint8(f2);axes(handles.axes2);imshow(f3)axes(handles.axes1);imshow(J)psnr1=psnr(J,f3);set(handles.text3,'string',psnr1);3.哈达玛变换的源程序及结果J=imread('cat.jpg');J=rgb2gray(J);P=hadamard(512)*(im2double(J))*hadamard(512);fori=0:size(P,1)-1forj=1:size(P,2)G(i*size(P,2)+j)=P(i+1,j);endendQ=sort(G);fori=1:size(Q,2)if(isize(Q,2)*0.5&&i+1=size(Q,2)*0.5)t=Q(i);endendG(abs(G)t)=0;forn=0:size(P,1)-1form=1:size(P,2)..W(n+1,m)=G(n*size(P,2)+m);endendf2=inv(hadamard(512))*W*inv(hadamard(512));mm1=max(max(f2));mn1=min(min(f2));f2=255+255/(mm1-mn1)*(f2-mm1);f3=uint8(f2);axes(handles.axes2);imshow(f3)axes(handles.axes1);imshow(J)psnr1=psnr(J,f3);set(handles.text3,'string',psnr1);3实验三图像复原实验1.实验目的利用反向滤波和维纳滤波进行降质图像复原,比较不同参数选择对复原结果的影响。2.实验内容(1)利用反向滤波方法进行图像复原;(2)利用维纳滤波方法进行图像复原。3.实验要求(1)输入图像采用实验1所获取的图像,对输入图像采用运动降质模型,如下式所示..,sinexp,/2,/21,...,1,0,1,...,/21THuvaubvjaubvaubvuvNNN与降值图像相关的参数是:5,1,1Tab;(2)对每一种方法通过计算复原出来的图像的峰值信噪比,进行最优参数的选择,包括反向滤波方法中进行复原的区域半径0r、维纳方法中的噪声对信号的频谱密度比值K;(3)将降质图像和利用最优参数恢复后的图像同时显示出来,以便比较。4.实验结果1.运动降质的源代码及结果I=imread('10021033.bmp');%I=rgb2gray(I);F=fft2(I);F=fftshift(F);form=-((size(F,1)+1)/2):(size(F,1)+1)/2forn=-size(F,2)/2:size(F,2)/2H(m+((size(F,1)+1)/2)+1,n+size(F,2)/2+1)=5*sin(pi*(m+n))*exp(-sqrt(-1)*pi*(m+n))/(pi*(m+n));endendform=1:size(F,1)forn=1:size(F,2)if(isnan(real(H(m,n))))G(m,n)=F(m,n);H(m,n)=1;elseG(m,n)=F(m,n)*H(m,n);endendendg=ifft2(G);t1=abs(g);mm=max(max(t1));mn=min(min(t1));t1=255+255/(mm-mn)*(t1-mm);t=uint8(t1);axes(handles.axes1);imshow(t)..2.逆滤波的源代码及结果I=imread('10021033.bmp');F=fft2(I);F=fftshift(F);form=-((size(F,1)+1)/2):(size(F,1)+1)/2forn=-size(F,2)/2:size(F,2)/2H(m+((size(F,1)+1)/2)+1,n+size(F,2)/2+1)=5*sin(pi*(m+n))*exp(-sqrt(-1)*pi*(m+n))/(pi*(m+n));endendform=1:size(F,1)forn=1:size(F,2)if(isnan(real(H(m,n))))G(m,n)=F(m,n);H(m,n)=1;elseG(m,n)=F(m,n)*H(m,n);endendendform=1:size(F,1)forn=1:size(F,2)if(m^2+n^2200000)F1(m,n)=G(m,n)/H(m,n);elseF1(m,n)=G(m,n);endendendf1=ifft2(F1);f2=abs(f1);mm=max(max(f2));mn=min(min(f2));f2=255+255/(mm-mn)*(f2-mm);..f2=uint8(f2);psnr1=psnr(f2,I);set(handles.text5,'string',psnr1);axes(handles.axes2);imshow(f2)3.维纳滤波的源代码及结果I=imread('10021033.bmp');F=fft2(I);F=fftshift(F);form=-((size(F,1)+1)/2):(size(F,1)+1)/2forn=-size(F,2)/2:size(F,2)/2H(m+((size(F,1)+1)/2)+1,n+size(F,2)/2+1)=5*sin(pi*(m+n))*exp(-sqrt(-1)*pi*(m+n))/(pi*(m+n));endendform=1:size(F,1)forn=1:size(F,2)if(isnan(real(H(m,n))))G(m,n)=F(m,n);H(m,n)=1;elseG(m,n)=F(m,n)*H(m,n);endendendfori=1:size(F,1)forj=1:size(F,2)ff2(i,j)=G(i,j)/H(i,j)*(abs(H(i,j))^2)/(abs(H(i,j))^2+10^-38);endendf3=ifft2(ff2);f4=abs(f3);mm1=max(max(f4));mn1=min(min(f4));..f4=255+255/(mm1-mn1)*(f4-mm1);f4=uint8(f4);psnr2=psnr(f4,I);set(handles.text5,'string',psnr2);axes(handles.axes2);imshow(f4)实验四图像分割处理实验1.实验目的(1)了解图像分割的基本原理,并利用图像分割算法进行图像分割处理;(2)掌握数学形态学的基本运算。2.实验内容(1)利用类间方差阈值算法实现图像的分割处理;(2)利用形态学处理进行处理结果修正。3.实验要求(1)实验用图如图4.2所示;图4.2原始图像..(2)对输入图像进行平滑处理,以减小噪声对分割处理的影响;(3)利用类间方差阈值算法对滤波处理后图像进行分割处理,获取分割图像;(4)利用数学形态学中的腐蚀和膨胀运算处理,剔除分割处理结果中的一些细小的残余误分割点,在进行腐蚀和膨胀运算时可采用半径为r的圆形结构元素,注意比较选取不同r值时的处理结果。4.实验结果实验源代码及结果tu2=imread('图像2013.bmp');tu2=rgb2gray(tu2);max2=0;min2=255;[m,n]=size(tu2);axes(handles.axes1);imshow(tu2);tu3=zeros(m,n);%-----------平滑处理---------------fork=2:m-1fors=2:n-1max4=max(tu2(k-1,s),tu2(k,s-1));max5=max(tu2(k+1,s),tu2(k,s+1));min4=min(tu2(k-1,s),tu2(k,s-1));min5=min(tu2(k+1,s),tu2(k,s+1));tu2(k,s)=(max(max4,max5)+min(min4,min5))/2;endendaxes(handles.axes2);imshow(tu2);%-----------平滑处理中点滤波---------------fork=1:mmax1=max(tu2(k,:));if(max1==255)max2=max1;break;endif(max2max1)max2=max1;endend%找出最大灰度值max2fork=1:nmin1=min(tu2(k,:));if(min1==0)min2=min1;break;elseif(min2min1)min2=min1;endend%找出最小灰度值min2max2=double(max2);min2=double(min2);%数据类型转换!!!!ni=zeros(1,max2-min2+1);fork=1:mfors=1:ntemp=double(tu2(k,s))-min2+1;ni(1,temp)=ni(1,temp)+1;end..end%统计各灰度值出现次数%----------
本文标题:北航数字图象处理实验报告
链接地址:https://www.777doc.com/doc-5216553 .html