Gray(scale) image with a colormap - how to turn into double?

2 次查看(过去 30 天)
Hi,
I have an 8-bit image that consists only of gray colors. On checking the characteristics of the image in Matlab with imfinfo, it turns out that it is ColorType "indexed" and has a colormap of 256x3. I would like to transform this image into a simple grayscale image of a n x m matrix (according to its size) class double.
The function ind2gray demands a colormap and using the colormap of this image didn't work on my end. Probably I'm doing something wrong.
Any help is much appreciated.
I'm struggling finding a solution.
Thanks

采纳的回答

David Young
David Young 2015-7-30
编辑:David Young 2015-7-30
This works OK:
[imInd, cmap] = imread('10.bmp');
imGrayUint8 = ind2gray(imInd, cmap);
imGrayDouble = im2double(imGrayUint8);
imshow(imGrayDouble);
  3 个评论
Image Analyst
Image Analyst 2015-7-31
What did you do when you said "The function ind2gray demands a colormap and using the colormap of this image didn't work on my end"? Because that is exactly what David did. And casting to double shouldn't really be necessary.
MatlabEnthusiast
MatlabEnthusiast 2019-12-22
hello. now how do you regain the rgb image from the double image?

请先登录,再进行评论。

更多回答(0 个)

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by