数字图像处理课程设计报告

合集下载

数字图像课程设计报告

数字图像课程设计报告

《数字图像处理》课程设计报告——手写阿拉伯数字的识别1、课程设计目的1)、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。

2)、掌握文献检索的方法与技巧。

3)、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。

2、方法综述字符识别处理的信息可分为两大类:一类是文字信息,处理的主要是用各国家、各民族的文字(如:汉字,英文等)书写或印刷的文本信息,目前在印刷体和联机手写方面技术已趋向成熟,并推出了很多应用系统;另一类是数据信息,主要是由阿拉伯数字及少量特殊符号组成的各种编号和统计数据,如:邮政编码、统计报表、财务报表、银行票据等等,处理这类信息的核心技术是手写数字识别。

本次实验是对手写的阿拉伯数字进行识别,主要步骤包括预处理模块(其中用到图像分割方法),特征提取和利用人工神经网络(具体运用BP 神经网络方法)进行数字的识别。

2.1图像分割:图像分割就是把图像分成若干个特定的、具有独特性质的区域并提出感兴趣目标的技术和过程。

它是由图像处理到图像分析的关键步骤。

现有的图像分割方法主要分以下几类:基于阈值的分割方法、基于区域的分割方法、基于边缘的分割方法以及基于特定理论的分割方法等。

2.1.1基于阈值的分割方法灰度阈值分割[1]法是一种最常用的并行区域技术,它是图像分割中应用数量最多的一类。

阈值分割方法实际上是输入图像f到输出图像g的如下变换:其中,T为阈值,对于物体的图像元素g(i,j)=l,对于背景的图像元素g(i,j)=0。

由此可见,阈值分割算法的关键是确定阈值,如果能确定一个合适的阈值就可准确地将图像分割开来。

阈值确定后,将阈值与像素点的灰度值比较和像素分割可对各像素并行地进行,分割的结果直接给出图像区域。

阈值分割的优点是计算简单、运算效率较高、速度快。

在重视运算效率的应用场合(如用于硬件实现),它得到了广泛应用。

人们发展了各种各样的阈值处理技术,包括全局阈值、自适应阈值、最佳阈值等等。

数字图像处理课程设计报告(冈萨雷斯版)

数字图像处理课程设计报告(冈萨雷斯版)

1. 课程设计目的1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。

2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。

2.课程设计内容及实现2.1、网页安全色(Web-Safe Colors)为了完成这项工作,必须找到一个合适的程序,这个程序可以把指定的JPG图像生成RGB元素的图像。

例如,MATLAB的图像处理工具箱可以实现这一点,但你也可以使用图像编辑程序像Adobe的Photo-Shop或Corel的Photo-Paint。

为了实现把图像转换为RGB 这一目标,也可以手动修改。

(a)编写计算机程序,把任意的RGB彩色图像转换到Web安全的RGB图像(Web安全颜色定义见图6.10)。

(b)下载图像图6.8,转换为网络安全色的RGB彩色图像。

图6.8是JPG格式,所以结果返回也为JPG(请看本项目的开始注释)。

解释你的结果和图6.8之间的差异。

2.1.1程序清单:I=imread('Fig6.08.jpg');subplot(121);imshow(I);title('原图');I1=fix((I/51)*51);subplot(122);imshow(I1);title('web-safe colors');2.1.2运行结果如图1图1 网页安全色结果分析:结果图出现明显的方格,每个方格就是一个网页安全色,方格内的颜色一致。

原图则是普通的RGB,假使在原图的相同区域划分出和结果图相对应的方格,则此方格里的颜色是一个渐变的颜色,并非同一种颜色。

2.2、伪彩色图像处理(Pseudo-Color Image Processing )(a)实现图6.23的特性,你可以为输入图像指定两个范围的灰度值,然后你的程序将输出的RGB图像,它的像素有一个指定的颜色,对应于输入图像的一个范围的灰度级,RGB 图像中剩余的像素具有和输入图像相同的灰度。

电子科技大学-数字图像处理-课程设计报告

电子科技大学-数字图像处理-课程设计报告

电子科技大学数字图像处理课程设计课题名称数字图像处理院(系)通信与信息工程学院专业通信工程姓名学号起讫日期指导教师2015年12月15日目录摘要: (03)课题一:图像的灰度级分辨率调整 (04)课题二:噪声的叠加与频域低通滤波器应用 (06)课题三:顶帽变换在图像阴影校正方面的应用 (13)课题四:利用Hough变换检测图像中的直线 (15)课题五:图像的阈值分割操作及区域属性 (20)课题六:基于MATLAB®的GUI程序设计 (23)结束语: (36)参考文献: (37)基于MATLAB®的数字图像处理课题设计摘要本文首先对数字图像处理的相关定义、概念、算法与常用变换进行了介绍;并通过七个课题实例,借助MATLAB®的图像处理工具箱(Computer Vision System Toolbox)对这些案例逐一实现,包括图像的灰度值调整、图像噪声的叠加、频域低通滤波器、阈值分割、Hough变换等,常用的图像变化与处理;然后通过MATLAB®的GUI程序设计,对部分功能进行模块化整合,设计出了数字图像处理的简易软件;最后给出了软件的帮助文件以及该简易程序的系统结构和m代码。

关键词:灰度值调整噪声图像变换MATLAB® GUI设计课题一:图像的灰度级分辨率调整设计要求:128,64,32,16,8,4,2,并在同一个figure窗口将图像的灰度级分辨率调整至{}上将它们显示出来。

设计思路:灰度级分辨率又称色阶,是指图像中可分辨的灰度级的数目,它与存储灰度级别所使用的数据类型有关。

由于灰度级度量的是投射到传感器上的光辐射值的强度,所以灰度级分辨率又称为辐射计量分辨率。

