资源描述:
《数字图象处理课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、4.各个功能模块的主要实现程序4.1GUIDE创建图形界面在MATLAB命令行中,运行指令GUIDE,出现图2所示窗口。左边为控制面板,选择BlankGUI(Default),点击OK,创建空白界面如图3所示:图2图3在Tools中选择MenuEditor….,创建菜单为要实现的功能,结果如图4所示:图4在上图MenuEditor,右面的Tag中为相应的子程序函数名,实现功能的相应程序在此函数下编写。在GUI编辑窗口添加TXT文本“xxx”和“xx工作室制作版本:1.0.0”。到此,用户界面创建完成,运行结果如图5所示:图54.2主要的功能实现和函数4.2.1
2、图像文件(bmp、jpg、tiff、gif等)进行打开、保存、另存、打印、退出等功能操作,程序如下:functionopen_image_Callback(hObject,eventdata,handles)%**********************打开图象********************************[FileName,PathName]=uigetfile({'*.jpg';'*.bmp';'*.tiff';'*.gif'},'Pickafile','MultiSelect','on');%弹出对话框得到打开的路径globalfile
3、;%全局变量file=imread(strcat(PathName,FileName));%打开得到的路径下的文件image(file);%--------------------------------------------------------------------functionsave_Callback(hObject,eventdata,handles)20%************************保存**********************************globalfile;imwrite(file);%--------
4、------------------------------------------------------------functionUntitled_5_Callback(hObject,eventdata,handles)%**************************另存为***********************************globalfile;%这个是要保存的东西,一般是global的[FileName,PathName]=uiputfile({'*.jpg';'*.bmp';'*.tiff';'*.gif'},'Saveas
5、');%弹出对话框的到保存的路径imwrite(uint8(file),strcat(PathName,FileName));%存储到该路径下%--------------------------------------------------------------------functionprint_image_Callback(hObject,eventdata,handles)%*************************打印***************************************globalfile;printdlg%-
6、-------------------------------------------------------------------functionexit_Callback(hObject,eventdata,handles)%*****************************退出*************************************pos_size=get(handles.figure1,'Position');user_response=modaldlg('Title','exit');switchuser_response
7、case{'No'}%没变化case'Yes'delete(handles.figure1)end其中退出调用了另一个界面,如图6所示,程序和部分描述如下:图6functionmodaldlg_OpeningFcn(hObject,eventdata,handles,varargin)handles.output='Yes';guidata(hObject,handles);if(nargin>3)forindex=1:2:(nargin-3),switchlower(varargin{index})case'title'set(hObject,'Name',
8、varargin{index+1});