How to create a RGB image with reflectances ?
14 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello everyone,
I have reflectances data (water leaving reflectances ratios), partially corrected from the atmosphere (Rrc) or not (Rrs)
I can plot true colour or quasi true colour images with the different software available (SeaDAS, SNAP, etc). But I would like to do it in Matlab. I can't find any question about it.
We have access to reflectances at different wavelengths, like 490 for the blue, 555 for the green and 650 for the red.
How can I create an RGB image with these matrix ?
Cheers
0 commentaires
Réponses (2)
Image Analyst
le 1 Août 2019
See File Exchange: https://www.mathworks.com/matlabcentral/fileexchange/51560-get_xyz
2 commentaires
Image Analyst
le 2 Août 2019
Well I've done that using the values of the chromaticity curves and multiple spectral images. Just weight the images by the curves, convert color space, etc. Not sure I could extract it from my program cleanly enough to give it to you though.
Maybe you'd like to see how a published paper discusses it.
MaHa
le 25 Sep 2020
The question is still up,
The answer from Image Analyst give me weird results (purple / cyan and pink only, weird).
I give a subset of my satellite data, so you may understand it better :
Reflectances values in the Red, Green, and Blue, 3 x 3 pixels :
R = [0.0182, 0.0231, 0.0253;
0.0185, 0.0259, 0.0270;
0.0252, 0.0303, 0.0239]
G = [0.0284, 0.0337, 0.0360;
0.0287, 0.0366, 0.0381;
0.0360, 0.0410, 0.0342]
B = [0.0279, 0.0343, 0.0372;
0.0284, 0.0378, 0.0392;
0.0371, 0.0431, 0.0358]
I just want 4 or 9 pixels of a true colour image with that.
imshow(cat(3,R,G,B)) does give one black pixel.
3 commentaires
MaHa
le 11 Nov 2020
Thanks for the answer, it is the ocean so it makes sense !
Any idea on how to get "realistic" coeficients for the magnification ? I mean; at the end I just want to create an image that would look like a photo.
Image Analyst
le 11 Nov 2020
If your image is of decent size, like bigger than 300 or 400 lines, it should look fine. You only need to use 'InitialMagnification' for really tiny images so they don't just look like a small dot on the screen.
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!