Dave's variant of perceptual uniformity of hue

Introductions, chit chat and off-topic banter.
Post Reply
User avatar
Site Admin
Posts: 1689
Joined: Tue Feb 11, 2020 3:10 pm
Location: San Francisco, California, USA
Real Name: Douglas Blumeyer (he/him/his)

Dave's variant of perceptual uniformity of hue

Post by cmloegcmluin »

I'm kicking this topic off as an off-shoot from the bad-fifth EDO topic.

Dave has asked me to share some of the stuff he wrote me in a private message regarding updates I was making to the JI precision levels chart.

The set of colors Dave is referring to in this first post comes from this earlier post: http://forum.sagittal.org/viewtopic.php?p=843#p843

Here they are though:

gold:		#CCA800
green:		#00FF00
blue:		#00B6FF
magenta:	#FF73FF
grey:		#ABABAB
orange:		#FF8F00
yellow:		#FFFF00										
cyan:		#00FFFF							
purple:		#B39CFF							
rose:		#FF8888	
Dave Keenan wrote: I have, over the years, studied everything I could find on the web regarding colour perception, and developed my own variant of perceptual uniformity of hue. The 9 colours with a defined hue in my set, are arranged at every multiple of 40 degrees on my hue circle. In hue order: Rose, Orange, Gold, Yellow, Green, Cyan, Blue, Purple, Magenta.

You probably noticed that all 9 have at least one component that is either 00 or FF, and are thereby all on the surface of the RGB colour solid, i.e. are all maximally-saturated colours, hence "garish". But being on the surface is one way for them to be as far from each other as possible. Then the 10th colour, Grey, can be far from those 9 by being near the centre of the RBG cube.

And of course they were required to all be light colours as they had to serve as a contrasting background to black symbols. So I decided they had to have a minimum perceptually-uniform-lightness (Lᵤᵥ) of 70%. All have Lᵤᵥ of exactly 70% except for Yellow (97.1%), Green (87.7%) and Cyan (91.1%). Those three are also the only ones that are at vertices of the RGB cube (all of their components are either 00 or FF). And an Lᵤᵥ of 70% is what determined the exact grey that I used.

This is a great tool for obtaining colours of uniform lightness: https://www.hsluv.org/
And this, for checking how your image looks to people with various kinds of colour-deficiency: https://www.color-blindness.com/coblis- ... simulator/
And this for naming colours: https://www.color-blindness.com/color-name-hue/
Dave Keenan wrote: I need to explain something I wrote earlier that could be misleading. I wrote: "Their left to right ordering was chosen for maximum distinctness between neighbours." But it's not maximum distinctness between nearest neighbours. It's a compromise between maximum distinctness between nearest neighbours and maximum distinction between neighbours two away. Colours which are two away in the lower half of the periodic table, are often adjacent in the upper half.

If we arrange the hued colours as a regular enneagon, then there are two regular 9-pointed-stars that can be inscribed — the one with a generator of 2 steps and the one with a generator of 4 steps. The 4-step star comes back to the hue one step away, after only two generators, so I didn't think it was suitable for the periodic table. I used the 2-step star.

   magenta   orange 

 purple         gold   
    blue       yellow 

       cyan green  

Notice how the additive primaries, red, green and blue (where rose is pale red), are not evenly spaced around the enneagon. There are 4 steps between red and green, 2 steps between green and blue, and 3 between blue and red. The greatest number of steps between primaries is the "fruit ripening sequence": green, yellow, gold, orange, rose.

The same unevenness goes for the steps between the subtractive primaries, cyan, magenta and yellow.

But notice the colours your grade 3 teacher told you were primaries, red, yellow and blue. They are evenly spaced in this scheme. These are sometimes called the "psychological primaries",

Of course, to make a linear sequence, one can break the star sequence anywhere, and can choose to go deasil or widdershins 8-). And Grey can be inserted anywhere. I wanted Pythagorean/JI (untempered) to be Grey (uncoloured). But running the sequence from Gold to Rose was purely an aesthetic choice on my part. For greater colour-blind-friendliness, it might have been better to break it between blue and green.

User avatar
Dave Keenan
Site Admin
Posts: 2092
Joined: Tue Sep 01, 2015 2:59 pm
Location: Brisbane, Queensland, Australia

Re: Dave's variant of perceptual uniformity of hue

Post by Dave Keenan »

I have since learned that my formula for mapping from the standard H (hue) parameter of HSLuv to the one that resulted in my 9 hues above, that I consider evenly-spaced perceptually, only works for a lightness of around 70%.

In fact it's the reverse function that I defined, as that's what I needed to ultimately get the corresponding RGB via HSLuv. It's a complicated formula involving the arctan of the ratio of a weighted sum of sinΘ, sin2Θ and sin3Θ to a weighted sum of cosΘ, cos2Θ and cos3Θ. The coefficients were found using the Excel solver, to give a smooth function that gave certain results at certain points that I defined. Its overall effect is to stretch out some regions of the hue circle and squeeze up other regions.

Post Reply