Gamut-mapping from a source device to a destination device is performed in
a perceptually linear color space such as CIECAM02 by separating a source
image into primary color components and processing each primary component
separately by mapping a source primary hue leaf with a destination
primary hue leaf. The mapped primary components are then summed and a
resultant destination image is obtained. Alternatively, hue rotation is
performed by determining a relative position of an input color between
the nearest primary and the nearest secondary color in a source hue
wheel. The determined relative position in the source hue wheel is used
to find a corresponding location in a destination hue wheel so that the
hue angle for obtaining the destination hue leaf can be determined. In
both processes, the source and destination hue leafs are mapped using a
cusp-to-cusp mapping with a shear mapping process being used to pull in
the remaining colors. Finally, results of the mapping process are
converted from device-independent color appearance space values to
tristimulus values, and from tristimulus values to a color space of the
destination device.