-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Color Model and API Questions #1
Comments
You might be interested in https://github.com/vasilisvg/human-colours |
@wooorm thanks I did not know about it. It is a bit rudimentary for my purpose though. For example a color is still considered "red" if the hue is around 0deg, but has almost no light or saturation. I also try to capture a wider array of features. |
About seven years ago I created a project called https://github.com/colorjs/color-namer -- It vendors in a bunch of different datasets with names for colors. In hindsight, bringing all that data into the module feels like a mistake. I think it would have been better to have a uniform format for that and publish each set of names and color values as a standalone npm package.
I think the Lab or HCL color spaces may be what you're looking for: http://en.wikipedia.org/wiki/Lab_color_space
|
Regarding extensibility I can see i18n purpose for now. @zeke color-namer/pantone seems a nice convention, no? I wonder why it's not so popular. Multiple separate packages require extended maintenance efforts, version sync etc - similar code is "too far". With audiojs I start thinking it was a mistake to create multiple packages. Lerna-based projects tend to get too disorganized too. |
@zeke ah I knew about your color-namer project. I run a similar project: https://github.com/meodai/color-names. I'm happy you bring it up, because I think it is complementary. Those are more about a nice name for the color (noun), what I aim to do with this project, is describing the attributes of the color using adjectives: It made me change the readme a bit to: "Describes color attributes using words instead of coordinates in a model." About HCL: this is the model I had initially chosen, but it was hard to use because of cases like that: It would make it hard to describe that range in a simple array like I did. But this made me think of HSLuv or HuSL! I will try something! Thanks for the insight. @dy I think i18n would be a great fit! I will definitely integrate that! @zeke & @dy I'd be a bit cautious when using the pantone color names in an open-source project. They are quite protective about it. A few github projects that were using the Pantone colors were taken down. |
@dy then HSL might not be such a bad choice after all. It doesn't matter if it's not a 100% accurate, because the adjectives are kinda vague anyway. (They are fitting for a range of color). I think its not tooo bad: Screen.Recording.2021-05-12.at.14.00.32.movI need to find a good way to test that. |
Pretty cool! I wonder will that match canonical 2-component descriptors (color name + modifier), like dark blue/gray/*. That seems to be a pattern for naming fwiw: cosmic *, copper *, chinese *, cadmium *, burnt *, bright *, black *, golden * etc. So modifiers possibly indicate not only absolute range but also a relative shift from some canonical color name. Can be even vectorized and used to generate colors: copper(red), chinese(yellow), cosmic(green) etc. Also, in my head warm/hot, red/reddish and mellow are all different categories. Possibly having simple descriptors could also explain difficult color names, eg. catawba = purplish brown. |
@dy yeah that would be pretty cool and easy to pull off with that class and data structure. I have removed hot anyway. but warm and cold colors a based on that: I have also defined that they are not warm anymore if the light value is very low.. (they are still cold thought) |
@dy I tried that first, but it made no sense for colors that are not blue yellow white orange or red :( // its styll in the code under temperature adjectives |
the hue names should probably use LAB using this data: Not sure how I could translate that to "simple" Lab ranges thought? Any thoughts? |
@dy any idea what is meant by "color nodes" in the JSON data? |
It seems to be some data for the translator https://uwdata.github.io/color-naming-in-different-languages/vis/color_translator.html#term=pink&start_lang=en&dest_lang=en Btw, I'm not sure their work is a reliable ground for color-description - I'd propose better to get inspiration from what they refer to:
|
@dy had the chance to continue to work on this a bit: https://words.github.io/color-description/ |
@meodai that is so nice and fun |
@dy neighbors as in h+20, h-20 ? |
@dy I like that idea! the "color area" thing would be hard to pull off. Feel free if you have an idea. But it would have to be visualized in 3d I think, since the "color area" is 3 dimensional. |
@dy cool idea! https://words.github.io/color-description/ I added it to the bottom thought, since this project is not really about the color names, but rather about the adjectives and descriptions ;) |
☝🏼 That's really cool. I love clicking my way through the names and gradually changing from one hue to another. |
Hey @zeke & @dy
For my color companion site I was experimenting with coming up with a color description for a color, based on its attributes in HSL for example.
I have a few questions:
Description API: https://github.com/words/color-description/blob/main/index.js#L13
Color Model: HSL
I would love to read about your thoughts.
The text was updated successfully, but these errors were encountered: