Formáty pro ukládání fotografií - 9.díl: JPEG 2000, PNG a BMP
26.12.2007, Roman Pihan, článek
Máme za sebou popis formátů JPEG, GIF a TIFF, což v praxi představuje drtivou většinu aplikací pro fotografy. V počítačovém světě však historicky přežívá mnoho dalších formátů a taktéž se tvoří formáty zcela nové. Podívejme se na některé z nich letem světem.
Formát JPEG 2000
Možná vás napadne, že drobné nevýhody obyčejného formátu JPEG (omezená barevná hloubka, absence bezeztrátové komprese, nepodporovaná průhlednost atd.) by bylo možné snadno odstranit rozšířením jeho specifikace. A možná vás napadne, že formát JPEG 2000 tak činní. Ale není tomu tak – je to spíše nový formát se zcela jinou kompresí. Používá totiž kompresi založenou na frekvenční analýze obrazu produkující asi o 20 % menší soubory než klasický JPEG. Produkuje ale také jiné artefakty a mnohem lépe podporuje progresivnost načítání. Obrázek kódovaný jako JPEG 2000 přijde po internetu nejdříve trochu rozmazaný a s přibývajícím množstvím stažených dat se stává ostřejším. Rozbalení obrázku ale trvá mnohem déle (je náročnější na výpočetní výkon).
JPEG 2000 umožňuje i bezeztrátovou kompresi a dokáže uložit také průhlednost. Podporuje správu barev i vyšší barevnou hloubku ale nepodporuje Exif a to i přesto, že standard teoreticky uložení metadat umožňuje. Přesto, že specifikace byla provedena již v roce 2000, tak tento formát je jen velmi málo rozšířen a ani editory ho většinou běžně nepodporují.
Originál obrázku uložen jako poměrně kvalitní 60 % JPEG.
Ukázka artefaktů klasického JPEGu při uložení na velikost souboru 20 kB.
Ukázka artefaktů při uložení jako JPEG 2000 také na velikost souboru 20 kB. Protože většina z vás by opravdový JPEG 2000 (přípona .jp2) nezobrazila, tak obrázek byl převeden na klasický JPEG vysoké kvality, takže se další JPEG artefakty již neprojevily. Originál JPEG 2000 obrázku můžete stáhnout zde. Na ukázce je vidět, že JPEG 2000 produkuje subjektivně trochu rozostřený obraz, nepříjemné čtverečky ale chybí.
Formát PNG
Pokud pro fotografy může některý formát vhodně doplnit trojici JPEG, GIF, TIFF, tak je to formát PNG. Je to zkratka z Portable Network Graphics a byl původně navržen jako náhrada a rozšíření GIF formátu. Je poměrně široce podporován a používá se spíše na internetu než jako profesionální formát pro grafiku.
PNG a barevná hloubka
Formát PNG skvěle kombinuje možnosti formátu GIF, jehož ukládání barev je založeno na předem vybrané paletě barev, s možnostmi typickými např. pro JPEG, který ukládá barvu každého pixelu jako RGB číslo (vnitřně ovšem YCbCr). Při ukládání pomocí palety umožňuje v podstatě stejné možnosti jako GIF – paleta také může mít od 2 do 256 barev. Při ukládání „klasicky“ umožňuje černobílé ukládání (1, 2, 4, 8 nebo 16 bitů/pixel, což odpovídá možnému počtu stupňů šedi v obrázku 2, 4, 16, 256 nebo 65536) i klasické RGB ukládání při barevné hloubce 8 bitů/kanál (24 bitů/pixel) nebo 16 bitů/kanál (48 bitů/pixel). Jinými slovy – není si možné přát nic více, možnosti jsou dostačující.
Formát PNG je ale určen primárně na internet, kde se používá barevný model RGG, takže podporuj jiných barevných modelů (např. CMYK) nečekejte. Vše (včetně barev v paletě) je chápáno jako RGB.
Dialog Adobe Photoshopu při ukládání PNG s paletou (název je PNG-8) je stejný jako u GIF.
Dialog při použití 24 bitové hloubky (8 bitů/kanál) – název je PNG-24 - je velmi chudý.
PNG a průhlednost
PNG podporuje průhlednost jak „typu GIF“ (tedy ano/ne), tak typu „alfa kanál“ (tedy plynulá průhlednost a tím možnost poloprůhlednosti). Je-li použit alfa kanál pro průhlednost, jeho barevná hloubka je stejná jako aktuální barevná hloubka RGB. Opět si není možné přát nic víc, všechny možnosti jsou zastoupeny.
PNG a komprese
PNG používá bezeztrátovou kompresi typu deflate. Produkuje tedy poměrně veliké soubory (stejně jako GIF) avšak tím spíše, že umožňuje plné RGB uložení dokonce v 48 bitové hloubce. Dramaticky menší soubory může nabídnout jen komprese ztrátová, kterou však PNG nenabízí. Možnosti bezeztrátové komprese deflate jsou poměrně omezené a tak se editory většinou ptají jen na stupeň komprese a mnohdy ani to ne (Adobe Photoshop). Právě malé možnosti komprese je možné chápat jako velký nedostatek formátu PNG.
Další možnosti PNG
PNG bohužel nepodporuje Exif data, což je pro uložení fotografií velmi nepříjemné. Nepodporuje ani správu barev a ani animace. Tyto „nedostatky“ limitují jeho použití opět zejména na internet, kde se však nepotvrdil původní předpoklad, že vytlačí GIF. S formátem PNG se tedy stále setkáte spíše výjimečně.
Tento snímek je uložen jako soubor typu PNG (ke stažení zde) s 24 bitovou barevnou hloubkou. Má však velikost 235 kB, 60% JPEG by měl velikost jen 26 kB.
Závěrečné porovnání formátů pro fotografie
Jak je vidět z dosavadního popisu, žádný formát není ten ideální, který nabízí „vše“. Pro různé účely se hodí různé formáty – záleží na obsahu i na účelu. Proto jsme připravili závěrečnou tabulku, která vlastnosti jednotlivých formátů určených pro fotografie shrnuje. Pomůže vám se rozhodnout, který formát v praxi použít.
Komprese | Barva bitů/kanál | Průhlednost | Exif | Animace | Více stran | ICC profil | Velikost souborů | Kompatibilita | |
BMP | Žádná, RLE | 1,4,8,16, 24,32,paleta | alfa kanál | ne | ne | ne | ne | 5 | velká |
GIF | LZW | 1-8 + paleta | ano/ne | ne | ano | ano | ne | 4 | velká |
JPEG | DCT | 24 | ne | ano | ne | ne | ano | 2 | velká |
JPEG 2000 | DWT | 8,16,24,48 | alfa kanál | ne | ne | ne | ano | 1 | malá |
PNG | Deflate | 1,2,4,8,16, 24,32,48,paleta | ano/ne alfa kanál | ne | ne | ne | ne | 3 | střední |
TIFF | Žádná,RLE,LZW,ZIP | 1,2,4,8,16, 24,32,48 | alfa kanál | ano | ne | ano | ano | 4-5 | střední ? |
Příště se podíváme na vektorovou grafiku.