How to change 1 channel image to 3 channel
141 views (last 30 days)
Show older comments
I have several grayscale images with channel 1, then I want to convert it to RGB channel 3 image, how do I change it?
0 Comments
Accepted Answer
Image Analyst
on 13 Dec 2019
Try cat() to stack the gray scale image into 3 slices (color channels):
rgbImage = cat(3, grayImage, grayImage, grayImage);
It will be an RGB image though the only colors will be gray since there is no difference between the three different color channels. It will be a 3-D image with the z-direction (third index) being the color channel index.
2 Comments
More Answers (1)
DGM
on 2 May 2022
Alternative to using cat(), the same can also be done a couple other ways.
You can use repmat()
rgbpict = repmat(graypict,[1 1 3]);
... or you can even use basic indexing:
rgbpict = graypict(:,:,[1 1 1]);
0 Comments
See Also
Categories
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!