随着图像灰度级分辨率的的逐渐降低,图像中所包含的颜色数目将变得越来越少,从而在颜色维度造成图像信息量的退化。

MATLAB®提供了histeq函数用于图像灰度值的改变,调用格式如下:J = histeq(I,n)其中J为变换后的图像,I为输入图像,n为变换的灰度值。

《数字图像处理技术课程设计报告》

《数字图像处理技术课程设计报告》

《数字图像处理技术》课程设计报告设计题目:车牌识别系统班级:数媒姓名:学号:一、目的与要求1、提高分析图像处理问题的能力,进一步巩固在《数字图像处理技术》课程中所掌握的基本原理与方法。

2、掌握并使用一门计算机语言,进行数字图像处理的应用设计。

二、设计的内容1、主要功能:牌照图像的采集和预处理、牌照区域的定位和提取、牌照字符的分割和识别等。

2、系统工作的原理以及过程:(1)当行驶的车辆经过时,触发埋设在固定位置的传感器,系统被唤醒处于工作状态;一旦连接摄像头光快门的光电传感器被触发,设置在车辆前方、后方和侧面的相机同时拍摄下车辆图像;(2)由摄像机或CCD 摄像头拍摄的含有车辆牌照的图像通视频卡输入计算机进行预处理,图像预处理包括图像转换、图像增强、滤波和水平较正等;(3)由检索模块进行牌照搜索与检测,定位并分割出包含牌照字符号码的矩形区域;(4)对牌照字符进行二值化并分割出单个字符,经归一化后输入字符识别系统进行识别。

三、总体方案设计车牌识别的最终目的就是对车牌上的文字进行识别。

主要应用的为模板匹配方法。

因为系统运行的过程中,主要进行的都是图像处理,在这个过程中要进行大量的数据处理,所以处理器和内存要求比较高,CPU要求主频在600HZ及以上,内存在128MB及以上。

系统可以运行于Windows98、Windows2000或者Windows XP操作系统下,程序调试时使用matlab。

1、功能模块的划分:(1)预处理及边缘提取:图象的采集与转换,边缘提取。

(2)牌照的定位和分割:牌照区域的定位,牌照区域的分割,车牌进一步处理。

(3)字符的分割与归一化:字符分割,字符归一化。

(4)字符的识别2、具体功能实现的原理以及流程图:1、预处理及边缘提取预处理及边缘提取流程图(1)图象的采集与转换:考虑到现有牌照的字符与背景的颜色搭配一般有蓝底白字、黄底黑字、白底红字、绿底白字和黑底白字等几种,利用不同的色彩通道就可以将区域与背景明显地区分出来,例如,对蓝底白字这种最常见的牌照,采用蓝色 B 通道时牌照区域为一亮的矩形,而牌照字符在区域中并不呈现。

《数字图像处理》课程设计报告

《数字图像处理》课程设计报告

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:M1for y=1:N1f(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:M1for y=1:N1G(x,y)=F(x,y)*H(x,y);endendelseerror('输入图像有误','ERROR');end %通过两个图像的乘法程序,实现对相应元素的相乘g=ifft2(G);subplot(3,2,4);imshow(g);title('(c)傅立叶逆变换的图像');for x=1:M1for y=1:N1g(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)为傅里叶变换的逆变换得到的图像。

数字图像处理课程设计报告

数字图像处理课程设计报告

数字图像处理设计报告【设计目的】配合《数字图像处理》课程的教学,使学生能巩固和加深对数字图像处理基础理论和基本知识的理解;掌握使用图像处理软件处理图像基本思想和方法;提高学生对图像处理方面的实际问题的应对能力并将所学知识在实践中巩固。

【设计要求】1.按照题目的要求,简要介绍算法,并对算法进行分析;2.用MATLAB完成算法代码(不能利用MATLAB自身的图像处理函数完成具体算法,读写和显示可以利用MATLAB函数),注释要清晰;3.给出代码运行的结果,并对结论进行总结;4.每人可选一个给出的题目或自己感兴趣的题目,按照上面要求上交报告,内容不得少于5页A4纸。

【所选题目】用直方图均衡化一幅8位的灰度图像【设计环境】MATLAB7.1,所选图片为彩色动画图片,大小为1024*666*24b【算法介绍和分析】1、算法概述:直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。

直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。

直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。

直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。

2、算法分析:直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态范围从而可达到增强图像整体对比度的效果。

设原始图像在(x,y)处的灰度为f,而改变后的图像为g,则对图像增强的方法可表述为将在(x,y)处的灰度f映射为g。

在灰度直方图均衡化处理中对图像的映射函数可定义为:g = EQ (f),这个映射函数EQ(f)必须满足两个条件(其中L为图像的灰度级数):(1)EQ(f)在0≤f≤L-1范围内是一个单值单增函数。

这是为了保证增强处理没有打乱原始图像的灰度排列次序,原图各灰度级在变换后仍保持从黑到白(或从白到黑)的排列。

数字图像处理-课程设计报告-matlab

数字图像处理-课程设计报告-matlab

数字图像处理课程设计报告姓名:学号:班级: .net设计题目:图像处理教师:赵哲老师提交日期:12月29日一、设计内容:主题:《图像处理》详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等),二、涉及知识内容:1、二值化2、各种滤波3、算法等三、设计流程图插入图片对图片进行处理二值化处理重复输出两幅图结束四、实例分析及截图效果:运行效果截图:第一步:读取原图,并显示close all;clear;clc;% 清楚工作窗口clc 清空变量clear 关闭打开的窗口close all I=imread('1.jpg');% 插入图片1.jpg 赋给Iimshow(I);% 输出图II1=rgb2gray(I);%图片变灰度图figure%新建窗口subplot(321);% 3行2列第一幅图imhist(I1);%输出图片title('原图直方图');%图片名称一,图像处理模糊H=fspecial('motion',40);%% 滤波算子模糊程度40 motion运动q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制q1=rgb2gray(q);imhist(q1);title('模糊图直方图');二,图像处理锐化H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的qq=imfilter(I,H,'replicate');。

