I am not really sure how to phrase this, but let me explain what I am trying to do. I want to say "this color is green" or "this color is a mix of green and blue", or "this is a light green" or "this is a dark green", or perhaps even "this is a pastel green" or "this is a neon green" if we want to get more specific and add more dimensions.
The way to do this I imagine is to have a range of colors. If these were numbers, I would say "if number is > 100 and < 1000, it is a blue, if it is > 100 and < 300 it is a light blue, if it is > 700 and < 1000 it is a dark blue, if it is > 1000 and < 2000 it is a green, etc.". I am not really sure how this would work or if it is possible with hex/rgb/hsl values.
It seems that one way to do it would be to have data for each "patch" of color type. So for "reds" (light red, regular red, dark red, pastel red, brick red, neon red, etc.) there would be a patch of color. Then if the hex/rgb/hsl value falls ~within~ that patch (whatever that means), it is called "brick red" or whatnot.
The question is (a) if this data has already been collected somewhere and is available to use, or (b) if not, how to accomplish this. How do I select basically a box/circle from the color grid in a color picker, or multiple boxes/circles, (assign those a name like "brick red"), and then how to test if a given color (hex/rgb/hsl) falls into one of those boxes/circles. My mind is a little bent around this.