Converting multispectral images to single RGB image

22 views (last 30 days)
Greg on 9 Oct 2013
Answered: Gamal E. on 20 Jun 2018
I have N gray-scale images (MxM each) which represent transmission coefficient of the sample at the given lambda of the spectrum. (VIS spectrum, each image for a single lambda). The idea is construct one RGB-image of the sample from the given set of images which would reflect visual perception of the sample in color.
Is there some build-in function in Matlab converting CIE to RGB color space? ycbcr2rgb function is not exactly what I am looking for, since the initial data is in another format. In other words, are there some CIE 1931 RGB Color matching functions in Matlab which can be easily accessed to solve my task?

Answers (3)

Ashish Uthama
Ashish Uthama on 9 Oct 2013
Greg, I am not too familar with this domain - have a look at makecform, maybe you might get some ideas from it.
  1 Comment
Greg on 9 Oct 2013
Thanks for the reply and the link, but before I can apply any of transformations of color spaces suggested, I have to get at least one! From I(lambda) -> XYZ . And then with the package you suggest from XYZ->RGB. But now I am on the first step of getting from raw spectrum data to any color-space...

Sign in to comment.

Rabia on 30 Nov 2017
Hello Greg,
I see that it is quite an old post with no solution in the comments. Were you able to find a solution for this? I have a similar problem and looking for solution. Thanks.

Gamal E.
Gamal E. on 20 Jun 2018
Concatenation of three different bands (one for each color channel) will absolutely give you a color image of the scene. The quality of the color image you will obtain depends on the three bands you selected.

Community Treasure Hunt

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

Start Hunting!

Translated by