send imtool image to my GUIDE GUI

4 views (last 30 days)
Ely Raz
Ely Raz on 1 Jun 2017
Answered: Ely Raz on 2 Jun 2017
In the following function, I send an image from my GUI axes to an imtool in order to do some manipulations. How can I transfer the manipulated image back to my GUI axes?
Script:
% --- Executes on button press in imtoolbutton.
function imtoolbutton_Callback(hObject, eventdata, handles)
% hObject handle to imtoolbutton (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
J = getappdata(handles.imageAxes , 'yourVariable');
I=imtool(J);
axes(handles.imageAxes);
imshow(I);
setappdata(handles.imageAxes, 'yourVariable', I);

Answers (2)

Walter Roberson
Walter Roberson on 1 Jun 2017
J = getappdata(handles.imageAxes , 'yourVariable');
h = imtool(J);
At this point you would want to give the user time to manipulate the image. Once they have done that,
ax = findobj(h,'tag','hImscrollpanelAxes');
I = ax.Children.CData;
imshow(I, 'Parent', handles.imageAxes);
setappdata(handles.imageAxes, 'yourVariable', I);

Ely Raz
Ely Raz on 2 Jun 2017
Thanks a lot. The imtool works fine but the returned image is not shown, any reason why?

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!