ADABOX 2020 LED Glasses color consistency during intensity c

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
RufusVS2020
 
Posts: 62
Joined: Thu Nov 19, 2020 6:31 pm

ADABOX 2020 LED Glasses color consistency during intensity c

Post by RufusVS2020 »

I have written CircuitPython code to receive color change commands via USB serial as well as Bluetooth
(Uart and Color Picker) on the LED Glasses.

But there's a color shift when brightness is changed. Any advice?


My original post is here:

viewtopic.php?f=47&t=189406

User avatar
johnpark
 
Posts: 985
Joined: Wed Mar 25, 2009 2:15 pm

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by johnpark »

Perhaps try using a gamma correction LUT https://learn.adafruit.com/led-tricks-g ... -quick-fix

User avatar
RufusVS2020
 
Posts: 62
Joined: Thu Nov 19, 2020 6:31 pm

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by RufusVS2020 »

johnpark wrote:Perhaps try using a gamma correction LUT https://learn.adafruit.com/led-tricks-g ... -quick-fix
On a quick read, it looks like gamma correction is to addressed the perceived brightness, but applies the same adjustment to all
3 color components. The issue I'm seeing is if I have a yellow at, say (200,200,0), but then reduce that to (50,50,0), not only has
the led gotten less bright, but it is also not the same yellow, as it has shifted to more-green yellow.

I'll read further in that article to see if they address this color blending that I am talking about.

User avatar
johnpark
 
Posts: 985
Joined: Wed Mar 25, 2009 2:15 pm

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by johnpark »

That color perception issue is one of the things gamma correction sometimes addresses, so it may help. Sometimes this is due to the brightness of one color component becoming perceptually darker or brighter at a different rate than one of the other color components, which throws off the mixed hue.
Developing a look-up table that solves a particular display's issues can help with both brightness and hue problems.

User avatar
RufusVS2020
 
Posts: 62
Joined: Thu Nov 19, 2020 6:31 pm

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by RufusVS2020 »

johnpark wrote:That color perception issue is one of the things gamma correction sometimes addresses, so it may help. Sometimes this is due to the brightness of one color component becoming perceptually darker or brighter at a different rate than one of the other color components, which throws off the mixed hue.
Developing a look-up table that solves a particular display's issues can help with both brightness and hue problems.
So it sounds like my question ends up being: Is there a gamma table of tuples appropriate for the LEDGlasses leds?
And the answer is... Probably not, but you can build one yourself, Rufus.

My guess is I should take the gamma table, and shift it up and down for each component until the color seems correct at each index. Or something like that.

Would this have something to do with White Balance?

User avatar
pburgess
 
Posts: 4161
Joined: Sun Oct 26, 2008 2:29 am

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by pburgess »

You might need three separate gamma tables (r, g, b), with a different exponent and/or top value for each. This is the most likely outcome. I have no idea what the exponents and top values would be for these LEDs, so it’d require some experimentation.

Ugly things can also happen if anything’s using 16-bit “565” color in an interim step, but I don’t think CircuitPython does that, only Arduino and the GFX library. I think. But if it’s this, there’s shenanigans we could do to mask out the extra green bit. (Minimal code exhibiting the problem would be helpful.)

Also RGB LEDs can shift color when viewed off-angle…and on the glasses, the LEDs (especially the rings) are rotated at different angles.

User avatar
RufusVS2020
 
Posts: 62
Joined: Thu Nov 19, 2020 6:31 pm

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by RufusVS2020 »

After a little testing I found that if I used a ratio of 5:3:3 on my RGB values, the darken/lighten effects seemed to track color-wise much better. e.g. dim yellow looked like dim yellow rather than dim-greenish yellow. So if I couple that adjustment along with the gamma table, I should get to a good darkening-lightening effect. I'm sure those ratios could use some tweaking, perhaps by someone with proper equipment (or better eyes), but I think this will do for me. Thanks for the tips.

User avatar
johnpark
 
Posts: 985
Joined: Wed Mar 25, 2009 2:15 pm

Re: ADABOX 2020 LED Glasses color consistency during intensi

Post by johnpark »

That's great, glad to hear it helps.

Locked
Please be positive and constructive with your questions and comments.

Return to “AdaBox! Show us what you made!”