8-bitna grafika u boji je metoda čuvanja informacija o slici u memoriji računara ili u slikovnoj datoteci, tako da je svaki piksel predstavljen sa 8-bita (1 bajt ). Maksimalan broj boja koje se mogu prikazati u bilo kom trenutku je 256 ili 28 .

Kvantizacija boja uredi

 
8-bitna boja, sa tri bita crvene, tri bita zelene i dva bita plave.

Da bi se 24-bitna slika prave boje pretvorila u 8-bitnu sliku, slika mora proći kroz proces koji se naziva kvantizacija boja. Kvantizacija boja je proces u kome se od slike veće gustine boja kreira mapa boja za sliku čija je gustina boja manja.

Najjednostavniji oblik kvantizacije je jednostavno dodeliti 3 bita crvenoj, 3 bita zelenoj i 2 bita plavoj, pošto je ljudsko oko manje osetljivo na plavo svetlo. Ovo stvara takozvanu 3-3-2 8-bitnu sliku u boji, raspoređenu kao u sledećoj tabeli:

Bit 7 6 5 4 3 2 1 0
Data R R R G G G B B

Ovaj proces je suboptimalan. Mogu postojati različite grupe boja koje čine ravnomerno raspoređivanje boja neefikasnim i verovatno će pogrešno prikazati stvarnu sliku. Alternativni pristup je korišćenje palete, sa svakim od 256 mogućih indeksa koji ukazuju na veći prostor boja (npr. 256 boja izabranih od 4096). Pošto mapa boja ne mora da sadrži sve boje i samo treba da precizno predstavlja sliku sa većom gustinom boja, proizvoljna boja se može dodeliti svakom od 256 dostupnih indeksa boja na mapi.

Popularni pristupi za kreiranje ovih mapa (takođe poznatih kao palete) uključuju algoritam popularnosti koji bira 256 najčešćih boja i kreira mapu od njih. Tačniji algoritam srednjeg rezanja pribegava i deli boje da bi pronašao medijanu različitih grupa boja, što rezultira preciznijom konačnom mapom boja.

Upotreba uredi

Zbog male količine memorije i rezultirajućih većih brzina 8-bitnih slika u boji, 8-bitna boja je bila uobičajena osnova za razvoj računarske grafike sve dok više memorije i veće brzine procesora nisu postale lako dostupne potrošačima. 8-bitna boja je korišćena u mnogim različitim aplikacijama uključujući:

  • MSKS2 serija personalnih računara
  • Uzeboks konzola
  • Atari Falkon
  • NTSC verzija Atari GTIA
  • Tiki 100 lični računar (ograničen na 16 simultanih prikaza u boji)
  • Računar Istraživačkih mašina 380Z opremljen grafičkom pločom visoke rezolucije.
  • Nosivi OS pametni satovi sa ambijentalnim ekranima
  • Mnogi skeneri koriste 8-bitnu sivu skalu kao standard

Najvažnije je da VGA standard za grafički interfejs koristi 8-bitnu boju. Razvijen 1987. od strane IBM-a, VGA interfejs je podržavao maksimalnu rezoluciju od 640k480 piksela. Mnogi različiti tipovi slika kao što su GIF i TIF koriste 8-bitni sistem boja za skladištenje podataka.

Iako je sada zastarelo za većinu potrošačkih aplikacija, 8-bitno kodiranje boja i dalje može biti korisno u sistemima za obradu slika sa ograničenim propusnim opsegom podataka ili memorijskim kapacitetom. Na primer, oba rovera za istraživanje Marsa su koristila 8-bitni format sivih tonova za navigaciju.

Problemi uredi

Zbog prirode 8-bitnog sistema, većina slika ima različite mape boja. Pošto 8-bitni ekran u boji ne može istovremeno da prikaže dve slike sa različitim mapama boja, obično je nemoguće prikazati dve različite 8-bitne slike na istom takvom ekranu u isto vreme. U praksi, da bi se izbegao ovaj problem, većina slika ne koristi pun opseg od 256 boja. Još jedan problem nastaje kada se vrši obrada slike: kad god se dve slike sa različitim mapama boja dodaju jedna drugoj, rezultujuća slika mora da ima kreiranu novu mapu boja, što znači da se mora desiti još jedna operacija kvantizacije, čineći rezultujuću sliku nesavršenom verzijom očekivanog rezultata.

Trenutno, većina grafičkog hardvera radi sa 24-bitnom ili 32-bitnom pravom bojom (24-bitna prva boja i 8-bitni alfa kanal ). Međutim, neki softveri za udaljenu radnu površinu ( virtuelno mrežno računarstvo, protokol za udaljenu radnu površinu) mogu da pređu na 8-bitnu boju kako bi sačuvali propusni opseg . Uz uporednu nisku cenu i velike brzine modernih računara, neka montaža slika se čak vrši u sirovom formatu sa bilo kojim od 12 do 14 bita svakog od piksela senzora slike kamere kako bi se izbeglo smanjenje kvaliteta slike tokom uređivanja.