最近又用到matlab做GUI,之前学的全忘了,还好两年前留了大实验源码。
下面我来通过源码分析一下matlab怎么做GUI。这次我来分析如何通过matlab打开图像并将图像显示到界面。
实验效果
原理
打开菜单编辑器看这个属性:
找到回调
可以看到回调函数名字是wayone_Callback。
function wayone_Callback(hObject, eventdata, handles)
[filename,pathname]=uigetfile('.jpg')
set(handles.edit1,'string',[pathname,filename]);%设置edit1的字符内容
file=get(handles.edit1,'string');
A1=imread(file);
axes(handles.axes1);%将打开的文件显示在轴1
imagesc(A1);%对图像进行缩放
% hObject handle to wayone (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
分析函数:
A = imread(filename) 从 filename 指定的文件读取图像,并从文件内容推断出其格式。如果 filename 为多图像文件,则 imread 读取该文件中的第一个图像。
imread函数返回一个数组。
axes 在当前图窗中创建默认的笛卡尔坐标区,并将其设置为当前坐标区。
imagesc© 将数组 C 中的数据显示为一个图像,该图像使用颜色图中的全部颜色。C 的每个元素指定图像的一个像素的颜色。生成的图像是一个 m×n 像素网格,其中 m 和 n 分别是 C 中的行数和列数。这些元素的行索引和列索引确定了对应像素的中心。