MATLAB: How to upload image using push button

axesimagepushbutton

Below is the code I'm using and it works for browse the folder.But the image didn't come out.
% — Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO) % eventdata reserved – to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [FileName,PathName]=uigetfile({'*.bmp,*.jpg'},'Select a image file'); axes(handles.axes1); imshow([Path_Name,File_Name]);
Here is the error when I run the code:
Undefined function or variable 'Path_Name'.
Error in iris1>pushbutton1_Callback (line 83) imshow([Path_Name,File_Name]);
Error in gui_mainfcn (line 96) feval(varargin{:});
Error in iris1 (line 42) gui_mainfcn(gui_State, varargin{:});
Error in@(hObject,eventdata)iris1('pushbutton1_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating uicontrol Callback
Does anyone can suggest me a solution? Thank you.

Best Answer

Seriously? :-)
[FileName, PathName] = uigetfile({'*.bmp,*.jpg'},'Select a image file');
axes(handles.axes1);
imshow([Path_Name, File_Name]);
The error message tells you clearly, that the variable "Path_Name" does not exist. You have called it "PathName" without underscore.
Prefer the more stable:
[FileName, PathName] = uigetfile({'*.bmp,*.jpg'},'Select a image file');
imshow(fullfile(PathName, FileName), 'Parent', handles.axes1);
fullfile considers the file-separators. Defining the 'Parent' property is a little bit faster and more secure than relying on the current object: If a user clicks on any object between the two lines the image is displayed anywhere else.
Related Question