GUI,即图形用户接口,是MATLAB的可视化操作功能,本文编写一个简单GUI进行图像处理。
1、新建GUI文件,点击file->new->GUI如下图所示
点击GUI后出现如下图界面,
默认为Blank GUI (Default)选项,点击OK即可,出现如下图所示文件
将鼠标放到OK的位置会显示Push Button,为按钮,点击后在格子区域放置按钮,双击按钮,在string条目设置字符串“选择图片”,如下图所示
然后放置可编辑文本edit和坐标系统axes,如下图所示
保存命名为myGUI。
2、编辑按钮响应事件,双击按钮,在callback条目行点击红框处,如图所示,
在随后出现的myGUI.m文件中找到函数function pushbutton1_Callback,编写如下所示代码
axis off %%关闭坐标轴显示
[filename pathname] =uigetfile({'*.jpg';'*.bmp';'*.*'},'打开图片');
str=[pathname filename];
%%打开图像
im=imread(str);
%%打开axes1的句柄 进行axes1的操作
axes(handles.axes1);
%%在axes1中显示 图像
imshow(im);
%图像处理部分
I=im2bw(im);
BW1=edge(I,'canny'); %用canny算子进行边缘检测
path1='D:\program files\MATLAB\R2012a\bin\fig13-基于HaarLike的人脸检测\result\';
name='lena.jpg';
imwrite(BW1,[path1 name]);
str1=[path1 name];
im1=imread(str1);
axes(handles.axes2);
imshow(im1);
点击运行,出现如下图所示界面
在上图中点击“选择图片”,选择你想处理的图,然后在“结果图像”坐标系内显示图像处理的结果,如下图