MATLAB: How to Store this attached rgbimage with a colormap. I tried the following code but could not write the image with colormap.

colormapImage Processing Toolboximwritergb2ind

I tried the following code to write the image with map. But again the colormap is null.
[img, map] = imread('1.jpg');
map = []
>> [indimg,map1] = rgb2ind(img,32);
>> imwrite(indimg,map1,'new.jpg');
>> [img, map] = imread('new.jpg');
>> map
map = []

Best Answer

Your are writing the image in JPEG format and imwrite converts indexed images to RGB before writing data to JPEG files, because the JPEG format does not support indexed images.
Use the code below
[img, ~] = imread('yourImage.jpg');
[ind1, map1] = rgb2ind(img, 32);
imwrite(ind1, map1, 'yourImageNew.png'); % Don't change the extension to .jpg or .jpeg
[img2, map2] = imread('yourImageNew.png');