数字图像处理课程设计报告封面和书写格式

数字图像处理课程设计报告封面和书写格式

《数字图像处理》课程设计报告( 2011 - 2012学年第 2 学期)专业班级:遥感09-02班姓名:董朝朝学号:310905060206指导老师:刘春国---------------------------------------------- 实习成绩:教师评语:教师签名:年月日实验项目:均值滤波一、实验内容1.位图文件读取、显示和存储,通过自己搭建一个Visual C++应用工程的基本流程,创建了一个基于MFC的Visual C++数字图像处理平台,实现了位图文件的读写、显示、存储操作。

2.均值滤波算法的原理:均值滤波采用的主要方法为领域平均法。

基本原理是用均值代替原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y),作为处理后图像在该点上的灰度个g(x,y),即个g(x,y)=1/m ∑f(x,y) m为该模板中包含当前像素在内的像素总个数。

我的具体做法:我用的是3*3的模板。

先把3*3的模板覆盖从开始的区域,然后在在其覆盖的区域中算出平均值。

在把算出来的平均值填写到中间的处理的像素上。

以此类推一步步的处理其他像素。

注明:在边缘化的像素没有做处理。

二、算法实现的主要内容1.打开消息函数代码:CString strFileName;static char szFilter[]="BMP文件(*.bmp)|*.bmp||";CFileDialog dlg(TRUE, "bmp", NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter);if(dlg.DoModal()!=IDOK) return;strFileName=dlg.GetPathName();(this->GetDocument())->SetTitle(strFileName);if(!dib.LoadBmpFile(strFileName,m_pBitmap,m_dwHeight,m_dwWidth,m_flag))return;Invalidate(true);显示图像代码:RECT rectDoc;GetClientRect(&rectDoc);CSize pageSize(rectDoc.right, rectDoc.bottom);CSize lineSize(100,1);CSize docSize(0,0);RECT rect;GetClientRect(&rect);BYTE *pImageDisp = NULL;BITMAPINFO *pBmpInfo = NULL;//设置在指定设备内容中(显卡内存)的拉伸模式pDC->SetStretchBltMode(COLORONCOLOR);if(m_pBitmap){dib.TransToBmp(m_dwHeight, m_dwWidth, m_pBitmap, pImageDisp, m_flag);dib.CreateBITMAPINFO(pBmpInfo, m_dwHeight, m_dwWidth, m_flag);//拷贝内存数据到显示器StretchDIBits(pDC->GetSafeHdc(),rect.left, rect.top,m_dwWidth, m_dwHeight,0,0,m_dwWidth, m_dwHeight,pImageDisp,pBmpInfo,DIB_RGB_COLORS,SRCCOPY);docSize.cx = rectDoc.left + m_dwWidth;docSize.cy = rectDoc.top + m_dwHeight;}SetScrollSizes(MM_TEXT,docSize,pageSize,lineSize);if(pImageDisp) delete pImageDisp;if(pBmpInfo) delete pBmpInfo;保存函数代码:CString strFileName;static char szFilter[] = "BMP文件(*.bmp)|*.bmp||";CFileDialog dlg(false, "bmp", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter);if(dlg.DoModal() != IDOK) return;strFileName = dlg.GetPathName();if(!dib.WriteBmpFile(strFileName, m_pBitmap, m_dwHeight, m_dwWidth, m_flag)) return;均值滤波主要代码:void CMy123View::Onjunzhi(){BYTE *pData = new BYTE[m_dwWidth*m_dwHeight];BYTE *JUNZHI=new BYTE[m_dwWidth*m_dwHeight];memcpy(pData, m_pBitmap, m_dwWidth*m_dwHeight);DWORD i,j;int lineByte = (m_dwWidth * m_flag / 8 + 3) / 4 * 4;int pixelByte = m_flag/ 8;for(i = 1; i < m_dwHeight-1; i++){for(j = 1; j < m_dwWidth-1; j++){*(JUNZHI+i*lineByte+j*pixelByte)=(*(pData+i*lineByte+j*pixelByte)+ *(pData+(i-1)*lineByte+j*pixelByte)+ *(pData+(i+1)*lineByte+j*pixelByte)+*(pData+i*lineByte+(j-1)*pixelByte)+ *(pData+i*lineByte+(j+1)*pixelByte)+ *(pData+(i-1)*lineByte+(j-1)*pixelByte)+ *(pData+(i-1)*lineByte+(j+1)*pixelByte)+*(pData+(i+1)*lineByte+(j-1)*pixelByte)+ *(pData+(i+1)*lineByte+(j+1)*pixelByte))/9; } // TODO: Add your command handler code here}memcpy(m_pBitmap, JUNZHI, m_dwWidth*m_dwHeight);if(pData) delete []pData;Invalidate(TRUE);}三、处理结果原始图像均值滤波之后的图像四、实习体会通过本次的实习,我熟悉了均值滤波的算法的原理,通过用c++编程实现灰度图像均值滤波功能,我知道这种滤波是牺牲了图像的清晰度来达到处理噪声的目的,其主要应该用于椒盐噪声,在这次的实习中,我熟悉了C++的编程环境,培养了学习C++的兴趣,同时提高了自己的学习能力,自己解决问题的能力,为以后的更深一步的学习奠定了良好的基础,我更加想学好而且坚定信念一定能学好C++。

数字图像处理课设报告

数字图像处理课设报告

