Learn R Programming

munsellinterpol (version 2.2-1)

MunsellToRGB: Convert a Munsell specification to RGB coordinates

Description

MunsellToRGB Converts a Munsell specification to RGB coordinates, by interpolating over the extrapolated Munsell renotation data

Usage

MunsellToRGB( MunsellSpec, space='sRGB', maxSignal=255, adapt='Bradford', ... )

Arguments

MunsellSpec

a numeric Nx3 matrix with HVC values in the rows, or a vector that can be converted to such a matrix, by row. MunsellSpec can also be a character vector with Munsell Notations, which is converted to an Nx3 matrix using HVCfromMunsellName().

space

the name of an installed RGB space. Spaces 'sRGB' and 'AdobeRGB' are pre-installed, and others can be installed with installRGB().

maxSignal

maximum of the non-linear signal RGB; Other popular values are 1, 1023, and 65535

adapt

method for chromatic adaptation, see CAT() for valid values. Also see Details.

...

other parameters passed to MunsellToxyY()

Value

a data.frame with these columns

xyY

an Nx3 matrix with xyY values in the rows, that are adapted to Illuminant C. This is an intermediate result that is sometimes useful, e.g. it can be passed to IsWithinMacAdamLimits().

RGB

an Nx3 matrix with non-linear RGB signal values in the rows. All values are clamped to the appropriate cube, e.g. \([0,255]^3\)

OutOfGamut

logical vector, TRUE means the result was out of gamut (the cube) before clamping it

In case of error, it returns NULL.

Details

The conversion is done in these steps.

  • HVC xyY using MunsellToxyY(). This xyY is for Illuminant C.

  • xyY is adapted from Illuminant C to the white-point of the RGB space using adaptxyY() and the given chromatic adaptation method

  • xyY XYZ using XYZfromxyY()

  • XYZ RGB using RGBfromXYZ() with the given space and maxSignal

References

Paul Centore 2014 The Munsell and Kubelka-Munk Toolbox http://centore.isletech.net/~centore/MunsellAndKubelkaMunkToolbox/MunsellAndKubelkaMunkToolbox.html

See Also

installRGB(), MunsellToXYZ(), RGBfromXYZ(), XYZfromxyY(), CAT(), IsWithinMacAdamLimits()

Examples

Run this code
# NOT RUN {
MunsellToRGB('7.6P 8.9/2.2')
# }

Run the code above in your browser using DataLab