北航数字图象处理实验报告

上传人:hao****an 文档编号:148623160 上传时间:2022-09-05 格式:DOC 页数:17 大小:649.02KB
收藏 版权申诉 举报 下载
北航数字图象处理实验报告_第1页
第1页 / 共17页
北航数字图象处理实验报告_第2页
第2页 / 共17页
北航数字图象处理实验报告_第3页
第3页 / 共17页
资源描述:

《北航数字图象处理实验报告》由会员分享,可在线阅读,更多相关《北航数字图象处理实验报告(17页珍藏版)》请在装配图网上搜索。

1、 数字图像处理实验报告 实验二 图像变换实验1实验目的学会对图像进行傅立叶等变换,在频谱上对图像进行分析,增进对图像频域上的感性认识,并用图像变换进行压缩。2实验内容对Lena或cameraman图像进行傅立叶、离散余弦、哈达玛变换。在频域,对比他们的变换后系数矩阵的频谱情况,进一步,通过逆变换观察不同变换下的图像重建质量情况。3. 实验要求实验采用获取的图像,为灰度图像,该图像每象素由8比特表示。具体要求如下:(1)输入图像采用实验1所获取的图像(Lena、Cameraman);(2)对图像进行傅立叶变换、获得变换后的系数矩阵;(3)将傅立叶变换后系数矩阵的频谱用图像输出,观察频谱;(4)通

2、过设定门限,将系数矩阵中95%的(小值)系数置为0,对图像进行反变换,获得逆变换后图像;(5)观察逆变换后图像质量,并比较原始图像与逆变后的峰值信噪比(PSNR)。(6)对输入图像进行离散余弦、哈达玛变换,重复步骤1-5;(7)比较三种变换的频谱情况、以及逆变换后图像的质量(PSNR)。4. 实验结果1.DFT的源程序及结果J=imread(10021033.bmp);P=fft2(J);for i=0:size(P,1)-1 for j=1:size(P,2) G(i*size(P,2)+j)=P(i+1,j); endendQ=sort(G);for i=1:size(Q,2) if (i

3、=size(Q,2)*0.95) t=Q(i); endend G(abs(G)t)=0; for n=0:size(P,1)-1 for m=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);for

4、 i=0:size(P,1)-1 for j=1:size(P,2) G(i*size(P,2)+j)=P(i+1,j); endendQ=sort(G);for i=1:size(Q,2) if (i=size(Q,2)*0.95) t=Q(i); endend G(abs(G)t)=0; for n=0:size(P,1)-1 for m=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

5、(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);for i=0:size(P,1)-1 for j=1:size(P,2) G(i*size(P,2)+j)=P(i+1,j); endendQ=sort(G);for i=1:size(Q,2) if (i=size(Q,2)*0.5) t=Q(i); endend G(abs(G)t)=0; for n=0:

6、size(P,1)-1 for m=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

7、实验目的利用反向滤波和维纳滤波进行降质图像复原,比较不同参数选择对复原结果的影响。2实验内容(1)利用反向滤波方法进行图像复原;(2)利用维纳滤波方法进行图像复原。3. 实验要求(1)输入图像采用实验1所获取的图像,对输入图像采用运动降质模型,如下式所示与降值图像相关的参数是:;(2)对每一种方法通过计算复原出来的图像的峰值信噪比,进行最优参数的选择,包括反向滤波方法中进行复原的区域半径、维纳方法中的噪声对信号的频谱密度比值K;(3)将降质图像和利用最优参数恢复后的图像同时显示出来,以便比较。4. 实验结果1.运动降质的源代码及结果I=imread(10021033.bmp);%I=rgb2g

