1
FORMATY GRAFICZNE
„Dobra ilustracja przychodzi w małym pliku.”
David Siegel, „Tworzenie stron WWW”
1. Rodzaje plików graficznych
1. Mapy bitowe
– reprezentują obraz jako prostokątną tablicę pikseli
(np. standardy PCX, BMP, Targa, TIFF, GIF, JPEG),
2. Pliki wektorowe
– obraz reprezentowany jako zbiór prostych, łuków, krzywych itp.
3. Metapliki
– oprócz danych wektorowych zawierają listę poleceń dla systemu graficznego
(np. WMF),
4. Pliki danych drukarek:
•
Rozszerzone formaty tekstowe
– włączają informacje graficzne do
konwencjonalnego strumienia danych tekstowych (np. PCL),
•
Języki opisu strony
– język programowania używany do opisu strony (np.
PostScript).
Przykład kodu Postscriptu:
10.5 11.3 moveto % przesun pioro bez rysowania
40
53.6 lineto
% rysuj linie od biezacej pozycji
showpage
%
renderuj
strone
2. Rodzaje kompresji
Kompresja zmniejsza ilość miejsca na dysku potrzebnego do zachowania obrazu:
•
Kompresja bezstratna umiarkowanie zmniejsza rozmiar pliku bez utraty jakichkolwiek
informacji: RLE (run-length encoding) - kodowanie długości ciągów i LZW (Lemple-
Ziv-Welch).
•
Kompresja stratna znacznie zmniejsza rozmiar pliku (do 1/40) kosztem straty części
informacji, a tym samym kosztem pogorszenia jakości obrazu (JPEG).
2. 1. Kompresja RLE
Niech
a
,
b
,
c
,
d
, e reprezentują jednobajtowe wartości pikseli
„
aaaaa
b
c
d
e
a
” – dane oryginalne
„5
a
5
b
c
d
e
a
” – dane skompresowane
Licznik
Bit sterujący: 1-dane powtarzane, 0-dane przepisywane
2
2.2. Kompresja słownikowa LZW
(licencja firmy Unisys Corporation)
Wartościom wejściowym o zmiennej długości (tzn. poziomym ciągom pikseli tworzących
powtarzający się wzór) przypisywane są kody o stałej długości.
Wszystkie obrazki są 8-bitowe, rozmiar 90
×90pikseli (8100 bajtów bez kompresji). Dłuższe
ciągi poziome dają lepszą kompresję (źródło D. Siegel).
2.3. Kompresja JPEG
Obrazek podzielony na bloki
pikseli i składowa stała dla
każdego bloku.
Kolor RGB jest zamieniany na kolor YC
b
C
r
, gdzie Y- luminancja (zapamiętywana dokładnie),
C
b
C
r
– chrominancje (pamiętane mniej dokładnie).
Obraz dzielony jest na bloki (8
×8) pikseli. Dla każdego bloku stosuje się szybką dyskretną
transformatę kosinusową FDCT, która oblicza:
•
składową stałą F(0,0),
reprezentującą stopień niezmienności pikseli (ich jasność i kolor)
w bloku,
3
•
składowe zmienne F(u,v) (gdzie u,v=1,..,7), reprezentujące
nagłe zmiany jasności lub
koloru w bloku pikseli.
Następnie składowe F dzielone są przez odpowiednie współczynniki i zaokrąglane w celu
dokładniejszego zapamiętania niskich harmonicznych i mniej dokładnego zapamiętania lub
wyeliminowania wysokich harmonicznych.
3. Charakterystyka wybranych standardów
3.1. GIF – Standardowa metoda kodowania skanowanych i generowanych
komputerowo obrazów zdefiniowana przez CompuServe w 1987r.
Czym jest
GIF ?
•
Format plików (*.gif)
•
Format strumienia danych przesyłanych z komputera głównego do
terminala graficznego
Ilość kodowanych
kolorów
Maksymalnie 256 barw. Piksele są zapisywane przy użyciu najmniejszej
koniecznej liczby bitów:
256 barw – 8 bitów/piksel, 2 barwy – 1 bit/piksel.
Kompresja
LZW – bezstratna, średni współczynnik kompresji 4:1
Zastosowanie
•
Skanowane obrazy 2-kolorowe, w skali szarości, z paletą do 256
kolorów, z dużą ilością szczegółów, linii, krawędzi (wykres, siatka,
szkic, diagram, logo, napis, itp.).
•
Obrazy generowane komputerowo (max 256 barw)
z dużymi polami jednobarwnych wypełnień i wzorów oraz
z ostrymi krawędziami, które powinny być zachowane.
•
Animacje, obrazy z jednym kolorem przeźroczystym
Uwagi: Obraz
zawierający więcej niż 256 barw jest przybliżany paletą 256 barw
przed kodowaniem GIF.
mapa bitowa (211
×308) 190kB GIF 60,4 kB paleta adaptacyjna
4
GIF89a - Stosowany do animacji.
Przeplot
- dane zapisywane są w kolejności wierszy: co 8-y, 4-ty, 2-gi, nieparzyste.
Umożliwia to terminalowi wyświetlanie kolejnych przybliżeń obrazka w trakcie jego ładowania.
Animacja
– przezroczystośćjednego koloru obrazka, opóźnienia między klatkami do
1/100sekundy, pętlenie skończone lub nieskończone.
3.2. PNG – bezpłatny standard, który powstał w 1995r. jako odpowiedź na
zapowiedź firm UNISYS i CompuServe o planowanym pobieraniu opłat
za korzystanie z oprogramowania do kompresji plików GIF.
Czym jest
PNG ?
•
Format plików (*.png)
•
Format strumienia danych przesyłanych z komputera głównego do
terminala graficznego
Ilość kodowanych
kolorów
Maksymalna głębia piksela 48 bitów, skala szarości do 16 bitów,
pełny 8-bitowy kanał Alfa.
Kompresja
LZW – bezstratna (nie opatentowana wersja, lepsza niż w GIF)
Zastosowanie
W programach multimedialnych, gdy obraz wymaga efektów
przezroczystości, maskowania i przechowywania innych informacji.
Uwagi:
•
Obsługuje dwukierunkowy przeplot, korekcję gamma
w celu kontroli jasności obrazka na różnych platformach, sprawdzenie
poprawności pliku.
•
Pozwala dodać do pliku ilustracji dowolnie określony obszar
przeznaczony na tekstową metainformację, włączając w to adres URL
i informacje związane z bazami danych.
Nagłówek pliku
Globalna mapa kolorów
Lokalna mapa kolorów
Opcjonalne bloki
rozszerzeń
Skompresowane dane
obrazka
o
b
r
a
z
e
k
1
Obrazek 2
Obrazek 3
.....
Wymagana gdy brak mapy globalnej.
Przesłania globalną gdy są obie.
Jak długo obrazek ma być wyświetlany,
czy ma być nałożony na poprzedni
obraz, itp.
5
3.3. JPEG – (Joint Photographic Experts Group – Wspólna Grupa Ekspertów
Fotografii). Standardowa metoda kompresji zdigitalizowanych fotografii
przeznaczonych do przesyłania liniami komunikacyjnymi.
Czym jest JPEG
•
Format plików (*.jpg)
•
Standard wymiany danych w sieci.
Kodowanie
kolorów
True Color RGB 2
24
=16,7 milionów barw.
Zeskanowana fotografia jest kodowana przy użyciu przeciętnie
jednego bitu na piksel (współczynniki kompresji od 10:1 do 100:1).
Kompresja
Stratna jpeg.
Zastosowanie Najpopularniejszy
format tonalnych obrazów w skali szarości
i pełnokolorowych dla sieci Internet, programów prezentacyjnych i
multimedialnych, wymagających małych plików.
Uwagi:
•
Im większy stopień kompresji tym mniejszy plik i tym większa strata
jakości. Z obrazu mogą zostać usunięte drobne szczegóły, a linie i
ostre krawędzie zostaną rozmyte.
•
Należy używać zawsze tego samego stopnia kompresji przy
wielokrotnym ponownym kompresowniu tego samego obrazu JPEG.
•
Obrazy o wysokiej rozdzielczości są degradowane o wiele mniej niż
obrazy o niskiej rozdzielczości.
JPEG - jakość maksymalna
JPEG - jakość średnia
JPEG – kompresja 100%
117 kB
25,5 kB
1,96 kB
6
3.4. TIFF – (Tagged Image Format – znacznikowy format pliku obrazowego)
Kodowany
kolor
Obraz 2-kolorowy, indeksowana paleta kolorów, pełnokolorowy RGB lub
CMYK, YCbCr (model oparty na systemie telewizji kolorowej), CIE La*b*
Kompresja
Bez kompresji (mimo to format stosunkowo wydajny) lub bezstratna
kompresja LZW.
Zastosowanie Najpopularniejszy format obrazów skanowanych przeznaczonych do druku
oraz do prac DTP.
Uwagi
•
Pliki TIFF są praktycznie niezależne od platformy, więc można je
przenosić np. między platformami Maintosh i Windows (programy edycji
obrazów powinny otworzyć każdy plik TIFF).
•
Część programów prezentacyjnych lub multimedialnych nie obsługuje
formatu TIFF.
Plik TIFF zawiera katalog IFD (ang. Image File Directory), którego każda pozycja (o długości
12 bajtów) zawiera znacznik identyfikujący dane. Przykładowe znaczniki:
Nazwa Znacznik
Opis
TIFFTAG_IMAGEWIDTH 256 Szerokość obrazu w pikselach
TIFFTAG_COMPRESSION 259 Technika kompresji danych:
COMPRESSION_LZW
5 Lempel-Ziv&Welch
COMPRESSION_JPEG
6 kompresja
JPEG
COMPRESSION_PACKBITS 32773 Macintosh RLE
COMPRESSION_NONE
1 tryb bez kompresji
TIFFTAG_PHOTOMETRIC 262 Kolory:
PHOTOMETRIC_RGB
2 model RGB
PHOTOMETRIC_PALETTE
3 indeksowana paleta kolorów
PHOTOMETRIC_SEPARATED 5 separacja CMYK
PHOTOMETRIC_YCBCR
6 CCIR
601
PHOTOMETRIC_CIELAB
8 1976 CIE L*a*b
TIFFTAG_XPOSITION 286
pozioma pozycja lewej krawędzi obrazu na stronie
TIFFTAG_INKNAMES
333 nazwa ASCII atramentu
TIFFTAG_DOTRANGE
336 kody punktów 0%-100%
TIFFTAG_TARGETPRINTER
337 docelowa
drukarka
TIFFTAG_MODEL
273 nazwa/nr modelu skanera
3.5 . EPS – (Encapsulated PostScript – niejawny PostScript)
Kodowany kolor Obraz 2-kolorowy, obraz w skali szarości, duotone, tritone, quadtone,
pełnokolorowy RGB lub CMYK
Kodowanie
ASCII, binarne, JPEG (od PostScript Level 2)
Zastosowanie
Do przechowywania obrazków obiektów zawartych wewnątrz ścieżki
obcinania, np. w celu wstawienia do katalogu.
Do przechowywania informacji o ekranowaniu (rastrze półtonowym), gdy
obraz ma być drukowany na naświetlarce lub stosowane są własne wzory
ekranowania.
Uwagi
Celowe jest zachowywanie plików EPS z podglądem obrazka.
7
Clipping Path
8
Spłaszczenie = 0 - ścieżka zostanie wydrukowana dokładnie tak jak została stworzona.
Spłaszczenie > 0 - obcinane są rogi ścieżki, czyniąc ją mniej dokładną.
W większości przypadków ustawienie spłaszczenia na 2 lub 3 daje dobry efekt
i znacznie skraca czas druku.
4. Liczba magiczna
Prawie wszystkie formaty mają na początku lub w pobliżu początku pliku charakterystyczny
ciąg bajtów, tzw. liczbę magiczną (ang. magic number), pozwalający na ich identyfikację.
BMP
BM
ň v ( F '
PCX
d d H H
a a
˙Ř˙ŕ
JFIF
H H ˙í
Photo
JPEG:
˙Ř˙ŕ
JFIF
˙Ű C