how to save image in axes gui?

2 views (last 30 days)
arian nur afgan
arian nur afgan on 3 Jun 2012
Commented: Ahmed Ali on 5 Aug 2021
hello..
i'm have a image in axes1 gui
how to save the image with uiputfile button..

Accepted Answer

Image Analyst
Image Analyst on 3 Jun 2012
  1. Call uigetfile() to get the input filename.
  2. Call imread() to read the input image from the disk into a variable in memory.
  3. Process the image in whatever way you want.
  4. Call imshow() to display the image in the axes.
  5. Call uiputfile() to get an output filename.
  6. Call imwrite() to save the image to disk.
If your image has annotation in the overlay (arrows, text, etc.) then use export_fig() - see the File Exchange. It's the first one you see on the File Exchange screen because it's the most downloaded function of all.

More Answers (1)

Alex Taylor
Alex Taylor on 4 Jun 2012
Image Analyst's answer is great. I would only add that if the image in your GUIDE GUI has been somehow modified from the version originally read from the file, or if the 'cdata' of your image is stored in the .fig file of your GUI and you don't have access to the original file that the image came from, you would use the following modification to Image Analyst's steps:
  1. Execute "hIm = findall(hAx,'type','image')", you'll need to change hAx to the actual variable name of your axes handle.
  2. Execute get(hIm,'CData') to read the image data in axes1 into a variable in memory
  3. Process the image in whatever way you want.
  4. Call imshow() to display the image in the axes.
  5. Call uiputfile() to get an output filename.
  6. Call imwrite() to save the image to disk.
  1 Comment
Ahmed Ali
Ahmed Ali on 5 Aug 2021
Thank you so much Alex, it worked perfectly!! you saved my brain from being exploded!

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!