数字图像处理课程设计报告细胞识别目录第一部分页脚内容11、实验课题名称----------------------------------------------------------------------------------32、实验目的----------------------------------------------------------------------------------------33、实验内容概要----------------------------------------------------------------------------------3第二部分1、建立工程文件----------------------------------------------------------------------------------32、图像信息获取----------------------------------------------------------------------------------43、如何建立下拉菜单----------------------------------------------------------------------------64、标记Mark点------------------------------------------------------------------------------------65、二值化---------------------------------------------------------------------------------------------96、填洞------------------------------------------------------------------------------------------------97、收缩------------------------------------------------------------------------------------------------108、获取中心点--------------------------------------------------------------------------------------119、细胞计数-----------------------------------------------------------------------------------------1310、All-steps-----------------------------------------------------------------------------------------1311、扩展功能---------------------------------------------------------------------------------------14第三部分12、各步骤结果和错误举例--------------------------------------------------------------------16页脚内容2第四部分13、心得体会----------------------------------------------------------------------------------------22第一部分1、实验课题:细胞识别2、实验目的:对血液细胞切片图片进行各种处理,最终得出细胞的数目、面积等信息。

数字图像处理课程设计(实验报告)

数字图像处理课程设计(实验报告)

数字图像处理课程设计报告姓名:x x学号:xxxxxxx班级: xxxxxxxxxxxxxxx设计题目:红细胞数目检测教师:xxxxxx老师提交日期: xx月xx日一、设计内容:主题:《红细胞数目检测》详细说明:读入红细胞图片,通过中值滤波,开运算,闭运算,以及贴标签等方法获得细胞个数。

二、现实意义:细胞数目检测在现实生活中的意义主要体现在医学上的作用,可通过细胞数目的检测来查看并估计病人或动物的血液中细胞数,如估测血液中红细胞、白细胞、血小板、淋巴细胞等细胞的数目,同时也可检测癌细胞的数目来查看医疗效果,根据这一系列的指标来对病人或动物进行治疗,是具有极其重要的现实作用的。

三、涉及知识内容:1、中值滤波2、开运算3、闭运算4、二值化5、贴标签四、实例分析及截图效果:(1)代码显示:1、程序中定义图像变量说明(1)Image--------------------------------------------------------------原图变量;(2)Image_BW-------------------------------------------------------值化图象; (3)Image_BW_medfilt-------------------------中值滤波后的二值化图像; (4)Optimized_Image_BW---通过“初次二值化图像”与“中值滤波后的二值化图像”进行“或”运算优化图像效果;(5)Reverse_Image_BW--------------------------优化后二值化图象取反;(6)Filled_Image_BW----------------------已填充背景色的二进制图像;(7)Open_Image_BW--------------------------------------开运算后的图像;2、实现代码:Image = imread('红细胞5.jpg');figure,imshow(Image);title('【原图】');Theshold = graythresh(Image);Image_BW = im2bw(Image,Theshold);figure,imshow(Image_BW);title('【初次二值化图像】');Image_BW_medfilt= medfilt2(Image_BW,[13 13]);figure,imshow(Image_BW_medfilt);title('【中值滤波后的二值化图像】');Optimized_Image_BW = Image_BW_medfilt|Image_BW;figure,imshow(Optimized_Image_BW);title('【进行“或”运算优化图像效果】');Reverse_Image_BW = ~Optimized_Image_BW;figure,imshow(Reverse_Image_BW);title('【优化后二值化图象取反】');Filled_Image_BW = bwfill(Reverse_Image_BW,'holes'); figure, imshow(Filled_Image_BW);title('【已填充背景色的二进制图像】');SE = strel('disk',4);Open_Image_BW = imopen(Filled_Image_BW,SE); figure, imshow(Open_Image_BW);title(' 【开运算后的图像】');[Label Number]=bwlabel(Open_Image_BW,8)Array = bwlabel(Open_Image_BW,8);Sum = [];for i=1:Number[r,c] = find(Array==i);rc = [r c];Num = length(rc);Sum([i])=Num;EndSumN = 0;for i=1:length(Sum)if(Sum([i])) > 1500N = N+1;endendNumber = Number+N3、运行效果截图:第一步:读取原图,并显示Image = imread('红细胞5.jpg');figure,imshow(Image);title(' 【原图】');第二步:进行二值化Theshold = graythresh(Image);%取得图象的全局域值Image_BW = im2bw(Image,Theshold);%二值化图象figure,imshow(Image_BW);title(' 【初次二值化图像】');第三步:进行二值化图像Image_BW_medfilt= medfilt2(Image_BW,[13 13]);figure,imshow(Image_BW_medfilt);title(' 【中值滤波后的二值化图像】');第四步:通过“初次二值化图像”与“中值滤波后的二值化图像”进行“或”运算优化图像效果Optimized_Image_BW = Image_BW_medfilt|Image_BW;figure,imshow(Optimized_Image_BW);title(' 【进行“或”运算优化图像效果】');第五步:优化后二值化图象取反,保证:'1'为'白色',0'为'黑色' Reverse_Image_BW = ~Optimized_Image_BW;figure,imshow(Reverse_Image_BW);title(' 【优化后二值化图象取反】');第六步:填充二进制图像的背景色,去掉细胞内的黑色空隙Filled_Image_BW = bwfill(Reverse_Image_BW,'holes');figure, imshow(Filled_Image_BW);title(' 【已填充背景色的二进制图像】');第七步:对图像进行开运算,去掉细胞与细胞之间相粘连的部分SE = strel('disk',4);Open_Image_BW = imopen(Filled_Image_BW,SE);figure, imshow(Open_Image_BW);title(' 【开运算后的图像】');第八步:开始计算细胞数[Label Number]=bwlabel(Open_Image_BW,8)%初步取得细胞个数Array = bwlabel(Open_Image_BW,8);%取得贴标签处理后的图像Sum = [];%依次统计贴标签后数组for i=1:Number[r,c] = find(Array==i);%获取相同标签号的位置,将位置信息存入[r,c]rc = [r c];Num = length(rc);%取得vc数组的元素的个数Sum([i])=Num;%将元素个数存入Sum数组endSumN = 0;-----假如Sum数组中的元素大于了1500,表示有两个细胞相连,像素点较多,即分为两个细胞数---for i=1:length(Sum)if(Sum([i])) > 1500N = N+1;endendNumber = Number+N %----统计最终细胞数第九步:最终检测结果:Number =92Sum =Columns 1 through 103011 313 1501 329 2238 795 758 1438 1087 1472Columns 11 through 201476 1465 2902 1128 1655 44 6261 1193 1306 215Columns 21 through 301112 1074 1177 930 493 1438 1121 1678 1210 1330Columns 31 through 401370 1369 1153 1284 1061 589 2146 1486 1335 1049Columns 41 through 501275 1101 1127 661 1530 1304 2861 90 1772 854Columns 51 through 601554 1582 1287 1362 81 2090 608 1736 853 1040Columns 61 through 702779 1500 246 77 1096 14819680 1404 783 724Columns 71 through 801439 626 1097 1823 1511 1223 1494 2494 1519 1329Columns 81 through 90733 1119 1205 1147 1295 1398 344 1634 324 1081Columns 91 through 92529 239Number =114四、算法分析(1)中值滤波利用中值滤波可以对图像进行平滑处理。

