Hacker News new | past | comments | ask | show | jobs | submit login

What color space does this use? Is it HSV? You should consider moving to something more perceptually based; all these look slightly off to me.



What color space would be better than HSV? HSV- and HSL-based color pickers are intuitive, predictable and used by the majority of the designer-oriented apps: https://community.kde.org/Krita/Community_Mockups_and_Wishli...


CIE-LAB, or anything that is based on how humans see, rather than the phosphors in old CRTs. HSV/L are just a simple linear transformation of RGB, which corresponds to the phosphors available to produce CRTs, not the vision properties of the human eye. HSV/L was a good approximation when computers were too slow to do the transformations, but it's an appallingly bad space for doing automated color palette generation.

For example, note how the hue dimension of HSV ( http://krazatchu.ca/wp-content/uploads/2012/01/hsv-rgb.jpg ) has weird nonlinearities (green is much, much wider than yellow, for example) compared to the Munsell color space ( http://upload.wikimedia.org/wikipedia/commons/e/e2/MunsellCo... ) which was experimentally derived from experiments on humans.

HSV is ok for color pickers where a human is picking a color, but it makes no sense when you are picking the H angle and generating color based on it, because a constant H angle delta does not correspond to a constant change in human perception at different base angles. In other words, if you have a base color at some X degress of H, and two accent colors at X+30 and X-30, you won't perceive the two accents as being the same distance from the base, X, because different H angles are perceived as different color distances at different points in the spectrum. The transformation from H to perception space is not linear.

And that's just hue. L, S, and V (pick two!) have their own issues, with different hues being perceived as different lightness or saturation at the same L or S value.

(Sorry for a late reply)


HUSL was already mentioned, so I bring up HSP [1]. The idea is to adjust the lightness (the L in HSL) by something which is closer to the percieved luminescence.

Also I wonder if HSL will ever manage to replace HSB/HSV as the default choice for color pickers.

[1] http://alienryderflex.com/hsp.html


I created HUSL as an alternative to HSL, particularly for programmatic palette generation.

http://www.boronine.com/husl/




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: