Passing data between axes

1 view (last 30 days)
Ahmad Nor
Ahmad Nor on 25 Aug 2014
Commented: Ahmad Nor on 26 Aug 2014
I am doing the GUI for image processing. I want to make about 2 axes in the GUI. I already manage to load image in axes 1. To continue, how can I pass the data of the image that I load on axes 1(that show original image) to axes 2(that show processed image) so that I can process the image in axes 2 without messing with the original image in axes 1?

Accepted Answer

Ben11
Ben11 on 25 Aug 2014
Edited: Ben11 on 25 Aug 2014
You can:
1) Create a dummy original image and store it in the handles structure of your GUI.
handles.DummyImage = OriginalImage;
guidata(hObject,handles);
2) In axes2, use something like:
imshow(handles.DummyImage); % example to display the image
%... do your processing.
to retrieve it in your axes 2 and do whatever you want with it. Youcan store anything you want in the handles structure of the GUI, so it's easy to pass variables between multiple callbacks.
  1 Comment
Ahmad Nor
Ahmad Nor on 26 Aug 2014
I tried based on your suggestion but it seems like not exactly what I want it to be. I want to process images using GUI, so I made a 'load' button and from there I will be able to choose any image in the folder to appear in axes 1 (done). Then the 'process' button will process the same image in axes 1 but make it appear in axes 2 so that I can see the differences (problem). I'm a rookie and just started using MATLAB couple of month ago.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Object Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!