数字图像处理课程设计报告

数字图像处理课程设计报告

本科综合课程设计报告题 目 ____________________________指导教师__________________________辅导教师__________________________ 学生姓名__________________________ 学生学号_________________________________________________________院(部)____________________________专业________________班___2008___年 _12__月 _30__日数字图像处理演示系统信息科学与技术学院 通信工程 0521 主要内容1.1数字图像处理背景及应用数字图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。

目前,图像处理演示系统应用领域广泛医学、军事、科研、商业等领域。

因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。

本图像处理演示系统以数字图像处理理论为基础,对某些常用功能进行界面化设计,便于初级用户的操作。

图像处理演示系统设计要求能加载和显示原始图像,显示和输出处理后的图像;系统要便于维护和具备可扩展性;界面友好便于操作;图像处理演示系统设计任务数字图像处理演示系统应该具备图像的几何变换(平移、缩放、旋转、翻转)、图像增强(空间域的平滑滤波与锐化滤波)的简单处理功能。

几何变换几何变换又称为几何运算,它是图像处理和图像分析的重要内容之一。

通过几何运算,可以根据应用的需要使原图像产生大小、形状、和位置等各方面的变化。

简单的说,几何变换可以改变像素点所在的几何位置,以及图像中各物体之间的空间位置关系,这种运算可以被看成是将各物体在图像内移动,特别是图像具有一定的规律性时,一个图像可以由另外一个图像通过几何变换来产生。

数字图像处理--图像处理课程设计 报告

数字图像处理--图像处理课程设计 报告

《数字图像处理》课程设计1、课程设计目的1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。

2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。

2、课程设计要求1、要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。

尤其是对编程软件的使用有基本的认识。

2、既要虚心接受老师的指导,又要充分发挥主观能动性。

结合课题,独立思考,努力钻研,勤于实践,勇于创新。

3、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。

4、在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。

5.2实施要求1、理解各种图像处理方法确切意义。

2、独立进行方案的制定,系统结构设计要合理。

3、在程序开发时,则必须清楚主要实现函数的目的和作用,需要在程序书写时说明做适当的注释。

如果使用matlab来进行开发,要理解每个函数的具体意义和适用范围,在写课设报告时,必须要将主要函数的功能和参数做详细的说明。

4、通过多幅不同形式的图像来检测该系统的稳定性和正确性。

