Saturday, November 11, 2006


I've added a bunch of new colors to my cooperative color naming system. I'm working on a way to group the color list by color (the database was recently sorted alphabetically) to make it more interesting to look at. I also need to convert this to something more AJAXic so I can store the colors in a database on my server and fetch and save them dynamically instead of the rather dumb way it works now.

I'm also working on trying to generate "light" and "dark" characterizations on the fly. Using existing characterizations for dark and light colors, I've been able to discover that, in most cases, the various characterized colors are more or less on a line through Lhabcab space. This means that I should be able to characterize a color as a midpoint vector and a scaling vector, the midpoint being the value of "medium", and then generate light, dark, very light, very dark, etc. by adding appropriate multiples of the scaling vector to the midpoint vector. I've determined these for sapphire and emerald so far. The linear interpolations generate pretty good matches. It appears that "deep" means the same as "very very dark", for example (both are a lightness index of -4). In case anyone is interested, sapphire has a midpoint vector of (67.332, 245.564, 0.368) and a scaling vector of (9.227, 2.699, -0.131), emerald has a midpoint vector of (76.166, 56.050, 0.584) and a scaling vector of (4.416, -5.959, -0.075), and amethyst has a midpoint vector of (70.415, 332.846, 0.226) and a scaling vector of (8.125, 3.357, -0.085).

I'll probably generate another doohickey sooner or later to display the results of my meanderings.