| File Information |
| Description |
This function converts an MxN matrix of real-valued intensities into a truecolor image (MxNx3 double array in the range [0,1]), without discretization, by linearly interpolating between colors of the input colormap. The output can be displayed using IMAGE or IMSHOW, exported using IMWRITE, used for texture mapping, etc.
Colormaps are specified either by name, or as a JxK colormap table (K = 3 or 4). Named colormaps can be prefixed with '-' to invert the colormap, and suffixed with '*' to make each color transition cover the same number of gray levels when converted to grayscale. This latter option allows colormaps to be adapted to print to a linear grayscale when printed in black & white, e.g. 'hot*'. Colormaps can be non-linear by specifying a relative length for each color transition in the fourth column of a colormap table.
Many old and new colormap functions are included in this submission. The old colormaps have been included, with improvements, for the following reasons. All colormap functions can additionally return the most concise colormap table required to generate that colormap, and they can take in an intensity image and return the truecolor output using that colormap.
Some of the new colormaps included are:
thermal - generate the look of false-color thermal (IR) images.
temp - a blue-white-red color scheme for temperature scales.
sepia - generate the look of old photographs.
Several new colormaps have been created specifically to revert to linear grayscale when printed in black & white. These are:
hicontrast - saturated colors, for maximum level differentiation.
bright - bright colors, with good level differentiation.
pastel - pastel shades, with good level differentiation.
copper2 - similar to copper, but continues on to white.
pink2 - black to white through several distinct shades of pink.
earth - shades of green and brown.
Creating new colormap functions of your own is now incredibly simple. Specify a concise colormap table, and the included colormap_helper function does the rest. If you submit such colormap functions to the FEX, please use the tag 'real2rgb_colormap' so they can be found easily.
If you require more advanced functionality, e.g. for multi-dimensional input values, take a look at SC (FEX ID: 16233). The functionality included here is a subset of that functionality, separated for ease of use and understanding. |
| Acknowledgements |
This submission has inspired the following:
COLORMAP and COLORBAR utilities (Sep 2009)
|
| MATLAB release |
MATLAB 7.5 (R2007b)
|
| Zip File Content |
|
| Other Files |
autumn.m, bled.m, bone.m, bright.m, cool.m, copper.m, copper2.m, earth.m, gray.m, hicontrast.m, hot.m, hsv.m, hsv2.m, jet.m, pastel.m, pink.m, pink2.m, private/colormap_helper.m, private/rescale.m, real2rgb.m, sepia.m, spring.m, summer.m, temp.m, thermal.m, winter.m
|
|
Tags for This File
|
| Everyone's Tags |
|
| Tags I've Applied |
|
| Add New Tags |
Please login to tag files.
|
| Updates |
| 20 Mar 2009 |
Two important bug fixes, increased colormap size used to 1024 (from 256), and added pink (standard) and bright (new) colormaps. |
| 25 Mar 2009 |
Now faster when using non-linear colormaps, thanks to a suggestion by Steve Lord to use histc. |
| 11 Apr 2009 |
A few bug fixes and efficiency improvements. Also, colormap functions return concise table when input == Inf rather than < 0. |
| 13 Apr 2009 |
Bug fix |
|