用图像平均的方法消除噪声编程:J=imread('1036032.jpg');I = rgb2gray(J);[m,n]=size(I);II1=zeros(m,n);for i=1:16II(:,:,i)=imnoise(I,'gaussian',0,0.01);II1=II1+double(II(:,:,i));if or(or(i==1,i==4),or(i==8,i==16));figure;imshow(uint8(II1/i));endend迭加零均值高斯随机噪声图像4幅同类图像加平均8幅同类图像加平均16幅同类图像加平均用平滑滤波方法消除噪声编程:I=imread('001122.jpg');I=rgb2gray(I);J=imnoise(I,'gaussian',0,0.02);subplot(231),imshow(I);title('原图像');subplot(232),imshow(J);title('添加高斯噪声图像');k1=filter2(fspecial('average',3),J);k2=filter2(fspecial('average',5),J);k3=filter2(fspecial('average',7),J);k4=filter2(fspecial('average',9),J);subplot(233),imshow(uint8(k1));title('3*3模板平滑滤波'); subplot(234),imshow(uint8(k2));title('5*5模板平滑滤波'); subplot(235),imshow(uint8(k3));title('7*7模板平滑滤波'); subplot(236),imshow(uint8(k4));title('9*9模板平滑滤波');用中值滤波方法消除噪声编程:I=imread('1036032.jpg');I=rgb2gray(I);J=imnoise(I,'gaussian',0,0.01);subplot(231),imshow(I);title('原图像');subplot(232),imshow(J);title('添加高斯白噪声图像');k1=medfilt2(J);k2=medfilt2(J,[5 5]);k3=medfilt2(J,[7 7]);k4=medfilt2(J,[9 9]);subplot(233),imshow(k1);title('3×3模板中值滤波') subplot(234),imshow(k2);title('5×5模板中值滤波') subplot(235),imshow(k3);title('7×7模板中值滤波') subplot(236),imshow(k4);title('9×9模板中值滤波')用理想低通滤波方法消除噪声编程:I=imread('001122.jpg');J= rgb2gray(I);J=imnoise(J,'gaussian',0,0.02);subplot(331);imshow(J);J=double(J);f=fft2(J);g=fftshift(f);subplot(332);imshow(log(abs(g)),[]),color(jet(64)); [M,N]=size(f);n1=floor(M/2);n2=floor(N/2);d0=5;for i=1:Mfor j=1:Nd=sqrt((i-n1)^2+(j-n2)^2);if d<=d0h=1;elseh=0;endg(i,j)=h*g(i,j);endendg=ifftshift(g);g=uint8(real(ifft2(g)));subplot(333);imshow(g);I=imread('001122.jpg');J= rgb2gray(I);J=imnoise(J,'gaussian',0,0.02);subplot(331);imshow(J);J=double(J);f=fft2(J);g=fftshift(f);subplot(332);imshow(log(abs(g)),[]),color(jet(64)); [M,N]=size(f);n1=floor(M/2);n2=floor(N/2);d0=15;for i=1:Mfor j=1:Nd=sqrt((i-n1)^2+(j-n2)^2);if d<=d0h=1;elseh=0;endg(i,j)=h*g(i,j);endendg=ifftshift(g);g=uint8(real(ifft2(g)));subplot(334);imshow(g);I=imread('001122.jpg');J= rgb2gray(I);J=imnoise(J,'gaussian',0,0.02);subplot(331);imshow(J);J=double(J);f=fft2(J);g=fftshift(f);subplot(332);imshow(log(abs(g)),[]),color(jet(64)); [M,N]=size(f);n1=floor(M/2);n2=floor(N/2);d0=45;for i=1:Mfor j=1:Nd=sqrt((i-n1)^2+(j-n2)^2);if d<=d0h=1;elseh=0;endg(i,j)=h*g(i,j);endendg=ifftshift(g);g=uint8(real(ifft2(g)));subplot(335);imshow(g);I=imread('001122.jpg');J= rgb2gray(I);J=imnoise(J,'gaussian',0,0.02);subplot(331);imshow(J);J=double(J);f=fft2(J);g=fftshift(f);subplot(332);imshow(log(abs(g)),[]),color(jet(64)); [M,N]=size(f);n1=floor(M/2);n2=floor(N/2);d0=65;for i=1:Mfor j=1:Nd=sqrt((i-n1)^2+(j-n2)^2);if d<=d0h=1;elseh=0;endg(i,j)=h*g(i,j);endendg=ifftshift(g);g=uint8(real(ifft2(g)));subplot(336);imshow(g);用巴特沃斯低通滤波方法消除噪声I=imread('001122.jpg');I=rgb2gray(I);J=imnoise(I,'gaussian',0,0.04); subplot(121);imshow(J);title('高斯白噪声图像');J=double(J);f=fft2(J);g=fftshift(f);[M,N]=size(f);n=3;d0=20;n1=floor(M/2);n2=floor(N/2);for i=1:Mfor j=1:Nd=sqrt((i-n1)^2+(j-n2)^2); h=1/(1+(d/d0)^(2*n));g(i,j)=h*g(i,j);endendg=ifftshift(g);g=uint8(real(ifft2(g)));subplot(122);imshow(g);title('巴特沃斯低通滤波');峰值信噪比PSNR程序:function result=psnr(in1,in2)in1=imread('a.jpg'); %a为原图像%in2=imread('b.jpg'); %b为调制之后的图像% z=mse(in1,in2);result=10*log10(255.^2/z);function z=mse(x,y)x=double(x);y=double(y);[m,n]=size(x);z=0;for i=1:mfor j=1:nz=z+(x(i,j)-y(i,j)).^2;endendz=z/(m*n);方法一图像平均的方法处理得到信噪比分别如下:ans =7.1689ans =7.2601ans =7.2789ans =7.2876方法二平滑滤波方法处理得到信噪比分别如下:ans =6.0426ans =6.0713ans =6.0955ans =6.1052方法三中值滤波方法处理得到信噪比分别如下:ans =7.1708ans =7.2487ans =7.2830ans =7.3065ans =7.3290方法四理想低通滤波方法处理得到的信噪比:ans =5.9024ans =6.3146ans =6.1266ans =6.0586ans =6.0479方法五巴特沃斯低通滤波方法处理得到的信噪比:ans =5.9042ans =6.2459。

数字图像处理课程设计实验报告

数字图像处理课程设计实验报告

学校代码:10128学号:数字图像处理课程设计题目:数字图像处理及H u u f m a n(或小波变换)编码仿真实现学生姓名:学院:信息工程学院系别:电子信息工程系专业:电子信息工程班级:电子指导教师:2012 年月日内蒙古工业大学课程设计(论文)任务书课程名称:数字图像处理课程设计学院:信息工程班级: ___ 学生姓名:学号:指导教师:数字图像处理课程设计1、课程设计目的通过本课程设计使学生了解数字图像的基本概念,掌握数字图像处理的基本内容,如图像点运算、几何变换、增强处理、图像复原、边缘检测以及图像压缩等的基本原理和Matlab实现方法。

通过本次课程设计,让学生掌握如何学习一门语言,如何进行资料查阅搜集,如何自己解决问题等方法,养成良好的学习习惯。

扩展理论知识,培养学生的综合设计能力。

2、课程设计内容2.1 图像处理基本功能1)数字图像的变换:普通傅里叶变换(ft)与逆变换(ift)、快速傅里叶变换(fft)与逆变换(ifft)、离散余弦变换(DCT),小波变换。

2) 数字图像直方图的统计及绘制等;3)基于Matlab的图像平滑算法实现及应用2.2 图像处理综合功能1) 图像复原程序设计●创建一个仿真运动/均值模糊PSF来模糊一幅图像(图像自选)。

●针对退化设计出复原滤波器,对退化图像进行复原(复原的方法自定)。

