

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实用标准文案文档大全目录一、课程设计目的.3二、课程设计要求.3三、课程设计的内容. . .3四、题目分析. . .3五、总体设计.4六、具体设计. .51、.文件.51.1、打开. .51.2、保存.51.3、退出. .52、 编辑.56.2.1、 灰度.56.2.2、 亮度.66.2.3、 截图.76.2.4、 缩放.73、 旋转.96.3.1、 上下翻转.96.3.2、 左右翻转. .96.3.3 任意角度翻转. .96.4、 噪声. .106.5、 滤波.106.6、 直方图统计. 116.7、 频谱分析. .126.7.1、 频谱图.126.7.2、 通过高通滤波器. . . .12
2、6.7.3、 通过低通滤波器. .136.8、 灰度图像处理. .146.8.1、 二值图像. .146.8.2、 创建索引图像. .146.9、 颜色模型转换. . 146.10、 操作界面设计. . . 15七、程序调试及结果分析.15八、心得体会.16实用标准文案文档大全九、参考文献.17十、附录.18基于MATLAB勺图像处理的课程设计摘要:数字图像处理技术是 20 世纪 60 年代发展起来的一门新兴学科,随着图像处 理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应 用,并显示出广阔的应用前景。MATLA 既是一种直观、高效的计算机语言,同时 又是一个科学计算平台。
3、它为数据分析和数据可视化、算法和应用程序开发提供 了最核心的数学和高级图形工具。根据它提供的 500 多个数学和工程函数,工程 技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。MATLAB集成了功能强大的图像处理工具箱。由于 MATLA 语言的语法特征与 C 语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、 可扩展性强, 再加上其中有丰富的图像处理函数, 所以 MATLA在图像处理的应用中具有很大的优势。本文从预处理、边缘检测、车牌定位、字符分割、字符识别五个方面,具体 介绍了车牌自动识别的原理。并用 MATLA 软件编程来实现每
4、一个部分,最后识别 出汽车牌照。关键词:MATLAB 数字图像处理,车牌识别系统实用标准文案文档大全、课程设计目的Matlab 技术课程设计是利用 Matlab 应用软件的基础知识和基本程序设计方法,解决选修专业课程中数字信号处理的实际应用问题, 从而加深对理论知识的 掌握,并把所学的知识系统、高效的贯穿到实践中来,避免理论与实践的脱离。 同时提高独立编程水平,并在实践中不断完善理论基础,有助于培养综合能力。二、课程设计的内容学习 MATLAB?序设计,利用 MATLA 图像处理工具箱,设计和实现通过设计 一个车牌识别系统三、课程设计的要求:按照软件工程方法,根据需求进行程序的功能分析和界面
5、设计,给出设计详细说明。然后按照自己拟定的功能要求进行程序设计和调试。以下几点是程序必须实现的功能。1) 设计图像用户界面,让用户能够对图像进行调整,显示和对比变换前后 的图像。2) 图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡 后的效果。3) 显示识别结果四、题目分析(一)研究背景:随着我国经济的发展,综合实力的增强和城市化进程的加快, 国内各大城市交通管理能力将面临重大考验。 近年来,各主要城市都将城市智能 交通系统(ITS)的建设作为改善城市交通状况的重点,以缓解城市交通管理的 压力,车牌识别系统作为智能交通系统的主要技术之一也得到了很大的发展。(二)现状目前,国内的
6、ITS 产业仍然处于起步阶段,在产业链中,电子地图 商、导航终端商、嵌入式操作系统均已经具备产业规模,而所欠缺的环节则是对 实时交通信息的采集和处理系统。 车牌识别系统是城市智能交通管理系统的一个 重要组成部分,广泛用于是针对公路行驶的机动车辆进行实时监控的智能化交通 系统,电子收费,交通违规管理,安全停车管理等重要领域。五、总体设计车牌识是一辆汽车独一无二的信息,因此,对车辆牌照的识别技术可以作为辨识一样车实用标准文案文档大全最为有效地方法。车牌识别系统包括摄取的汽车图像, 车牌号码的识别, 车牌图像的采集和 预处理,牌照区域的定位和提取,牌照字符的分割和识别等几个部分组成,如下图所示。图
7、1 车牌识别系统流程图六、具体设计界面效果图实用标准文案文档大全(1)灰度校正由于牌照图象在拍摄时受到种种条件的限制和干扰, 图象的灰度值往往与 实际景物不完全匹配,这将直接影响到图象的后续处理。如果造成这种影响的 原因主要是由于被摄物体的远近不同,使得图象中央区域和边缘区域的灰度失 衡,或是由于摄像头在扫描时各点的灵敏度有较大的差异而产生图象灰度失真, 或是由于曝光不足而使得图像的灰度变化范围很窄。这时就可以采用灰度校正 的方法来处理,增强灰度的变化范围、丰富灰度层次,以达到增强图象的对比 度和分辨率。我们发现车辆牌照图象的灰度取值范围大多局限在r=(50,200)间,而且总体上灰度偏低,图
8、象较暗图 6 灰度增强后的图像(2)平滑处理对于受噪声干扰严重的图象,由于噪声点多在频域中映射为高频分量, 因此 可以在通过低通滤波器来滤除噪声, 但实际中为了简化算法,也可以直接在空域 中用求邻域平均值的方法来削弱噪声的影响,这种方法称为图象平滑处理。实用标准文案文档大全例如,某一象素点的邻域 S 有两种表示方法:8 邻域和 4 邻域分别对应的邻域平均值为,g(i,j)匚f(i,j)。其中,M 为邻域中除中心象素点 f(i,j) 之外M(i,j)令包括的其它象素总数,对于 4 邻 M=4 8 邻域 M=8 然而,邻域平均值的平滑处理 会使得图象灰度急剧变化的地方,尤其是物体边缘区域和字符轮廓
9、等部分产生模 糊作用。为了克服这种平均化引起的图象模糊现象, 我们给中心点象素值与其邻 域平均值的差值设置一固定的阈值,只有大于该阈值的点才能替换为邻域平均 值,而差值不大于阈值时,仍保留原来的值,从而减少由于平均化引起的图象模 糊。边缘提取是较经典的算法,此处边缘的提取采用的是Roberts 算子。综上所述,结合 MATLA 实验过程,得出不是每一种图像处理之初都适合滤 波和边界增强。本次汽车车牌的识别,为了保存更多的有用信息,经过多次比 较,选择图 9 作为后期处理的依据。(6)操作界面设计为了使整个操作界面更加的美观,对背景颜色和字体颜色进行设置二、程序调试及结果分析在程序设计过程中,碰
10、到很多的问题。a)一个函数只能对灰度图像处理,不能对 RGB 图像处理,那么 如何才能对 RGBS像处理呢?这主要是对 MATLA 函数的不够清楚,用到的很多函数是针对二维数据的, 而RGB 图像的数据是一个三维矩阵,所以处理要与灰度图像不同,在开始的时候, 我认为应该找一个能够应用于三维矩阵的函数,结果却没找到,后来想到可以把三维数据进行降维处理,同样使用二维的函数,只要是同样处理三次。比如,彩 色图像的滤波处理,直方图均衡等。b)同一个操作对灰度图像可以使用,当用户选择的是彩色图像 时,该操作就会出错?这是由于设计程序时,本身程序是有针对性的,有些程序只能对灰度图像 有效,有些对彩色图像有
11、效,但是用户并不清楚这些,所以在设计的过程中就要考虑全面,要分开设计。在本次课程设计中,我均对每个程序的开始时,用if isrgb( x)进行判断。c)在没有加入噪声的情况下,点击“中值滤波”或是其它滤波, 会提示错误?实用标准文案文档大全这是由于在滤波程序设计的过程中,开始用到的变量是 handles.noise_img , 而这个变量是在加入噪声时候才定义的,所以在没有加入噪声的情况下,点击各个滤波就会弹出变量没有定义的错误,解决方法就是在文件打开的时候就给定义 handies .no ise_img=x 。d)本次设计存在一个比较大的问题,就是每次操作都是独立的, 比如:要对图像加入噪声
12、,然后在此基础上进行亮度调整, 截图,频谱分析等等就不行。我认为应该是整个程序设计过程中对变量的设置没有做好,应该每次操作 后,把处理后的数据保存在一个全局变量,这样还要对处理后的数据进行在处 理时,只要把这个全局变量作为原始数据带入就可。三,心得体会1、在这次课程设计过程中,感触很深,由于对MATLA 图像处理的函数不熟悉,导致自己走了很多的弯路,比如在设计图像左转 90 度和右转 90 度时,由于 开始并不知道 imrotate 函数,只知道上下翻转 flipud 和左右翻转 fliplr 函数,想 着要怎么用这两个函数来实现左转和右转呢,如果当当只用矩阵转置的话,并不能达到要求,后来想可
13、以结合 flipud 和 fliplr 函数来实现,下面程序是实现左转 90 度:axes(ha ndles.axes2);x=(ha ndles.img);if isrgb(handles.img)a=x(:,:,1);b=x(:,:,2);c=x(:,:,3);e=a;g=b;f=c;y(:,:,1)=e;y(:,:,2)=g; y(:,:,3)=f;axes(ha ndles.axes2);for k=1:3f(:,:,k)=flipud(y(:,:,k);endimshow (f); elsem=x;y=flipud(m);imshow(y);end同理,也可以通过转置和 fliplr
14、 函数实现右转 90 度。但是后来发现其实只要用 imrotate 函数就可以解决问题。通过这次经历后,后来在设计其它程序时,尽量找 MATLAB!带的现成函数,而不是一碰到问题就 自己想算法,这样可以节省较多的时间。2、 在理工科的专业应用背景下,用matlab 进行相关计算与仿真编程的优 势非常突出。特定的问题处理算法,我们通常都以 M 文件的文本形式给定最终的 解决方案,自己设计的程序是在 MATLAB境下,用 MATLAB言编写的,这对于 有安装MATLAB件的计算机上运行并不存在什么问题,关键是一般的计算机很 少有去安装实用标准文案文档大全MATLAB件的,那么要在这些机子上运行该程
15、序要怎么办呢,难道要先安装 MATLAB件,这显然太麻烦了,对于一个通用的,比较成熟的解决方 案,我们当然期望它能应用到更多的场合,而 .exe (可执行)文件可运行于所 有的通用WINDOWS作系统,为此,将 M 文件转换成.exe 文件倒是个不错的想 法。通过查找资料,了解到在生成可执行性文件之前,需要进行一系列编译环境 方面的配置:要将用 Matlab 语言编写的函数文件编译成可独立执行的*.exe 文件(即可脱 离Matalab 环境的执行程序),首先要安装和配置好 Matlab Compiler,一般来 说,在安装 Matlab 时就已经安装了相应版本的 Matlab Compile
16、r。只是不同版 本的 Matlab,其编译器的使用方法有一定的差异,这一点要引起一定的注意。在确定安装好 Matlab Compiler 后,还需要对 Compiler 进行适当的配置, 方法是在 Matlab 命令窗口输入:Mbuild - setup然后根据提示执行相应的操作,使用者可根据自己计算机中现有编译器的情 况选择合适的编译器,如 VC+6.0、VC+7.0 Bland C 的编译器等,目前 Matlab 好象还不支持 VC+8.0(我计算机安装的就是 VC+2005 Matlab 就无法识别)。 当然,如果你的计算机里根本就没有安装其他任何语言的编译器,也可选择 Matlab 自
17、带的 Lcc编译器,其实这个编译器对大多数用户已经够用了(我就是选 择的 Matlab 自带的Lcc 编译器)。配置好编译器后,自然就是对自己编写的M 文件进行编译了。将 M 文件编译为独立可执行文件的语法是:mcc - m fun 1.m fun2.m 其中 fun1 就是最后的可执行文件的名称。3、 通过本次课程设计,使自己对 MATLAGUI 设计流程有了比较深刻的体会,同时也了解了一般软件设计的过程。 在设计过程中碰到了很多的问题, 通过这些问题,使自己分析问题,解决问题的能力得到了较大的提高。四,参考文献【1】 郑阿奇,曹戈,赵阳.MATLAB 实用教程M.北京:电子工业出版社【2】
18、 程卫国,冯峰,姚东,徐听.MATLAB5.3 应用指南M.北京:人民邮电出 版社【3】 陈杨.MATLAB6.X 图像编程与图像处理M.西安:西安电子科技大学出版 社实用标准文案文档大全五,附录fun cti on varargout = two(vararg in)% Beg in in itializati on code -DO NOT EDITgui_S in glet on = 1; gui_State =struct(gui_Name, mfile name, .gui_S in glet on, gui_S in glet on,gui_Ope nin gFc n, two_O
19、pe nin gFcn, varargi n:);end%End in itializati on code - DONOT EDIT% - Executes just before erzhi ismade visible.fun cti ontwo_OpeningFcn(hObject, eventdata,han dles, vararg in)% This fun cti on has no outputargs, see OutputFc n.gui_OutputFc n,two_OutputFc n,.%接下来是菜单的程序gui_LayoutFc n,.gui_Callback,
20、);ifn argin&ischar(varargi n1)gui_State.gui_Callback =str2fu nc(varargi n1);endif n argoutvarargout1: nargout=gui_mai nfcn( gui_State,vararg in :);elsegui_mai nfcn( gui_State,fun cti onfile_Callback(hObject, eve ntdata,han dles)%文件打开程序fun cti onope n_Callback(hObject, eve ntdata,han dles)n ame,p
21、ath=uigetfile(*.bmp,载入图像);ifisequal( name,O)|isequal(path,O)实用标准文案文档大全errordlg( 没有选 中文件 出错);return;elsex=imread(path ,n ame);axes(ha ndles.axes1); imshow(x);han dles.img=x;han dles .no ise_img=x;guidata(hObject,ha ndles) endfun ctio n save_Callback(hObject,eventdata, han dles)%文件保存filen ame,path nam
22、e=uiputfile(*.bmp, 图片保存为);ifisequal(file name,path name,0,0 )errordlg( 没有保存,出 错);return;elsefile=strcat(path name,file name);(ha ndles.axes2); i=getimage(gca);imwrite(i,file);endfun ctio n exit_Callback(hObject, eventdata, han dles)clc;close all;close(gcf);fun cti on edit_Callback(hObject, eventdata
23、, han dles)fun cti on huidu_Callback(hObject, eventdata, han dles)9 灰度处理axes(ha ndles.axes2);if isrgb(ha ndles.img)y=rgb2gray(ha ndles.img);%RGB?imshow(y);elsemsgbox(这已经是灰度图像转换失败);endfun cti onlian gdu_Callback(hObject, eve ntdata,han dles)度处理prompt=输入参数 1,输入参 数 2,输入 gamma;defan s=00.7,01,1;p=in put
24、dlg(prompt,输入参数,1,defa ns);p1= str2 nu m(p1);p2=str2 nu m(p2);p3=str2 num(p3); gamma=p3;x=(ha ndles.img);y=imadjust(x,p1,p2,gamma);axes(ha ndles.axes2); imshow(y);%截图set(ha ndles.axes2,Ha ndleVisibility,ON);axes(ha ndles.axes2); y=imcrop(handles.img); imshow(y);han dles.Timage=y;fun ctio nfan gda_Ca
25、llback(hObject, eve ntdata,han dles)fun ctio n%编辑菜单的程序fun cti onjietu_Callback(hObject, eve ntdata,han dles)实用标准文案文档大全lingjz_ Callback(hObject, eve ntdata, handles)%邻近插值放大axes(ha ndles.axes2); prompt=输入放大倍数:; defan s=2;p=inputdlg(prompt,输 入放大倍数,1,defa ns);p1= str2 nu m(p1);y=imresize(ha ndles.img,p1
26、, nearest); %最近邻插值法放大imshow(y);fun ctio nshua ngxia nfa_Callback(hObject, eventdata, han dles)%双线放大axes(ha ndles.axes2);prompt=输入放大倍数:; defans=2;p=inputdlg(prompt,输 入放大倍数,1,defa ns);p1= str2 nu m(p1);y=imresize(ha ndles.img,p1,bilin ear);%最近邻插值法放大imshow(y);fun cti onshua ngsa nci_Callback(hObject, e
27、ventdata, han dles)%双三次放大axes(ha ndles.axes2);prompt=输入放大倍数:; defans=2;p=inputdlg(prompt,输 入放大倍数,1,defa ns);p1= str2 nu m(p1);y=imresize(ha ndles.img,p1,bicubic);imshow(y);fun cti onsuoxiao_Callback(hObject,eve ntdata, han dles)%邻近插值缩小axes(ha ndles.axes2); prompt=输入放大倍数:; defa ns=0.2;p=in putdlg(pro
28、mpt,输入放大倍数,1,defa ns);p1= str2 nu m(p1);y=imresize(ha ndles.img,p1, nearest);%最近邻插值法缩小imshow(y);fun cti onshua ngxia n_Callback(hObject, eventdata, han dles)%双线性缩小axes(ha ndles.axes2); prompt=输入放大倍数:; defa ns=0.2;p=inputdlg(prompt,输 入放大倍数,1,defa ns);p1= str2 nu m(p1);y=imresize(ha ndles.img,p1,bilin
29、 ear);%最近邻插值法缩小imshow(y);fun ctio nshua ngsa ncisuox_Callback(hObject,eve ntdata, han dles)%双三次缩小axes(ha ndles.axes2);prompt=输入放大倍数:;defa ns=0.2;p=inputdlg(prompt,输 入放大倍数,1,defa ns);p1= str2 nu m(p1);y=imresize(ha ndles.img,p1,b实用标准文案文档大全icubic);imshow(y);fun cti on leftright_Callback(hObject,eve nt
30、data, han dles)流右翻转axes(ha ndles.axes2); if isrgb(handles.img) x=(ha ndles.img);for k=1:3y(:,:,k)=fliplr(x(:,:,k);% 左右翻转函数endimshow(y);elsex=(ha ndles.img); y=fliplr(x);imshow(y);endfun ctio nxua nzhua n_Callback(hObject, eventdata, han dles)fun ctio n updown_Callback(hObject, eve ntdata, handles)%上
31、下翻转axes(ha ndles.axes2); x=(handles.img);if isrgb(ha ndles.img) for k=1:3y(:,:,k)=flipud(x(:,:,k);%上下翻转函数endimshow(y);elsex=(ha ndles.img); y=flipud(x);imshow(y);endfun cti on zeft90_Callback(hObject,eve ntdata, han dles)流转 90 度axes(ha ndles.axes2); x=(handles.img); y=imrotate(x,90);imshow(y);fun ct
32、i onright90_Callback(hObject, eve ntdata,han dles)%右转 90 度axes(ha ndles.axes2); x=(handles.img); y=imrotate(x,-90);imshow(y);fun cti on other_Callback(hObject,eve ntdata, han dles)%任意角度旋转axes(ha ndles.axes2); prompt=输入参数 1:;defa ns=30;p=inputdlg(prompt,输 入参数,1,defa ns);p1= str2 nu m(p1);y=imrotate(h
33、a ndles.img,p1);imshow(y);function gs_Callback(hObject,eve ntdata, han dles)%加入高斯噪声axes(ha ndles.axes2);prompt=输入参数 1:,输入 参数2;defa ns=0,0.02;p=in putdlg(prompt,输入参数,1,defa ns);p1= str2 nu m(p1);p2=str2 nu m(p2);y=imno ise(ha ndles.img,gaussia n,p1,p2);imshow(y);han dles .no ise_img=y;guidata(hObject
34、,ha ndles);fun ction jy_Callback(hObject, eventdata, han dles)%加入椒盐噪声实用标准文案文档大全prompt=输入参数 1:;%对话框的设置,用户输入的是字符串defan s=0.02;% 缺省值p=inputdlg(prompt,输 入参数,1,defa ns);p 仁 str2 nu m(p1);%字符串转化为数值axes(ha ndles.axes2);x=(ha ndles.img);y=i mno ise(x,salt&pepper,p1);imshow(y);han dles .no ise_img=y;guid
35、ata(hObject,ha ndles);function cx_Callback(hObject,eve ntdata, han dles)%m 入乘性噪声axes(ha ndles.axes2);prompt=输入参数 1:;defa ns=0.02;p=inputdlg(prompt, 输 入参数,1,defa ns);p1= str2 nu m(p1);y=imno ise(ha ndles.img,speckle,p1);imshow(y);han dles .no ise_img=y;guidata(hObject,ha ndles);fun cti onzhifa ngtut
36、on gji_Callback(hObject, eventdata, han dles)function red_Callback(hObject, eventdata, han dles)%R 直方图set(ha ndles.axes2,Ha ndleVisibility,ON);axes(ha ndles.axes2);x=imhist(ha ndles.img(:,:,1);%直方图统计x1=x(1:10:256);horz=1:10:256;bar(horz,x1);set(ha ndles.axes2,xtick,0:50:255);fun cti on gray_Callback
37、(hObject,eve ntdata, han dles)%G 直方图set(ha ndles.axes2,Ha ndleVisibility,ON);axes(ha ndles.axes2);if isrgb(ha ndles.img)x=imhist(ha ndles.img(:,:,2);%直方图统计x1=x(1:10:256);horz=1:10:256;bar(horz,x1);set(ha ndles.axes2,xtick,0:50:255);elsemsgbox( 这是灰度图像, 旋转失败);endfun ctio n blue_Callback(hObject,eve nt
38、data, han dles)%B 直方图set(ha ndles.axes2,Ha ndleVisibility,ON);axes(ha ndles.axes2);if isrgb(ha ndles.img)x=imhist(ha ndles.img(:,:,3);%直方图统计x1=x(1:10:256);horz=1:10:256;实用标准文案文档大全bar(horz,x1);%axis(0 255 0 150000); set(handles.axes2,xtick,0: 50:255);%set(handles.axes2,ytick,0 :2000:15000);elsemsgbox
39、( 这是灰度图像, 旋转失败);endfun ctio njunhen g_Callback(hObject, eve ntdata,han dles)%4 方图均衡set(ha ndles.axes2,Ha ndleVisibility,ON);axes(ha ndles.axes2); if isrgb(handles.img)a=histeq(ha ndles.img(:,:,1);b=histeq(ha ndles.img(:,:,2);c=histeq(ha ndles.img(:,:,3);k(:,:,1)=a;k(:,:,2)=b;k(:,:,3)=c;imshow(k); el
40、se h=histeq(handles.img);%直方图均衡imshow(h);end%频谱分析fun cti onpin pu_Callback(hObject, eve ntdata,han dles)fun cti onpin putu_Callback(hObject, eve ntdata,han dles)烦示频谱图axes(ha ndles.axes2); x=(handles.img);if isrgb(x) m=fft2(x(:,:,1);y=fftshift(m);imshow(log(abs(y),);elsem=fft2(x); y=fftshift(m);实用标准文
41、案文档大全imshow(log(abs(y),); endfun ctio nfreque ncy_Callback(hObject, eve ntdata,han dles)%氐通滤波器axes(ha ndles.axes2); x=(handles.img);if isrgb(x) msgbox(这是彩色图像,不 能通过低通滤波器,失败);elsey1=i mno ise(x,salt&pepper); %叠加椒盐噪声f=double(y1); %数据类型转换,MATLABF 支持图像的无符号整型 的计算g=fft2 (f);%傅立叶变换g=fftshift(g); %转换数据矩阵
42、M,N=size(g);nn=2;%二阶巴特沃斯(Butterworth) 低通滤波器d0=10;%截止频率为 10m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqrt(i-m)A2+(j-n)2);h=1/(1+0.414*(d/d0)A(2* nn);%计算低通滤波器传递函数result(i,j)=h*g(i,j);endendresult=ifftshift(result);y2=ifft2(result);y3=ui nt8(real(y2);imshow(y3); %显示滤波处理后的图像fun cti ongaotton g_Callback
43、(hObject, eve ntdata,han dles)%高通滤波器axes(ha ndles.axes2); x=(handles.img);if isrgb(x) msgbox(这是彩色图像,不 能通过高通滤波器,失败);elsey1=i mno ise(x,gaussia n);%加咼斯噪声f=double(y1);%数据类型转换k=fft2(f);%傅立叶变换g=fftshift(k);%转换数据矩阵M,N=size(g);nn=2;d0=3;% 截止频率为 3m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqrt(i-m)A2+(j-n)A
44、2);%计算高通滤波器传递函数if d=d0h=0; else h=1; endresult(i,j)=h*g(i,j);endend result=ifftshift(result);y2=ifft2(result); y3=ui nt8(real(y2);imshow(y3);end%接下来这段程序是灰度图像处 理程序fun ctio nhuiduchuli_Callback(hObject, eve ntdata,han dies)end实用标准文案文档大全fun ctio nerzhituxia ng_Callback(hObject, eventdata, han dles)%二值图
45、像axes(ha ndles.axes2); x=(handles.img);if isrgb(x) msgbox(这是彩色图像,不 能转换为二值图像,转换失败);elsej=im2bw(x); imshow(j); endfun ctio ntuxia ngfushi_Callback(hObject, eventdata, han dles)%图像腐蚀axes(ha ndles.axes2);x=(ha ndles.img);if isrgb(x) msgbox(这是彩色图像,不 能进行图像腐蚀,失败);elsej=im2bw(x);se=eye(5);bw=bwmorph(j,erode
46、);imshow(bw);endfun ctio nsuoyi ntuxia ng_Callback(hObject, eventdata, han dles)%创建索引图像axes(ha ndles.axes2);x=(ha ndles.img);if isrgb(x)msgbox(这是彩色图像,不 能创建索引图像,创建失败);elsey=grayslice(x,16);axes(ha ndles.axes2);imshow(y,jet(16);end%这段是颜色模型的转换fun cti on ysmx_Callback(hObject,eve ntdata, han dles)fun ct
47、i on hsv_Callback(hObject,eve ntdata, han dles)%RG 图像转 HSVaxes(ha ndles.axes2);x=(ha ndles.img);if isrgb(x)HSV=rgb2hsv(x);imshow(HSV);elsemsgbox(这是灰度图像,不能转换,转换失败);endfun cti onn tsc_Callback(hObject, eve ntdata, handles)%RG 转 NTSCaxes(ha ndles.axes2);x=(ha ndles.img);if isrgb(x)n tsc=rgb2 ntsc(x);实用
48、标准文案文档大全imshow( ntsc); elsemsgbox( 这是灰度图像,不 能转换,转换失败);endfun ctio n ycbcr_Callback(hObject,eve ntdata, han dles)%RG 转 YCBCRaxes(ha ndles.axes2); x=(handles.img);if isrgb(x)ycbcr=rgb2ycbcr(x);imshow(ycbcr);elsemsgbox( 这是灰度图像,不 能转换,转换失败);end%这是滤波程序fun ctio n lvbo_Selecti on ChangeFc n( hObject, eve ntdata, han dles)str=get(hObject,stri ng); set(handles.axes2,Ha ndleVis ibility,ON);axes(ha ndles.axes2);i=ha ndles .no ise_img;if isrgb(i)a=ha ndles .no ise_img(:,:,1); b=handles .no ise_img(:,:,2); c=handles .no ise_img(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 计算机公众号审计基础考试题及答案
- 信息通信网络终端维修员培训考核试卷及答案
- 羽绒羽毛加工处理工三级安全教育(公司级)考核试卷及答案
- 丝麻毛纤维预处理工测试考核试卷及答案
- 货运汽车司机设备维护与保养考核试卷及答案
- 中式烹调师质量管控考核试卷及答案
- 摩托车发动机装调工主管竞选考核试卷及答案
- 音圈绕制工5S管理考核试卷及答案
- 旅游团队领队知识考核试卷及答案
- 水土保持员测试考核试卷及答案
- 统编语文五年级上册第一单元作业设计
- 2024重庆机场集团公开招聘57人(高频重点提升专题训练)共500题附带答案详解
- 介入科护理常规最终版
- DL∕T 1608-2016 电能质量数据交换格式规范
- 马克思主义与社会科学方法论课后思考题答案全
- 医院口腔科服务管理制度
- 《军事理论》教案第七章 射击与战术训练
- 药事管理手册
- 电子产品原理分析与故障检修(第2版)高职全套教学课件
- 护士重症监护室护理的进修
- 宗教场所消防安全处置应急预案
评论
0/150
提交评论