MATLAB与GUI图像处理

上传人:新** 文档编号:487258603 上传时间:2023-11-29 格式:DOC 页数:42 大小:164.50KB
返回 下载 相关 举报
MATLAB与GUI图像处理_第1页
第1页 / 共42页
MATLAB与GUI图像处理_第2页
第2页 / 共42页
MATLAB与GUI图像处理_第3页
第3页 / 共42页
MATLAB与GUI图像处理_第4页
第4页 / 共42页
MATLAB与GUI图像处理_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《MATLAB与GUI图像处理》由会员分享,可在线阅读,更多相关《MATLAB与GUI图像处理(42页珍藏版)》请在金锄头文库上搜索。

1、- MATLAB 实践 课程设计学生: * 学 号: * 专业班级: * 指导教师: * 二一一年 3月 6 日目 录1.设计目的32.题目分析33.总体设计34.具体设计55.结果分析346.心得体会347.附录代码361、设计目的:综合运用MATLAB工具箱实现图像处理的GUI程序设计, 利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。2、题目分析 利用matlab的GUI程序设计一个简单实用的图像处理程序。该程序应具备图像处理的常用功能,以满足用户的使用。现设计程序有以下根本功能:1图像的读取和保存。2设计图形用户界面,让用户能够对图像进展任意的亮度和比照度变化调整

2、,显示和比照变换前后的图像。3设计图形用户界面,让用户能够用鼠标选取图像感兴趣区域,显示和保存该选择区域。4编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进展放大和缩小整数倍的操作,并保存,比较几种插值的效果。5图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果。6能对图像参加各种噪声,并通过几种滤波算法实现去噪并显示结果。7额外功能。3、总体设计 图一软件的总体设计界面布局如上图所示,主要分为2个局部:显示区域与操作区域。显示区域:显示载入原图,以及通过处理后的图像。操作区域:通过功能键实现对图像的各种处理。在截图中可见,左部为一系列功能按键如复原、撤销、

3、截图等等 ;界面正中局部为图片显示局部,界面中下方为系列功能切换选择组。设计完成后运行的软件界面如下: 图二 与图一先比,运行后的界面更为简洁。利用编辑菜单可调出相应的功能键。例如:4、具体设计现介绍各个功能模块的功能与实现。4.1菜单栏的设计。通过Menu Editor创立如下菜单,通过以下菜单来控制显示或隐藏功能按键以编辑菜单中图像变形中的图像翻转为例说明实现用户界面功能键图像翻转的显示与隐藏。实现该功能的程序段如下:function tu*iangfanzhuan_Callback(hObject, eventdata, handles)% hObject handle to tu*ia

4、ngfanzhuan (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.uipanel7,Visible,on);if strcmp(get(gcbo, Checked),on) set(handles.uipanel7,Visible,on); set(gcbo, Checked, off); set(handles.uipanel7,Visible

5、,off);else set(gcbo, Checked, on);end该段程序通过设置图像翻转功能键对应的句柄uipanel7中的Visible属性的开关来实现该功能键的显示隐藏。其他同理。4.2图像的读取和保存。 1利用文件菜单中的翻开、保存为分别实现图片的读取与保存。利用matlab中 uigetfile、imreadimshow实现图像文件的读取与显示:function openfile_Callback(hObject, eventdata, handles)% hObject handle to openfile (see GCBO)% eventdata reserved -

6、to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)filename,pathname=uigetfile(*.jpg;*.bmp;*.tif;*.*,载入图像);if isequal(filename,0)|isequal(pathname,0) errordlg(没有选中文件,出错);return;else file=pathname,filename;global S %设置一个全局变量S,保存初始图像路径,以便之后的复原操作 S=fi

7、le; *=imread(file); set(handles.a*es1,HandleVisibility,ON); a*es(handles.a*es1); imshow(*); set(handles.a*es1,HandleVisibility,OFF); a*es(handles.a*es2); imshow(*); handles.img=*; guidata(hObject,handles);end程序关键局部: 通过filename,pathname=uigetfile(*.jpg;*.bmp;*.tif;*.*,载入图像)选择相应路径翻开的图像;通过file=pathname

8、,filename;*=imread(file); 读取选中的图像;最后,通过imshow(*)在显示区域上显示图像。2图像保存。利用uiputfile、imwrite函数实现图像文件的保存。function save_Callback(hObject, eventdata, handles)% hObject handle to save (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see

9、GUIDATA) sfilename ,sfilepath=uiputfile(*.jpg;*.bmp;*.tif;*.*,保存图像文件,untitled.jpg);if isequal(sfilename,sfilepath,0,0) sfilefullname=sfilepath ,sfilename; imwrite(handles.img,sfilefullname);else msgbo*(你按了取消键,保存失败);end程序关键局部:通sfilename ,sfilepath=uiputfile(*.jpg;*.bmp;*.tif;*.*,保存图像文件,untitled.jpg)选

10、择图像文件保存的路径与格式;然后,通过sfilefullname=sfilepath ,sfilename;imwrite(handles.img,sfilefullname); 实现对图像的保存。3程序的退出。function e*it_Callback(hObject, eventdata, handles)% hObject handle to e*it (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user

11、data (see GUIDATA)clc;close all;close(gcf);clear;4.3对图像进展任意的亮度和比照度变化调整,显示和比照变换前后的图像。 运行程序后,通过编辑菜单中的常用处理选中亮度调节在显示出相应的功能键后,通过载入读取图像,比并进展处理,效果如下:亮度处理前: 亮度处理后:实现程序段如下:% - E*ecutes on button press in radiobutton12.function radiobutton12_Callback(hObject, eventdata, handles)% hObject handle to radiobutton

12、12 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,Value) returns toggle state of radiobutton12global Ta*es(handles.a*es2);T=getimage; prompt=调整倍数; defans=1; p=inputdlg(prompt,input,1,defans);

13、 p1=str2num(p1); y=imadjust(handles.img, , ,p1); %亮度调节 imshow(y); handles.img=y; guidata(hObject,handles);比照度处理前:比照度处理后增强3倍:比照度减弱1.5倍后:实现程序段如下:function uipanel10_SelectionChangeF(hObject, eventdata, handles)% hObject handle to uipanel10 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)global Tstr=get(hObject,string);a*es(handles.a*es2);switch strcase增强 T=getimage; prompt=输入参数:; defans=1; p=in

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号