●对退化图像进行复原,显示复原前后图像,对复原结果进行分析,并评价复原算法。

2) 给定a,b,c,d概率,进行huffman编码,要求显示原图像、压缩后图像的文件大小、压缩比;或采用小波变换进行编码3、课程设计背景与基本原理3.1课程设计背景数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。

是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。

3.2课程设计基本原理3.2.1傅里叶变换傅里叶变换是可分离和正交变换中的一个特例,对图像的傅里叶变换将图像从图像空间变换到频率空间,从而可利用傅里叶频谱特性进行图像处理。

图像处理课程设计

图像处理课程设计

《数字图像处理》课程设计报告基于MFC的数字图像处理系统设计指导教师 _________________学生姓名 _________________学生学号 ____________________________________ (部)_______ 专业 ________ 班2014年7月1日1. 目的与要求将实验1至实验8所设计的数字图像处理的算法和功能添加到同一个MFC程序中(可以是基于对话框的程序,或者基于单/多文档的程序),形成一个基于MFC勺图像处理系统,可以增加一些课本上没有讲到的效果,如风格化等,开发的结果是类似PS的一款软件。

要求:用户可设置具体参数,可以通过该平台展现不同参数下的实验效果。

2. 主要技术和原理2.1彩色转换彩色图像转换为8位灰度图像,利用cvCreatelmage创建图像函数语法:Ipllmage *cvCreatelmage(CvSize size, int depth, int channels)参数:size :图像的宽、高。

depth :图像图元深度。

channels每个图元的颜色通道数。

返回值:IplImage结构体。

cvCvtColor色彩空间转换函数语法:void cvCvtColor(const CvArr* src, CvArr* dst, int code)参数:src为源图像的不定数组,CvArr*指针,一般情况为IplImage型指针。

Dst:目的地址的CvArr指针,一般为IplImage型结构体。

Code色彩转换空间,常数定义为CV_<src_color_space>2<dst_color_space>2.2几何变换1)翻转翻转分为水平翻转和垂直翻转。

cvFlip垂直,水平或既垂直又水平地翻转二维数组语法:void cvFlip( const CvArr* src, CvArr* dst=NULL, int flip_mode=0)参数:src输入数组dst输出数组,若dst = NULL,则翻转是在内部替换。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告书课程名称:数字图像处理题目:数字图像处理的傅里叶变换学生姓名:专业:计算机科学与技术班别:计科本101班学号:指导老师:日期:2013 年06 月20 日数字图像处理的傅里叶变换1.课程设计目的和意义(1)了解图像变换的意义和手段(2)熟悉傅里叶变换的基本性质(3)热练掌握FFT的方法反应用(4)通过本实验掌握利用MATLAB编程实现数字图像的傅里叶变换通过本次课程设计,掌握如何学习一门语言,如何进行资料查阅搜集,如何自己解决问题等方法,养成良好的学习习惯。

扩展理论知识,培养综合设计能力。

2.课程设计内容(1)熟悉并掌握傅立叶变换(2)了解傅立叶变换在图像处理中的应用(3)通过实验了解二维频谱的分布特点(4)用MATLAB实现傅立叶变换仿真3.课程设计背景与基本原理傅里叶变换是可分离和正交变换中的一个特例,对图像的傅里叶变换将图像从图像空间变换到频率空间,从而可利用傅里叶频谱特性进行图像处理。

从20世纪60年代傅里叶变换的快速算法提出来以后,傅里叶变换在信号处理和图像处理中都得到了广泛的使用。

3.1课程设计背景数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。

是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。

3.2 傅里叶变换(1)应用傅里叶变换进行数字图像处理数字图像处理(digital image processing)是用计算机对图像信息进行处理的一门技术,使利用计算机对图像进行各种处理的技术和方法。

20世纪20年代,图像处理首次得到应用。

20世纪60年代中期,随电子计算机的发展得到普遍应用。

60年代末,图像处理技术不断完善,逐渐成为一个新兴的学科。

利用数字图像处理主要是为了修改图形,改善图像质量,或是从图像中提起有效信息,还有利用数字图像处理可以对图像进行体积压缩,便于传输和保存。

数字图像处理主要研究以下内容:傅立叶变换、小波变换等各种图像变换;对图像进行编码和压缩;采用各种方法对图像进行复原和增强;对图像进行分割、描述和识别等。

随着技术的发展,数字图像处理主要应用于通讯技术、宇宙探索遥感技术和生物工程等领域。

傅里叶变换在数字图像处理中广泛用于频谱分析,傅里叶变换是线性系统分析的一个有力工具,它使我们能够定量地分析诸如数字化系统,采样点,电子放大器,卷积滤波器,噪声,显示点等地作用(效应)。

傅里叶变换(FT)是数字图像处理技术的基础,其通过在时空域和频率域来回切换图像,对图像的信息特征进行提取和分析,简化了计算工作量,被喻为描述图像信息的第二种语言,广泛应用于图像变换,图像编码与压缩,图像分割,图像重建等。

因此,对涉及数字图像处理的工作者,深入研究和掌握傅里叶变换及其扩展形式的特性,是很有价值得。

(2)关于傅里叶(Fourier)变换在信号处理中,傅里叶变换可以将时域信号变到频域中进行处理,因此傅里叶变换在信号处理中有着特殊重要的地位。

傅里叶变换能将满足一定条件的某个函数表示成三角函数(正弦和/或余弦函数)或者它们的积分的线性组合。

在不同的研究领域,傅里叶变换具有多种不同的变体形式,如连续傅里叶变换和离散傅里叶变换。

傅里叶变换属于谐波分析。

