Standardowy 24-bitowy model RGB pozwala uzyskać 16 777 216 różnych kolorów. Wynika to z połączenia trzech kanałów – czerwonego, zielonego i niebieskiego – z których każdy ma 256 poziomów jasności. Liczba kolorów zależy jednak od głębi bitowej, więc nie każde urządzenie wykorzystuje dokładnie tę samą paletę.

Skąd bierze się liczba 16 777 216 kolorów?

Skrót RGB pochodzi od angielskich nazw Red, Green i Blue. Model ten stosuje syntezę addytywną, czyli tworzy barwy przez łączenie światła emitowanego przez trzy kanały. Brak światła daje czerń, a maksymalne wartości wszystkich kanałów tworzą biel.

W standardzie 24-bitowym każdy kanał otrzymuje 8 bitów. Osiem bitów pozwala zapisać 256 wartości, od 0 do 255. Nie są to 255 poziomów, lecz 256, ponieważ zakres obejmuje także zero.

Poszczególne składowe działają następująco:

  • R, Red – intensywność czerwieni od 0 do 255.
  • G, Green – intensywność zieleni od 0 do 255.
  • B, Blue – intensywność niebieskiego od 0 do 255.

Każdy poziom jednego kanału może połączyć się z każdym poziomem dwóch pozostałych. Dlatego maksymalną liczbę kombinacji oblicza się tak:

256 × 256 × 256 = 256³ = 16 777 216

To właśnie oznacza zapis 24-bit RGB: 8 bitów dla czerwieni, 8 bitów dla zieleni i 8 bitów dla niebieskiego, czyli łącznie 24 bity na piksel. Standard ten jest określany jako True Color.

Jak głębia bitowa wpływa na liczbę kolorów?

Głębia bitowa określa, ile informacji można zapisać dla kanałów obrazu. Przy tej samej liczbie kanałów RGB wzór ma postać:

(2n)³

Litera n oznacza liczbę bitów przypadających na jeden kanał. Warto rozróżnić całkowitą liczbę bitów użytych do zapisu piksela od liczby bitów przypisanych pojedynczemu kanałowi.

Przeczytaj również: CMYK – ile kolorów składa się na ten model barwny?

Głębia bitowa Liczba kolorów Nazwa standardu
16 bitów 65 536 High Color
24 bity 16 777 216 True Color
32 bity 16 777 216 kolorów RGB oraz kanał alfa RGB z kanałem alfa

W trybie 16-bitowym sposób podziału bitów między kanały może zależeć od formatu, często stosuje się układ 5 bitów dla czerwieni, 6 dla zieleni i 5 dla niebieskiego. Daje to łącznie 65 536 kombinacji, ale kanały nie mają wtedy takiej samej precyzji.

Dlaczego 32-bitowy kolor nie oznacza większej palety RGB?

Najczęstszy zapis 32-bitowy składa się z 24 bitów RGB oraz dodatkowych 8 bitów przeznaczonych na kanał alfa. Nie zwiększa on liczby podstawowych kolorów RGB. Kanał alfa opisuje przezroczystość, zwykle w zakresie od 0 do 255.

Polecamy: Różnica między RGB a CMYK – kiedy stosować który model?

W takim układzie nadal można uzyskać 16 777 216 kombinacji czerwieni, zieleni i niebieskiego, ale każda z nich może występować przy różnych poziomach przezroczystości. Gdy policzymy wszystkie kombinacje RGB wraz z kanałem alfa, otrzymamy:

256 × 256 × 256 × 256 = 4 294 967 296 kombinacji wartości

Nie oznacza to jednak 4,29 miliarda niezależnych kolorów. Część dodatkowych kombinacji opisuje stopień przezroczystości, a nie nowy odcień. Dlatego określenie „32-bitowy kolor” trzeba interpretować z uwzględnieniem formatu zapisu.

Czym jest Deep Color?

24-bitowy True Color nie stanowi technicznego limitu modelu RGB. Standardy określane jako Deep Color wykorzystują więcej niż 8 bitów na kanał, na przykład 10, 12 lub 16. W dokumentacji spotyka się wtedy odpowiednio 30-, 36- lub 48-bitową głębię dla trzech kanałów RGB.

Przeczytaj również: Paleta kolorów HTML – jak wybrać odpowiednie barwy na stronę?

Dla 10 bitów na kanał każdy kanał ma 1024 poziomy, więc liczba kombinacji wynosi:

1024³ = 1 073 741 824 kolorów

Przy 12 bitach na kanał jest to już 4096³ = 68 719 476 736 kombinacji. Większa głębia pozwala dokładniej zapisywać subtelne przejścia tonalne i ograniczać widoczne pasy na gradientach. Aby wykorzystać Deep Color, obsługę takiego sygnału musi zapewniać cały tor obrazu, czyli źródło, interfejs, na przykład HDMI, oraz wyświetlacz.

Najkrótsza odpowiedź na pytanie „RGB – ile kolorów?” brzmi więc: 16 777 216 w standardzie 24-bitowym. Jest to wynik działania 256³, a nie uniwersalna wartość dla każdej wersji modelu RGB. Większa głębia bitowa zwiększa liczbę poziomów każdego kanału, natomiast dodatkowe bity przeznaczone na kanał alfa odpowiadają za przezroczystość, nie za nowe odcienie RGB.