PCX GIF TIFF BMP
PCX vyvinuto firmou ZSoft bezztrátová komprese každý obrázek obsahuje 128 bitovou hlavičku,následují komprimovaná data nabízítři druhy komprimace podle počtu barev (16-barev, 256-barev a TrueColor) určen především pro DOSovské prostředí standardnípříponou je *.PCX kódování s využitím RLE algoritmu
Organizace souboru PCX: - 3 hlavní části: hlavička, obrazová data a barevná paleta. Hlavička typedef sturct _PcxHeader { BYTE Identifier; /* Indentifikátor PCX, vždy 0x0A */ BYTE Version /* Číslo verze */ BYTE Encoding; /* Druh kódování */ BYTE BitsPerPixel; /* Počet bitů na bod */ WORD XStart; /* Levá strana obrázku */ WORD YStart; /* Horní strana obrázku */ WORD XEnd; /* Pravá strana obrázku */ WORD YEnd; /* Spodí strana obrázku */ WORD HorzRes; /* Horizontální rozlišení */ WORD VertRes; /* Vertikální rozlišení */ BYTE Patette[48]; /* 16 barevná EGA paleta */ BYTE Reserved1; /* Rezervované */ BYTE NumBitPlane; /* Počet bitových rovin */ WORD BytesPerLine; /* Počet bajtů na skenovací řádek */ WORD PaletteType; /* Typ palety */ WORD HorzScreenSize;/* Horizontální velikost obrazovky */ WORD VertScreenSize; /* Vertikální velikost obrazovky */ BYTE Reserved[54]; /* Rezervované */ } PCXHEAD;
Obrazová data: Na kódování obrazových dat se používá modifikovaný RLE algoritmus. Barevná paleta: - 16-barevná EGA paleta - 48-bajtové pole obsahující 16 RBG trojic s hodnotami v rozmezí 0-255 - 4-barevná CGA paleta - EGA paleta může být použita i pro zobrazování CGA obrázků - tři barvy slouží jako barva popředí a jedna jako barva pozadí - 256-barevná VGA paleta - VGA paleta obsahuje 3x256 bajtů v rozmezí 0-255 - VGA zařízení je schopno pracovat jen s hodnotami 0-63 pro každou barevnou složku Dekódování PCX souboru: Pro dekódování PCX souboru, musíme z hlavičky zjistit aspoň tyto informace: - šířka obrázku v bodech - výška obrázku ve skenovacích řádcích - počet bajtů na konci každého skenovacího řádku
GIF (Graphics Interchange Format ) vytvořen společností CompuServe (1987) používá neztrátovou LZW kompresi definuje maximálně 8 bitů barev (tzn.:podporuje pouze 256 barevných odstínů) průhlednost (transpatrentní obrázky) Interlaced GIF (prokládaný) možnost vytvářet animaci (určitý počet obrázků střídajících se podle zadaného časového klíče) ve srovnání s formátem JPEG má mnohem větší kapacitu standardní příponou je *.GIF GIF je vhodný pro zobrazení loga firem, tlačítek, animovaných obrázků, bannerů (tzn.:všech objektů, které používají relativně málo barev a které obsahují velké, jednobarevné plochy)
Ukázka: animovaný obrázek, s vyobrazením jednotlivých částí. Animace se skládá z 12 obrázků. Výsledná animace má 17,5 KB.
Princip komprese LZW (GIF): funguje na principu kódování s použitím slovníku, který je vytvářen během výpočtu. 1. program čte po jednotlivých pixelech 2. kontrola 3. po 2 pixelech + kontrola 4... 5. 12 členů, pak se začíná znovu Nejlepších kompresních výsledků dosahuje LZW algoritmus u obrázků, které obsahují málo barev a kde se vyskytují velké plochy stejné barvy, nebo kde se opakují podobné vzory.
TIFF (Tagged-Image File Format) vznikl ve spolupráci firem Aldus a Microsoft nekomprimovaný obrázek se 24 bitovými barvami, nehodí se pro WWW stránky. pro profesionální práci pro bitmapová data (např. fotografie) multiplatformní (Macintosh, UNIX, PC) není stanoven komprimační algoritmus k zobrazení či zpracování je nutné použít grafický editor standardní příponou je *.TIF
BMP (Bitmap/Bit Mapped Picture) praotec grafických formátů operačním systémem Windows je plně podporovaný nemá na internetu co dělat umožňuje zobrazení na jakémkoliv zobrazovacím zařízení malý kompresní poměr => velká kapacita výsledného obrázku standardnípříponou souboru je *.BMP data nejsou komprimovaná a když už ano, pak jen primitivní metodou RLE (Run Length Encoding) Organizace Souboru BMP: Soubor se dá rozdělit do čtyřech častí: - bitmapová hlavička -informační hlavička - paleta (tabulka barev) - bitmapa (pole bytů )
Struktura souboru BMP: BITMAPFILEHEADER - struktura obsahující informace o BMP souboru BITMAPINFOHEADER - struktura obsahující informace o obrazu uloženém v souboru RGBQUAD[0] - 0. položka barevné palety - poměr mezi složkami RGB RGBQUAD[1] - 1. položka barevné palety - poměr mezi složkami RGB RGBQUAD[N] - N. položka barevné palety - poměr mezi složkami RGB BITS - samotné obrazové údaje
Tabulka na závěr: naleznete zde velikosti souborů v různých formátech a také ve dvojím rozlišení. Jako vzor byly použity fotky z digitálního fotoaparátu a poté byly převáděny do všech formátů. Formát/Rozlišení BMP GIF JPEG TIFF PCX 640*480 900 kb 167 kb 112 kb 900 kb 896 kb 1280*960 3,51 MB 660 kb 618 kb 3,51 MB 3,73 MB Z tabulky vyplývá, že kapacitně nejméně náročným formátem je JPEG, avšak tento formát má drobné ztráty. Kvalitnějším formátem je GIF, avšak ten pro změnu nabízí pouze 256 barev, formáty GIF a JPEG jsou nejpoužívanější, na internetových stránkách jsou většinou GIF nebo JPEG obrázky, u digitálních fotoaparátů je především JPEG formát, až dražší foťáky nabízejí volbu jiného formátu např. TIFF.