How do I go about generating a colormap from a matlab file containing RGB values
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Saba Malik
am 13 Mai 2016
Kommentiert: Walter Roberson
am 16 Mai 2016
Hi all !
I'm really stuck on a problem I would appreciate help with :
I have a matlab file containing 359 variables where each variable consists of a 360 x 3 matrix of double RGB values . For example , variable 1 looks like this :
1 1 1
1 1 1
1 1 1
1 1 1
1 0.73 1
1 0.76 1
.
.
.
.
.
and so on until row 360 .
My question is how can I go about loading these values into a matrix from which I can generate a colormap?
I have loaded values from a structure into a matrix and represented it as a colormap pretty easily before but my issue here is that I have three RGB values for each row and I don't know how to 'combine' them to get a number which represents a color (if it is even necessary for me to do that).
Many thanks in advance !
Saba
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 13 Mai 2016
cmap = unique(YourArray, 'rows');
or, better,
cmap = uniquetol(YourArray, 1, 'ByRows', true, 'DataScale', 0.004);
cmap is now your colormap.
3 Kommentare
Walter Roberson
am 16 Mai 2016
0.004 is slightly less than 1/255. I was aiming to have a change of less than 1/255 be recognized as being the same color.
Weitere Antworten (1)
Image Analyst
am 13 Mai 2016
Use the colormap() function after you've displayed your grayscale or indexed image
imshow(grayImage);
colormap(variable1); % variable1 is a 360 by 1 colormap matrix.
colorbar; % Show a colored ramp showing what intensities map to what RGB color.
2 Kommentare
Image Analyst
am 14 Mai 2016
You said you have "a 360 x 3 matrix of double RGB values" - well, that is the exact format that a colormap would take. Is the matrix not a colormap? If no, then what is it?
Siehe auch
Kategorien
Mehr zu Colormaps finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!