《数字图像处理》课程设计报告.doc_第1页
《数字图像处理》课程设计报告.doc_第2页
《数字图像处理》课程设计报告.doc_第3页
《数字图像处理》课程设计报告.doc_第4页
《数字图像处理》课程设计报告.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字图像处理课程设计报告1课程设计目的1、 提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。2、 熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。2课程设计内容及实现 2.1、二维快速傅立叶变换:本项目的重点是:这个项目的目的是开发一个2-D FFT程序“包”,将用于在其他几个项目。您的实现必须有能力:(a) 乘以(-1),x + y的中心变换输入图像进行滤波。(b) 一个真正的函数相乘所得到的(复杂的)的阵列(在这个意义上的实系数乘以变换的实部和虚部)。回想一下,对相应的元件上完成两幅图像的乘法。(c) 计算傅立叶逆变换。(d) 结果乘以(-1)x + y的实部。(e) 计算频谱。基本上,这个项目实现了图。4.5。如果您正在使用MATLAB,那么您的傅立叶变换程序将不会受到限制,其大小是2的整数次幂的图像。如果要实现自己的计划,那么您所使用的FFT例程可能被限制到2的整数次幂。在这种情况下,你可能需要放大或缩小图像到适当的大小,使用你的程序开发项目02-04 逼近:为了简化这个和以下的工程(除项目04-05),您可以忽略图像填充(4.6.3节)。虽然你的结果不会完全正确,将获得显着的简化,不仅在图像的大小,而且在需要裁剪的最终结果。由这种近似的原则将不会受到影响结果如下:主要代码f=imread(Fig4.04(a).jpg);H=imread(Fig4.04(a).jpg);subplot(3,2,1);imshow(f);title(a)原图像);M1,N1=size(f);f=im2double(f); M2,N2=size(H);H=im2double(H); %把灰度图像I1的数据类型转换成转换成双精度浮点类型for x=1:M1 for y=1:N1 f(x,y)=(-1)(x+y)*f(x,y); %用(-1)(x+y)乘以输入图像,来实现中心化变换 endendF=fft2(f); %使用函数fft2可计算傅立叶变换 subplot(3,2,3);imshow(F);title(b)傅立叶变换的图像);if(M2=1)&(N2=1) G=F(x,y)*H(x,y); elseif(M1=M2)&(N1=N2) for x=1:M1 for y=1:N1 G(x,y)=F(x,y)*H(x,y); end endelse error(输入图像有误,ERROR); end %通过两个图像的乘法程序,实现对相应元素的相乘g=ifft2(G);subplot(3,2,4);imshow(g); title(c)傅立叶逆变换的图像);for x=1:M1 for y=1:N1 g(x,y)=(-1)(x+y)*g(x,y); endendg=real(g); S=log(1+abs(F); %计算傅立叶幅度谱并做对数变换 subplot(3,2,5); plot(S); %二维图像显示幅度谱 title(d)二维图像显示幅度谱);Q=angle(F); %计算傅立叶变换相位谱subplot(3,2,6); plot(Q);title(e)二维图像显示相位谱); %二维图像显示相位谱结果截图图1 傅里叶变换及频谱图结果分析:图1中(a)是原始灰度图像,对原图进行傅里叶变换,用(-1)(x+y)乘以输入图像,来实现中心化变换得到(b),(c)为傅里叶变换的逆变换得到的图像。对应(d)、(e)分别为计算的幅度谱和相位谱。2.2、傅立叶频谱和平均值本项目的重点是:(a) 下载图。 4.18(a)和计算(居中)傅立叶频谱。(b) 显示频谱。(c) 使用(a)中计算图像的平均值的结果结果如下:主要代码%abs-取绝对值和复数幅度%fft2-求二维离散傅立叶变换I = imread(Fig4.11(a).jpg);I1 = fft2(I);X = fftshift(abs(I1); %直流分量移到频谱中心m,n = size(X);Average_value = X(m/2+1,n/2+1)/(m*n) %平均值计算I1 = abs(I1)*256/max(max(abs(I1); %傅立叶谱图像X = X*256/max(max(X); %中心化的傅立叶谱图像subplot(1,3,1);imshow(I);title(a)原图像);subplot(1,3,2);imshow(I1);title(b)傅立叶谱图像);subplot(1,3,3);imshow(X);title(c)中心化的傅立叶谱图像);结果截图图 1 计算图像的频谱图并中心化图3 平均值结果分析:图2中(a)为原始图像,先对图像进行傅里叶变换得到(b),然后移至频谱中心得到(c),图3为图像的平均值的结果,此结果是在matlab窗口中实现的。2.3、低通滤波本项目的重点是:(a) 实现高斯低通滤波器式。 (4.3-7)。你必须能够指定大小,MN的,由此产生的2D功能。此外,你必须能够指定二维高斯函数的中心位置(b) 下载图。4.11(一)这个形象是同图。 4.18(a)和低通滤波器中取得图。 4.18(三) 结果如下:主要代码I=imread(Fig4.11(a).jpg)subplot(1,2,1);imshow(I); title(a)原始图像);s=fftshift(fft2(I);M,N=size(s); %分别返回s的行数到M中,列数到N中n=2; %对n赋初值%高斯低通滤波,这里以标准差d0=30来分析图像d0=30; %初始化d0n1=floor(M/2); %对M/2进行取整n2=floor(N/2); %对N/2进行取整for i=1:M for j=1:N d=sqrt(i-n1)2+(j-n2)2); %点(i,j)到傅立叶变换中心的距离 h=1*exp(-1/2*(d2/d02); %GLPF滤波函数 s(i,j)=h*s(i,j); %GLPF滤波后的频域表示 endends=ifftshift(s); %对s进行反FFT移动%对s进行二维反离散的Fourier变换后,取复数的实部转化为无符号8位整数s=uint8(real(ifft2(s); %创建图形图像对象subplot(1,2,2);imshow(s); %显示高斯低通滤波处理后的图像title(b)高斯低通滤波(d0=30);结果截图图 2 高斯低通实现的图像结果分析:图4中(a)为原始图像,将原始图像经过高斯低通滤波,得到(b),这里以标准差d0=15来分析图像。2.4、使用一个低通图像高通滤波本项目的重点是:(a) 从原来的04-03项目减去你的形象得到锐化后的图像,如式。 (4.4-14)。你会注意到,生成的图像并不像高斯高通图。 4.26。解释为什么会是这样(b) 调整的方差高斯低通滤波器,直到图像相减得到的结果看起来类似于 图。 4.26(三)。解释你的结果结果如下:主要代码I=imread(Fig4.11(a).jpg)s=fftshift(fft2(I);M,N=size(s); %分别返回s的行数到M中,列数到N中n=2; %对n赋初值%高斯低通滤波,这里以标准差d0=30来分析图像d0=30; %初始化d0n1=floor(M/2); %对M/2进行取整n2=floor(N/2); %对N/2进行取整for i=1:M for j=1:N d=sqrt(i-n1)2+(j-n2)2); %点(i,j)到傅立叶变换中心的距离 h=1*exp(-1/2*(d2/d02); %GLPF滤波函数 s(i,j)=h*s(i,j); %GLPF滤波后的频域表示 endends=ifftshift(s); %对s进行反FFT移动%对s进行二维反离散的Fourier变换后,取复数的实部转化为无符号8位整数s=uint8(real(ifft2(s); %创建图形图像对象subplot(1,2,1);imshow(s); %显示高斯低通滤波处理后的图像title(a)高斯低通滤波实现的图片);s=fftshift(fft2(I);M,N=size(s); %分别返回s的行数到M中,列数到N中n=2; %对n赋初值%高斯高通滤波,这里以标准差d0=30来分析图像d0=30; %初始化d0n1=floor(M/2); %对M/2进行取整n2=floor(N/2); %对N/2进行取整for i=1:M for j=1:N d=sqrt(i-n1)2+(j-n2)2); %点(i,j)到傅立叶变换中心的距离 h=1-1*exp(-1/2*(d2/d02); %GLPF滤波函数 s(i,j)=h*s(i,j); %GLPF滤波后的频域表示 endends=ifftshift(s); %对s进行反FFT移动%对s进行二维反离散的Fourier变换后,取复数的实部转化为无符号8位整数s=uint8(real(ifft2(s); %创建图形图像对象subplot(1,2,2);imshow(s); %显示高斯高通滤波处理后的图像title(b)高斯高通滤波实现的图片);结果截图图 3 高通实现的图像结果分析:图5中(a)为经过高斯低通处理的图像,将此图像经过高斯高通处理得到(b)。2.5、在频域的相关性本项目的重点是:下载图。 4.41(a)及(b)和重复例4.11获得图。 4.41(E)。给(的x,y)的二维相关函数中的最大值的位置的坐标。有没有必要在图中绘制的档案中。 4.41(F)结果如下:主要代码clear;clc;fa=imread(fig4.41(a).jpg);fb=imread(fig4.41(b).jpg);subplot(2,2,1);imshow(fa);title(a)原始图像);subplot(2,2,2);imshow(fb);title(b)模板);A B=size(fa);C D=size(fb);expfa=zeros(A+C-1,B+D-1);expfb=zeros(A+C-1,B+D-1);expfa(1:A,1:B)=fa;expfb(1:C,1:D)=fb;subplot(2,2,3);imshow(expfa);title(c)图像延拓);subplot(2,2,4);imshow(expfb);title(d)图像延拓);H=real(ifft2(fft2(expfa).*fft2(rot90(expfb,2),293,297);%求相关性 figure;imshow(H,)title(e)两图像延拓之后的相关函数);max(H(:) %求取最大的相关值因为是利用模板做的相关运算,值最大的地方最相关thresh=21417100;%设置一个略低于最大相关值的阈值figure;imshow(H thresh)%显示定位.title(f)图像定位);结果截图图 4 两原始图像的延拓图7 延拓之后

温馨提示

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

评论

0/150

提交评论