Learn R Programming

aqp (version 1.42)

pms.munsell.lut: Pantone Colors / Munsell Lookup Table

Description

A simple lookup table to convert Pantone spot colors into Munsell notation. Association is based on the "closest" Munsell color via CIE2000 distance metric (dE00). This is an experimental association between the two color systems and should not be used for precision color matching or mixing applications.

Possible uses include rough estimation of soil colors in the field, by means of color swatches based on the Pantone system. This type of color matching is most appropriate in an educational setting where official soil color books may be too expensive.

Usage

data(pms.munsell.lut)

Arguments

Format

code

Pantone spot color code

hex

hex representation of sRGB colorspace, suitable for on-screen use

munsell

Munsell notation of closest color "chip"

dE00

delta-E 2000 metric describing the (perceptual) distance to the closest Munsell chip

Details

Conversion from PMS to Munsell is performed by PMS2Munsell or manual subset of the lookup table (see examples 1 and 2 below) or implicit subset by way of a join (example 3). Conversion from Munsell to PMS will not always result in a matching color, see example 3 below.

References

Data were sourced from:

Examples

Run this code

# load LUT
data(pms.munsell.lut)

## 1. Munsell -> Pantone

# colors to match
colors <- c('10YR 3/3', '7.5YR 4/6')

# index / subset match
idx <- pms.munsell.lut$munsell %in% colors
m <- pms.munsell.lut[idx, ]

# simple display
colorContrastPlot(m1 = m$munsell[1], m2 = m$munsell[2], labels = m$code)

## 2. Pantone -> Munsell
codes <- c('723-c', '451-c')

# index / subset match
m <- PMS2Munsell(codes)

# simple display
colorContrastPlot(m1 = m$munsell[1], m2 = m$munsell[2], labels = m$code)
## 3. multiple Pantone colors matching a single Munsell color
#
colors <- pms.munsell.lut[pms.munsell.lut$munsell == '5YR 5/5', ]
colors <- colors[order(colors$dE00), ]

par(mar = c(0, 0, 2, 0), fg = 'white', bg = 'black')
soilPalette(colors$hex, lab = colors$code)
title('Pantone Colors Roughly Matching 5YR 5/5', col.main = 'white', line = 0)

## 4. integration with SPC
data(pms.munsell.lut)
data(sp6)
depths(sp6) <- id ~ top + bottom

# get the closest Munsell chip from color meter data
sp6$munsell <- getClosestMunsellChip(sp6$color, convertColors = FALSE)

# prepare a subset of the PMS lookup table where we take the first match to a Munsell chip
#  this ensures the relationship between munsell chip and Pantone color is 1:1
pms.munsell.first <- do.call('rbind', lapply(split(pms.munsell.lut, 
                                                   pms.munsell.lut$munsell), 
                                             function(x) x[1, ]))

# LEFT JOIN PMS table to existing horizons in SPC (on 'munsell' column)
horizons(sp6) <- pms.munsell.first

# graphical check
par(mar = c(0, 0, 2, 1))
plotSPC(sp6, color = 'hex')


Run the code above in your browser using DataLab