How to save image?

3 次查看(过去 30 天)
TAY
TAY 2014-11-8
I have a set of image data which is 256x256 matrix. I display the image data using the code below;
load topomatrix;
figure;
imshow(topomatrix,'displayrange',[]);
colormap('jet');
Now, I want to save the image with full display range and colormap, anyone know how to do it, is it using IMWRITE?
imwrite(topomatrix, 'topo.jpg');
Does anyone know how to do it, thank in advance!!!

采纳的回答

Image Analyst
Image Analyst 2014-11-8
You'll need to scale it and convert it to an 8 bit RGB image.
image8Bit = uint8(255 * mat2gray(topomatrix));
jetMap = jet(256);
imshow(image8bit);
colormap(jetMap);
rgbImageToSave = ind2rgb(image8Bit, jetMap);
imwrite(rgbImageToSave, 'rgbImage.png'); % Save as PNG to avoid jpeg artifacts.
  4 个评论
Jane
Jane 2021-10-31
What do we do if we have a 3d matrix instead?
Image Analyst
Image Analyst 2021-10-31
If it has 3 planes/slices then you can use imwrite(). It will just consider it a color image. If you have more planes/slices, then either save each 2-D image separately or save the 3-D image into a .mat file.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Red 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by