傅里叶变换的逆变换容易求出,而且形式与正变换非常类似;正弦基函数是微分运算的本征函数,从而使得线性微分方程的求解可以转化为常系数的代数方程的求解.在线性时不变的物理系统内,频率是个不变的性质,从而系统对于复杂激励的响应可以通过组合其对不同频率正弦信号的响应来获取; 卷积定理指出:傅里叶变换可以化复杂的卷积运算为简单的乘积运算,从而提供了计算卷积的一种简单手段; 离散形式的傅里叶变换可以利用数字计算机快速的算出(其算法称为快速傅里叶变换算法(FFT))。

3.3 离散余弦变换离散余弦变换(discrete cosine transform,DCT )是一种可分离和正交变换并且是对称的。

它与傅里叶变换也有密切的联系,近年得到了广泛应用,特别是在图像压缩领域。

1-D 离散余弦变换和其反变换由以下两式定义:∑-=+=10]2)12(cos[)()()(n x Nu x x f u a u C π u=0,1,...,N-1 ∑-=+=10]2)12(cos[)()()(N u N u x u C u a x f π x=0,1,...,N-1 其中a(u)为归一化加权系数,由下式定义:⎪⎩⎪⎨⎧-===1,...,2,1201)(N u N u Nu a2-Dd DCT 对由下面两式定义:∑∑-=-=++=1010]2)12(cos[]2)12(cos[),()()(),(N x N y Nv y N u x y x f v a u a v u C ππ u,v=0,1,...,N-1 ∑∑-=-=++=1010]2)12(cos[]2)12(cos[),()()(),(N x N y N v y N u x v u C v a u a y x f ππ x,y=0,1,...,N-1 4.设计步骤(1)打开计算机,安装和启动MATLAB 程序;在“Current Directory ” 中选择待处理图像文件所在文件夹。

(2)利用MatLab菜单栏中单击“File”→“New”→“M-File”,在弹出的Editor - Untitled窗口编辑区中输入程序代码。

(3)输入完成后单击Editor - Untitled菜单栏中的“Debug”→“Save and Run”运行程序。

对该程序进行编译,检查错误并纠正,运行并显示结果,比较差异。

5、程序设计方法一:直接将彩色图像进行傅里叶变换,再求离散傅里叶频谱图程序如下:i=imread('maomi.bmp');figure(1)imshow(i);colorbar; %显示图像的颜色条title('原彩色图像') %图像命名X1=img(:,:,1);X2=img(:,:,2);X3=img(:,:,3);Y1=fft2(X1); %傅里叶变换Y2=fft2(X2);Y3=fft2(X3);Y11=real(ifft2(Y1)); %傅里叶反变换Y21=real(ifft2(Y2));Y31=real(ifft2(Y3));Y(:,:,1)=Y11;Y(:,:,2)=Y21;Y(:,:,3)=Y31;YY=uint8(Y);figure(2);imshow(YY,[ ]);colorbar; %显示图像的颜色条title('经过二维快速傅里叶变换再逆变换后的图像') %图像命名i=i(:,:,3);ffti=fft2(i);sffti=fftshift(ffti); %求离散傅里叶频谱%对原始图像进行二维离散傅里叶变换,并将其坐标原点移到频谱图中央位置RRfdp1=real(sffti); %取傅立叶变换的实部IIfdp1=imag(sffti); %取傅立叶变换的虚部a=sqrt(RRfdp1.^2+IIfdp1.^2); %计算频谱幅值a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225; %归一化figure(5) %设定窗口colorbar; %显示图像的颜色条title('原彩色图像的离散傅里叶频谱') %图像命名方法二:将彩色图像转换为灰度图像在进行傅里叶变换,再求原彩色图像的离散傅里叶频谱图程序如下:i=imread('maomi.bmp'); %读入原图像文件figure(1); %设定窗口imshow(i); %显示原图像colorbar; %显示图像的颜色条title('原彩色图像') %图像命名I=rgb2gray(i);figure(2); %设定窗口imshow(I);colorbar; %显示图像的颜色条title('原彩色图像转换为灰度图像') %图像命名j=fft2(I); %二维离散傅里叶变换k=fftshift(j); %直流分量移到频谱中心l=log(abs(k)); %数字图像的对数变换figure(3); %设定窗口imshow(l,[]); %显示过二维快速傅里叶变换后的图像colorbar; %显示图像的颜色条title('经过二维快速傅里叶变换后的图像') %图像命名n=ifft2(j)/255; %逆二维快速傅里叶变换figure(4); %设定窗口imshow(n); %显示经过二维快速傅里叶逆变换后的图像colorbar; %显示图像的颜色条title('经过二维快速傅里叶逆变换后的灰度图像') %图像命名i=i(:,:,3);ffti=fft2(i);sffti=fftshift(ffti); %求离散傅里叶频谱%对原始图像进行二维离散傅里叶变换,并将其坐标原点移到频谱图中央位置RRfdp1=real(sffti); %取傅立叶变换的实部IIfdp1=imag(sffti); %取傅立叶变换的虚部a=sqrt(RRfdp1.^2+IIfdp1.^2); %计算频谱幅值a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225; %归一化figure(5) %设定窗口imshow(real(a)); %显示离散傅里叶频谱图像colorbar; %显示图像的颜色条title('原彩色图像的离散傅里叶频谱') %图像命名6.运行结果对源代码检查无误运行后,通过这些图可以看出一幅图片经过不同类型的傅里叶变换后,能够达到不同的处理效果。

6.1方法一运行结果如下:图1-1 原彩色图像图1-2 经过二维快速傅里叶变换再逆变换后的图像图1-3 原彩色图像的离散傅里叶频谱图6.2方法二运行结果如下:图2-1 原彩色图像图2-2 原彩色图像的灰度图图2-3 经过二维傅里叶变换后的图像图2-4 经过二维快速傅里叶逆变换后的灰度图像。

相关文档
最新文档