How to get image from axes in GUI matlab

5 visualizaciones (últimos 30 días)
twins
twins el 23 de Mayo de 2014
Editada: saeed rehman el 14 de Dic. de 2016
Hello I have a question .. I load an image in axes in Matlab GUI , and I want to re-read this image in a variable and use this variable in other function .. What is the function which helps me on it . Thank you
  1 comentario
saeed rehman
saeed rehman el 14 de Dic. de 2016
Editada: saeed rehman el 14 de Dic. de 2016
store loaded image in a variable and Use setappdata and getappdata .
axes(handles.axes2);
image(a);
setappdata(0,'image',a);
%%%
now get this image and load it in anyother axes or whatever u want.
im=getappdata(0,'image');
axes(handles.axes3);
image(im);

Iniciar sesión para comentar.

Respuestas (2)

Mahdi
Mahdi el 23 de Mayo de 2014
After knowing which axes handle the image is loaded into, you can simple use the getimage function.
  1 comentario
Naman Bansal
Naman Bansal el 27 de Jul. de 2014
This is fine but the problem I'm facing is to get the image after zooming i.e. I firstly loaded the image on axes and then performed the zoom operation. Now I only want the zoomed portion of the image. How can I do that.

Iniciar sesión para comentar.


Image Analyst
Image Analyst el 23 de Mayo de 2014
Try using getframe(). Or get(hAxes, 'CData');
  2 comentarios
Naman Bansal
Naman Bansal el 27 de Jul. de 2014
This is fine but the problem I'm facing is to get the image after zooming i.e. I firstly loaded the image on axes and then performed the zoom operation. Now I only want the zoomed portion of the image. How can I do that.
Image Analyst
Image Analyst el 27 de Jul. de 2014
Naman, just like I told you. Look at this code:
close all;
im=imread('cameraman.tif');
subplot(1,2,1);
imshow(im);
subplot(1,2,2);
imshow(im);
size(im)
zoom(8);
zoomedImage = getframe(); % Get zoomed portion that is visible.
size(zoomedImage.cdata)
figure; % Bring up separate figure.
imshow(zoomedImage.cdata);
Do you see how in the second figure it is only the zoomed, visible portion of the image from figure 1 that was captured and is being displayed? From your post it sounds like you tried getframe() and it did not work for you for some reason. To fix it I'd have to see your code.

Iniciar sesión para comentar.

Categorías

Más información sobre Lighting, Transparency, and Shading en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by