Saving Figure Data into a Matrix

44 visualizaciones (últimos 30 días)
Royi Avital
Royi Avital el 4 de Jul. de 2011
Comentada: Yue el 14 de Ag. de 2019
Hello.
I'm using 'image()' to display an image. I'm adding some annotations using text.
I'd like to save the final result as matrix (3 Channels of the displayed image width and height). Something like using: OI = get(imageHandler, 'CData'); Yet which includes all the annotations I added.
I know I can use 'saveas' and 'print' yet then the data undergoes some interpolation while I want the data as it is back as a matrix.
Anyone knows how to do it?
Thanks.

Respuesta aceptada

Gerd
Gerd el 4 de Jul. de 2011
Hi Royi,
you can use the getframe command.
logo = imread('Logo.jpg','jpg');
image(logo);
text(20,30,'Hello')
f=getframe(gcf)
new=f.cdata
imwrite(new,'new.jpg','JPEG')
Gerd
  3 comentarios
Yue
Yue el 14 de Ag. de 2019
I met the same question.Have you solved this problem? Looking forward to your answer.
Yue
Yue el 14 de Ag. de 2019
I solved this problem just now.
You can try gca command.It returns the current figure or image.
Example:
Frame = getframe(gca);
FrameData = Frame.cdata;
imshow(FrameData)
imwrite(FrameData,'teat.png','PNG');

Iniciar sesión para comentar.

Más respuestas (1)

Leslie Solorzano
Leslie Solorzano el 16 de Dic. de 2016
https://se.mathworks.com/help/matlab/ref/frame2im.html

Categorías

Más información sobre Images en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by