Problem 2542. Convert a grayscale image into RGB colour format, preserving data type
In the Image Processing Toolbox, MATLAB provides
rgb2gray
to convert a 3 channel color image into a 1 channel intensity (grayscale image). But not the other way around. Sometimes it is useful to have an intensity image represented in the 3 channel colour format.
Write a function to convert an input grayscale image into an equivalent RGB image, ensuring that the datatype of the input image matrix is preserved.
Example:
grayImg = [1 2 3; 4 5 6; 7 8 9]; rgbImg = gray2rgb(grayImg); rgbImg(:,:,1) = [1 2 3; 4 5 6; 7 8 9]; rgbImg(:,:,2) = [1 2 3; 4 5 6; 7 8 9]; rgbImg(:,:,3) = [1 2 3; 4 5 6; 7 8 9];
Solution Stats
Problem Comments
-
1 Comment
Really, you need to add more test cases. You're not even testing that your condition of 'ensuring that the datatype of the input image matrix is preserved' has been fulfilled.
Solution Comments
Show commentsProblem Recent Solvers33
Suggested Problems
-
Which values occur exactly three times?
5074 Solvers
-
All your base are belong to us
534 Solvers
-
Get the length of a given vector
10620 Solvers
-
490 Solvers
-
161 Solvers
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!