Friday, 5 March 2021

Colour Names 4

Even more colour naming experiments...

I added conversions for the ISCC-NBS System of Color Designation (1939 onwards) based on Paul Centore's centroids. I was unable to reproduce Paul's results, so I cannot fill in the seven blanks for out-of-sRGB-gamut points:

  • brilliant orange (4.5YR8.0/12.1)
  • vivid orange yellow (9.0YR7.2/16)
  • deep olive green (5.0GY2.0/8.0)
  • deep green (6.0G2.3/9.1)
  • deep bluish green (4.5BG2.3/9.0) and
  • deep greenish blue (4.5B2.5/9.0)

The "extrapolated" sRGB centroids could still be useful when searching for colour names but need to be computed from the original Munsell data points. This is a fiendish problem that I hope to re-visit if and when I implement a colour library in Egg.

To improve upon the ad hoc naming scheme of ISCC-NBS, the Color Naming Scheme (CNS) (1982) sought to systematize the name construction. CNS produces a palette of 627 colours, some of which have rather ambiguous names:

  • very dark vivid yellowish brown
  • very light grayish bluish purple

It does, however, encompass the majority of the eleven basic colour terms:

  1. white
  2. black
  3. red
  4. green
  5. yellow
  6. blue
  7. brown
  8. purple
  9. pink
  10. orange
  11. grey

All but "pink" are included, though "brown" is somewhat shoe-horned in.

As pointed out elsewhere, CNS doesn't seem to have a reference implementation, so it's very difficult to judge results. I've implemented a simple HSL centroid scheme pending further information.

Thinking about the basic colour terms (and grating against the use of terms like "chartreuse"), I implemented HWB-51 as a cut-down version of HWB-51 but just using the eleven basic terms plus the following adjectives:

  • deep
  • dark
  • light
  • pale
  • vivid
  • dull

This produces 77 combinations, but only 55 are used as names ("vivid black" is not meaningful):

black------
greydeep greydark greylight greypale grey--
white------
pink*--light pink*--dull pink
reddeep reddark redlight red*pale red*vivid reddull red
orangedeep orange*dark orange*light orangepale orangevivid orangedull orange
brown*-dark brown*---dull brown
yellowdeep yellowdark yellowlight yellowpale yellowvivid yellowdull yellow
greendeep greendark greenlight greenpale greenvivid greendull green
bluedeep bluedark bluelight bluepale bluevivid bluedull blue
purpledeep purpledark purplelight purplepale purplevivid purpledull purple

There are four pairs of synonyms:

  • "pink" = "light red"
  • "light pink" = "pale red"
  • "brown" = "dark orange"
  • "dark brown" = "deep orange"

This makes a total of 51 unique colours. Unfortunately, there's a large gap in the hue wheel between green and blue where cyan usually sits:

Hue ranges for HWB-51 names

Perhaps turquoise could be added.

The light/dark split for orange/brown and pink/red works quite well in HWB:

Approximate partitioning of whiteness-darkness plane for HWB-51 (orange/brown)

We could extend the idea to all sectors of the hue wheel:

  • red → pink/red
  • orange → orange/brown
  • yellow → yellow/olive
  • green → lime/green
  • blue → blue/navy
  • purple → violet/purple

However, now we're drifting away from using basic colour terms.

As an example of the various naming schemes, here are the results of looking up the web-safe colour "#FFCCFF":

X11Thistle9.5
RGB-125chantilly3.4
RGB-64mauve8.7
RGB-27orchid17.0
ISCC-NBSpurplish white0.1
CNSvery light strong purple1.4
HSL-79white-
HSV-79dull magenta-
HWB-51pale purple-
HWB-91pale magenta-

The final column is the ΔE*(2000) distance metric.

This is an extreme example because every name is different!

No comments:

Post a comment