11 - Kolory i grafika

Grafika rastrowa

Poznajemy popularne cechy grafiki rastrowej i formaty plików pamiętając, by wszędzie gdzie można (wykresy, schematy, rysunki, tekst) używać grafiki wektorowej.

Parametry

Głębia koloru (color depth):

  • ilość informacji opisującej barwę piksela (liczba bitów)
    • b&w (1 bit)
    • skala szarości lub 256 kolorów (8-bitowa paleta kolorów),
    • HighColor (16-bitowa paleta kolorów)
    • TrueColor (24 lub 32-bitowa paleta kolorów)
    • paleta barw indeksowanych — potrzebna liczba bitów w zależności od wielkości palety.
  • może też występować dodatkowy "kanał" określający stopień przeźroczystości pikseli ("alpha"), opisywany 1 bitem (jak w formacie GIF), 8 bitami (jak w formacie PNG), albo nawet 16 bitami (aż 2^16=65536 poziomów przezroczystości!)

Im większa głębia koloru, tym większy "surowy" (nieskompresowany) rozmiar pliku z obrazkiem.

Rozdzielczość (resolution)

  • określa, ile jest poziomych i pionowych linii tworzących obraz
  • im więcej linii i punktów, tym wyraźniejszy obraz

Rozdzielczość (inne znaczenie)

  • liczba pikseli na jednostkę odległości. Podaje się zwykle w dpi, ppi, lpi (dots, pixels, lines per inch)

Aby policzyć ile pamięci w kilobajtach zajmuje surowy plik z bitmapą należy podzielić iloczyn liczby pikseli i rozmiaru palety przez iloczyn liczb 8 i 1024, zgodnie ze wzorem:

(1)
\begin{align} rozmiar_{kB} = \dfrac{liczba\_pikseli*rozmiar\_palety\_barw}{8*1024} \end{align}

Formaty plików graficznych dla grafiki rastrowej:

JPG (ang. Joint Photographic Experts Group)

  • głębia kolorów do 24-bitów
  • w zależności od wyboru stopnia kompresji, można uzyskać dużą oszczędność pamięci, ale traci się na jakości obrazu (kompresja stratna)
  • kompresja polega na usuwaniu wysokich "częstotliwości" z obrazu, czyli gwałtownych zmian barw, i jest dokonywania niezależnie w blokach 8x8 pikseli
  • niski stopień kompresji nie spowoduje znaczących różnic i zmian jakości obrazu widzianych ludzkim okiem - szczególnie w obrazach, w których nie ma szybkich zmian barwy na małym obszarze, jednak nawet jeśli tego nie widzimy, zawsze następuje nieodwracalna utrata informacji
  • rozszerzenie *.jpg lub *.jpeg.

BMP

  • podstawowy format plików graficznych w systemie Windows
  • głębia kolorów od 1 do 24-bitów, w zależności od potrzeb
  • zapis bezstratny
  • najczęściej zupełnie bez kompresji, lub z prostą i słabą kompresją RLE
  • rozszerzenie *.bmp.

GIF (ang. Graphic Interchange Format)

  • maksymalnie 256 kolorów
  • bezstratna kompresja (ale obsługuje do 256 kolorów, więc czasem trzeba najpierw ograniczyć ich liczbę w oryginalnym obrazku)
  • przejrzystość 1-bitowa (piksel jest lub nie jest całkowicie przejrzysty)
  • możliwość utworzenia animacji
  • rozszerzenie *.gif.

PNG (ang. Portable Network Graphics)

  • głębia kolorów do 24 bit + kanał alfa
  • kompresja bezstratna, posiada w sobie wiele algorytmów i wiele ich wariantów, sprawdza który jest skuteczny dla konkretnego obrazu, jaki akurat kompresuje
  • najczęściej ograniczenie palety barw pozwala skompresować obraz bardziej (zmniejsza rozmiar pliku)
  • rozszerzenie *.png.

Teraz, znając już specyfikę formatów zapisu, należy świadomie wybierać odpowiedni format do konkretnego zastosowania. Uproszczona zasada wynikająca ze sposobu działania powyższych metod: najczęściej wybieramy między png (zdjęcia jeśli chcemy bezstratnie, oraz wszystko inne) i jpg (zdjęcia, dobieramy stopień kompresji wedle potrzeby).

Strona na licencji Creative Commons Attribution-ShareAlike 3.0. Autorzy: A. Czoska, M. Komosiński, B. Kowalczyk, A. Kupś, M. Lubawy