Matlab 编写GUI——2

已经是第二天学习MATLAB编写GUI了,这次分享的是一个图像处理的GUI。

其内容包括,图像加载,灰度化,二值化和边缘提取。

认识新插件,坐标轴用来存放图片 

GUI界面如下:包括三部分图像选择,程序退出,和内容关于

 当点击图像选择按钮时,弹出一个交互窗口选择图片

 点击图中的w1.jpg 就可以完成以下操作:图像加载,灰度化,二值化,边缘提起

操作步骤:

首先需要对:选择图像按钮设置回调函数

在MATLAB中使用uigetfile函数进行图像选择,可以利用doc uigetfile命令进行查看,代码如下

[filename,pathname]=uigetfile({'*.jpg';'*.png';'*.tif'},'Picture');
            if isequal(filename,0)||isequal(pathname,0)
                errordlg('You do not chose a picture.Please input a new picture!');
            else
                file = strcat(pathname,filename);
             
                % original image
                img = imread(file);
                imshow(img,'parent',app.UIAxes);
                %gray image
                imgray = rgb2gray(img);
                imshow(imgray,'parent',app.UIAxes_4);
                %bw image
                imbw= imbinarize(imgray);
                imshow(imbw,'parent',app.UIAxes_2);
                %edge image    opencv halcon
                imedg = edge(imgray,'canny',0.3);
                imshow(imedg,'parent',app.UIAxes_5);
            end

退出程序操作:

利用questdlg函数,进行提示,请求是否退出

 代码如下:

value = questdlg('if you wang to exit?','End','Yes','No','No');
            switch value
                case 'Yes'
                    delete(app.UIFigure);  % close all windows
                    return;
                case 'No'
                    return;
            end
            

猜你喜欢

转载自blog.csdn.net/abc123mma/article/details/120250526