Dlaczego 16bpp bitmapa posiada 65536 kolorów ?

0

Dzień dobry,
Zwracam się z pytaniem dotyczącym bitmapy 16bpp. Od razu przejdźmy do rzeczy:
16bpp bitmapa zawiera 5bitów na każdy kolor czyli 15 na wszystkie, pierwszy (najbardziej znaczący) bit jest nieważny. A więc dlaczego wszędzie jest napisane, że można zapisać w niej 2^16 a nie 2^15 kolorów ?

the bitmap has a maximum of 2^16 colors. if the compression field of the bitmap file is set to bi_rgb, the palette field does not contain any entries. each word in the bitmap array represents a single pixel. the relative intensities of red, green, and blue are represented with 5 bits for each color component. the value for blue is in the least significant 5 bits, followed by 5 bits each for green and red, respectively. the most significant bit is not used.

http://atlc.sourceforge.net/bmp.html

1

16bpp bitmapa zawiera 5bitów na każdy kolor czyli 15 na wszystkie, pierwszy (najbardziej znaczący) bit jest nieważny.

Nie. To co opisujesz to 15bpp, czyli 3×5 bitów plus jeden nieważny. Ewentualnie można go przeznaczyć na bit przezroczystości (alfa).

Typowe 16bpp jest formatu RGB565, czyli 5 bitów czerwonego i niebieskiego, 6 bitów zielonego. Wszystkie bity są użyte, razem 65536 kolorów.

Nadmiarowy bit jest przeznaczany akurat dla kanału zielonego, bo ludzkie oko najlepiej rozróżnia odcienie zieleni, dlatego ma to najwięcej sensu.

W przytoczonym cytacie jest błąd: albo jest 2^15 kolorów, albo nie jest to RGB555 po równo 5 bitów dla każdego koloru.

EDIT: zresztą w ostatnim akapicie jest mowa o obu wariantach.

1 użytkowników online, w tym zalogowanych: 0, gości: 1