convert gray image back to rgb
625 次查看(过去 30 天)
显示 更早的评论
how to back grat to rgb gray2rgb function not found
3 个评论
AliHdr
2021-10-30
I have done this but i can not use imwrite anymore
there is and error
<<Data with 9 components not supported for JPEG files.>>
how can I overwrite new rgb file with old gray file?
Image Analyst
2021-10-31
@AliHdr evidently JPG can't store multispectral or volumetric images. Either use a mat file or save each slice as its own image.
采纳的回答
Image Analyst
2013-3-14
If you have a color map - a mapping of what intensity should go to what color, like what imread() or rgb2ind() can give you - then you can use ind2rgb.
rgbImage = ind2rgb(grayImage, colormap);
Otherwise use
rgbImage = cat(3, grayImage, grayImage, grayImage);
grayImage needs to be in the range 0-255 uint8 if you want to display it.
3 个评论
Alexandar
2022-7-1
What do you mean by create a colormap and how can you do it within the scales that you'd like?
Image Analyst
2022-7-1
@Alexandar There are a bunch of built-in colormap functions such as hsv, turbo, and jet. Or you can make up your own 256 by 3 matrix with values in the range 0-1.
更多回答(3 个)
Shaun VanWeelden
2013-3-14
Alternatively
rgb=img(:,:,[1 1 1]); does the same thing as Jan's, but is a little shorter maybe and easier to remember. img is your image you want to convert to rgb obviously
4 个评论
Image Analyst
2016-11-18
No, that throws an error if img is a gray scale image since there is no third dimension for gray scale images.
Jan
2013-3-14
Asking Google for "Matlab gray2rgb" would be a good idea.
But a general method is:
RGB = cat(3, Gray, Gray, Gray);
4 个评论
Walter Roberson
2022-7-2
sample_logical_2d = rand(64,80) > 0.8;
imshow(sample_logical_2d)
sample_logical_3d = cat(3, sample_logical_2d, sample_logical_2d, sample_logical_2d );
try
imshow(sample_logical_3d)
catch ME
fprintf('oooo! imshow did not like 3D logical!')
disp(ME)
end
sample_double_3d = double(sample_logical_3d);
imshow(sample_double_3d)
shehbaz Ali
2013-3-14
This is not possible to to convert black and white image to gray image. Because you don't what will be colors of any pixel for rgb picture.
5 个评论
Walter Roberson
2023-6-14
You cannot gain information when you convert black and white to grayscale, or grayscale to color -- but you can create the grayscale or color image with the same amount of information.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Convert Image Type 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!