8、ray(I);F=fft2(I);F=fftshift(F);for m=-(size(F,1)+1)/2):(size(F,1)+1)/2 for n=-size(F,2)/2:size(F,2)/2 H(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); endendfor m=1:size(F,1) for n=1:size(F,2) if (isnan(real(H(m,n) G(m,n)=F(m,n); H(m,n)=1; else G(m,n)=F(m,n)*H

9、(m,n); end endendg=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);for m=-(size(F,1)+1)/2):(size(F,1)+1)/2 for n=-size(F,2)/2:size(F,2)/2H(m+(size(F,1)+1)/2)+1,n+size(F,2)/

10、2+1)=5*sin(pi*(m+n)*exp(-sqrt(-1)*pi*(m+n)/(pi*(m+n); endendfor m=1:size(F,1) for n=1:size(F,2) if (isnan(real(H(m,n) G(m,n)=F(m,n); H(m,n)=1; else G(m,n)=F(m,n)*H(m,n); end endendfor m=1:size(F,1) for n=1:size(F,2) if(m2+n2200000) F1(m,n)=G(m,n)/H(m,n); else F1(m,n)=G(m,n); end endendf1=ifft2(F1);f

11、2=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);for m=-(size(F,1)+1)/2):(size(F,1)+1)/2 for n=-size(F,2)/2:size(F,2)/2H(m+(size(F

12、,1)+1)/2)+1,n+size(F,2)/2+1)=5*sin(pi*(m+n)*exp(-sqrt(-1)*pi*(m+n)/(pi*(m+n); endendfor m=1:size(F,1) for n=1:size(F,2) if (isnan(real(H(m,n) G(m,n)=F(m,n); H(m,n)=1; else G(m,n)=F(m,n)*H(m,n); end endendfor i=1:size(F,1) for j=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); en

13、dendf3=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. 实

14、验要求(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);

15、tu3=zeros(m,n); %-平滑处理- for k=2:m-1 for s=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; end end axes(handles.axes2); imshow(tu2); %-平滑处理 中点滤波- for k=1:m max1=max(tu2(k,:);

16、if (max1=255) max2=max1;break;end if (max2min1) min2=min1;end end %找出最小灰度值min2 max2=double(max2); min2=double(min2);%数据类型转换! ni=zeros(1,max2-min2+1); for k=1:m for s=1:n temp=double(tu2(k,s)-min2+1; ni(1,temp)=ni(1,temp)+1; end end %统计各灰度值出现次数 %-找阈值- w0=0;ut=0;u0=0;max3=0;sum=m*n; for t=0:size(ni,2)

17、-1 ut=ut+t*ni(t+1)/sum; end for t=0:size(ni,2)-1 w0=w0+ni(t+1)/sum; w1=1-w0; u0=u0+t*ni(t+1)/sum; u1=(ut-w0*u0)/w1; temp=w0*w1*(u1-u0)*(u1-u0); if (max3=tmax) tu3(k,s)=255; end end end axes(handles.axes3); imshow(tu3); %-类间方差阈值分割- %-腐蚀和膨胀- se=strel(disk,2); tu4=imerode(tu3,se); axes(handles.axes4);

18、imshow(tu4); tu4=imdilate(tu4,se); axes(handles.axes5); imshow(tu4);实验五 用Hough变换进行曲线的参数提取1实验目的(1)了解边缘检测算子的原理,并利用边缘算子对图像进行检测;(2)掌握Hough变换的基本原理。2实验内容(1)分别将原始图像及加高斯噪声、椒盐噪声后的图像中圆形边缘检测出来;(2)用Hough变换对边缘进行参数提取。3. 实验要求(1)实验用图像文件:原始图像(houghorg.bmp)、加高斯噪声后图像(houghgau.bmp)和加椒盐噪声后图像(houghsalt.bmp); 图4.3 原始图像 (2

19、)在含有噪声的背景下,先对图像中值滤波,再进行边缘检测;(3)将目标的边界提取出来。边缘检测算子可利用matlab自带函数实现,使用Robert、Sobel和Laplacian算子;(4)利用Hough变换提取的参数绘制曲线,并叠加在噪声图像上。4. 实验要点(1)利用算子进行边缘检测:可先将加噪以后的图像进行平滑滤波,如采用9*9的掩膜模板进行中值滤波;为了对图像中图形边缘进行线性提取,可通过设置阈值将图像变为二值图像,再利用三种不同的算子(Robert、Sobel和Laplacian)来完成边缘的检测;(2)Hough变换进行曲线参数提取:在使用三种算子对加噪后图像进行边缘检测以后,使用H

20、ough变换对检测后图像进行参数提取,并在提取成功以后,使用提取获得的参数进行图像的重建,最后将重建图像叠加到加噪图像中。注意在进行Hough变换时,对比观察获得图像与使用算子进行边缘检测获得图像之间的区别。5. 实验结果1.原图利用Robert算子进行边缘检测I=imread(houghorg.bmp);I=rgb2gray(I);BW=edge(I,roberts);axes(handles.axes1);imshow(BW)利用Sobel算子进行边缘检测I=imread(houghorg.bmp);I=rgb2gray(I);BW=edge(I,sobel);axes(handles.a

21、xes1);imshow(BW)利用Laplacian算子进行边缘检测I=imread(houghorg.bmp);I=rgb2gray(I);BW=edge(I,log);axes(handles.axes1);imshow(BW)Hough变换I=imread(houghorg.bmp);I=rgb2gray(I);BW=edge(I,sobel);r_max=100;r_min=40;step_r=1;step_angle=pi/20;p=0.5;m,n = size(BW);size_r = round(r_max-r_min)/step_r)+1;size_angle = round

22、(2*pi/step_angle);hough_space = zeros(m,n,size_r);rows,cols = find(BW);ecount = size(rows);% Hough变换% 将图像空间(x,y)对应到参数空间(a,b,r)% a = x-r*cos(angle)% b = y-r*sin(angle)for i=1:ecount for r=1:size_r for k=1:size_angle a = round(rows(i)-(r_min+(r-1)*step_r)*cos(k*step_angle); b = round(cols(i)-(r_min+(r

23、-1)*step_r)*sin(k*step_angle); if(a0&a0&b=max_para*p);length = size(index);hough_circle = false(m,n);for i=1:ecount for k=1:length par3 = floor(index(k)/(m*n)+1; par2 = floor(index(k)-(par3-1)*(m*n)/m)+1; par1 = index(k)-(par3-1)*(m*n)-(par2-1)*m; if(rows(i)-par1)2+(cols(i)-par2)2(r_min+(par3-1)*ste

24、p_r)2-5) hough_circle(rows(i),cols(i) = true; end endend% 打印检测结果for k=1:length par3 = floor(index(k)/(m*n)+1; par2 = floor(index(k)-(par3-1)*(m*n)/m)+1; par1 = index(k)-(par3-1)*(m*n)-(par2-1)*m; par3 = r_min+(par3-1)*step_r; fprintf(1,Center %d %d radius %dn,par1,par2,par3); para(:,k) = par1,par2,p

25、ar3;endaxes(handles.axes1);imshow(I), hold onviscircles(par2 par1,par3);2.加高斯噪声源代码及结果I=imread(houghorg.bmp);I=rgb2gray(I);I=imnoise(I,gaussian);axes(handles.axes1);imshow(I)imwrite(I,houghgau.bmp);利用Robert算子进行边缘检测利用Sobel算子进行边缘检测利用Laplacian算子进行边缘检测Hough变换3.加椒盐噪声源代码及结果I=imread(houghorg.bmp);I=rgb2gray(I);I=imnoise(I,salt & pepper);axes(handles.axes1);imshow(I)imwrite(I,houghsalt.bmp)利用Robert算子进行边缘检测利用Sobel算子进行边缘检测利用Laplacian算子进行边缘检测Hough变换

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!