我对在matlab回调函数中使用“handles”有疑问。
我不知道怎么用同样的东西两次。请帮帮我。
因此,我构建了Matlab图形用户界面,并具有上传图片的回调功能:
function pushbutton2_Callback(hObject, eventdata, handles)
handles = guidata(hObject);
[filename pathname]=uigetfile({'*.jpg';'*.bmp'},'File Selector');
image=strcat(pathname, filename)
handles.data1=imread(image)
axes(handles.axes1);
imshow(handles.data1);
set(handles.edit1,'string',filename)
set(handles.edit2,'string',pathname)
guidata(hObject, handles);
,我有将相同图像转换为“灰度”的回调功能:
function Gray_Callback(hObject, eventdata, handles)
handles = guidata(hObject);
axes(handles.axes2);
img=handles.data1;
x=imread(img);
y=rgb2gray(x); %function to convert an rgb image to gray scale
imshow (y)
guidata(hObject, handles);
但不起作用。
有人知道我做错了什么吗?