RGB 565 - Why 6 Bits for Green Color

eldjon picture eldjon · Aug 24, 2014 · Viewed 15.1k times · Source

I was checking different RGB formats and i was wondering why in the RGB-565 to the green color are assigned 6 bits and to the red and blue 5? Is there any particular reason behind the green color or is it just an esthetic choice for the sake of symmetry (565 instead of 655 or 556)?

Answer

Renaud Bompuis picture Renaud Bompuis · Aug 24, 2014

To pack a colour in 2 bytes = 16 bits, you have 2 commons ways:

  • encode the RGB components in 5 bits each. This is easiest to code/decode and provide a consistent gradation, at the expense of wasting 1 bit.

  • encode 2 colours in 5 bits and one in 6 bits. That way you don't waste any precious bit but now you have to deal with the discrepancy of encoding/decoding. The green channel was chosen to be 6 bits because our eye is more sensitive to gradations of green than gradation of red or blue (we're quite poor at differentiating blue actually).

Actually, the eye is more sensitive to gradations of yellowish-green rather than just green because that's when both types of receptors in the eye (cones) are stimulated together.

Here is the gamut of observable colours, as defined by the CIE 1931 color space standard:

Colour Gamut

Even though what you are seeing is not accurate since it's represented on a computer screen which has an inferior gamut than what the human eye can see, you can still see that the amount of visible light in the various greens contains more variation than in the blue, or even red.