Kompresja obrazów

Transkrypt

Kompresja obrazów
Kompresja obrazów
10/8/2005
Grafika rastrowa
Kompresja obrazów
!
Grafika rastrowa
Kompresja GIF
Kompresja JPG
Oszustwa…
Obrazy z różnorodnych urządzeń cyfrowych
w postaci „surowej”, przed kompresją,
przechowywane są w postaci mapy piksel po
pikselu
!
!
!
!
Kompresja GIF
!
GIF to skrót terminu Graphic Interchange
Format – format opracowany w CompuServe
!
!
!
!
!
Standard JPG został opracowany przez Joint
Photographics Expert Group
Jest to znakomity sposób reprezentacji
kolorowych zdjęć
!
!
Zaleta przezroczystości
!
GIF ogranicza liczbę kolorów do 256, przy czym
jeden z nich ma przypisana dodatkowa cechę
przezroczystości
Jeśli nasza wyjściowa paleta ma mniej niż 256
kolorów kompresja jest bezstratna
Jeśli w oryginalnym obrazie mamy >256 kolorów
straty nastąpią na etapie zmiany palety
Kompresja JPG
Został on w pełni zaadaptowany przez
producentów aparatów cyfrowych („cyfraków”)
Jego uniwersalność sprowadza się do tego, że
łączy on w sobie wiele metod reprezentacji
obrazów
(C)2005 R.Robert 'RoG@j' Gajewski
Liczba bajtów potrzebnych do zapamiętania
informacji o pikselu świadczy o liczbie kolorów
1 bajt to 256 kolorów
2 bajty to…
3 bajty to…
Przeźroczystość tła oraz mechanizm
kodowania względnego stanowią podstawę
do tworzenia animowanych GIF’ow
!
!
Są one istotnym elementem wielu witryn WWW i
gier komputerowych
Animowane GIF’y to także znakomite narzędzie
do animacji działania oprogramowania
Bezstratny JPG
!
Jeśli zależy nam na wysokiej jakości
kompresujemy zdjęcie bez strat
!
!
!
Oszczędność uzyskuje się dzięki przecowywaniu
informacji o konkretnej barwie (odcieniu)
informacje o różnicach odcieni między kolejnymi
pikselami
Jest ona najczęściej niewielka i do jej
przechowywania można używać krótszych ciagów
bajtów
Dodatkowo potem stosuje się kod o zmiennej
długości
1
Kompresja obrazów
Stratny JPG
!
Każdy piksel reprezentowany jest za pomoca
trzech wartości
!
!
!
Dwa składniki barwne
Składnik jasności
Dokładnie kodujemy składowa jasności
Składowe koloru uśredniamy w obrębie
czterech sąsiednich pikseli i zapamiętujemy
jedynie średnie
!
!
!
Wynikowa reprezentacja zachowuje nagłe zmiany
jasności, ale nie kolorów
Zysk jest o połowę!
Na 4 pikselach zamiast 12 bajtów mamy 6 (4
jasności, dwie barwy)
Zysk całkowity
!
!
!
Oko ludzkie jest bardziej wrażliwe na zmianę
jasności niż na zmianę barw
Poniższy przykład pokazuje, że o wiele lepiej
„dostrzegamy” jasną kropkę!
Składowa jasności reprezentuje jedynie jasnośc
poszczególnych pikseli
Następstwa „oszustwa”
!
Oszukiwanie oka
Gdyby brać pod uwagę jedynie jasność
mielibyśmy obraz czarno-biały
!
!
10/8/2005
W podstawowym standardzie JPG można
reprezentować obrazy z rozsądną jakością
operując plikami o 20-krotnie mniejszej
długości niż surowa bitmapa (format BMP)
Kolejny zysk
!
!
!
!
Jest to następstwo wiedzy, że zapamiętanie
różnic wymaga mniejszej liczby bitów niż
zapamiętanie pełnych wartości!
W rzeczywistości bloki są 8x8 i dodatkowo
stosowana jest dyskretna transformacja
kosinusowa
Dodatkowo „nakłada” się na to zmienna
długość kodu
Porównanie, podsumowanie
!
!
!
(C)2005 R.Robert 'RoG@j' Gajewski
Zamiast zapamiętywać wartości możemy
zapamiętywać ich różnice (przyrosty)
Powstaje pytanie, co kiedy stosować…
GIF należy stosować do kompresji obrazów
złożonych z jednokolorowych bloków o
ostrych krawędziach (JPG wtedy „rozmazuje”
obraz!!!)
JPG jest najlepszy do fotografii!!!
2

Podobne dokumenty