Recenze  |  Aktuality  |  Články
Doporučení  |  Diskuze
Fotoškola  |  Seriály
Fotoaparáty  |  Objektivy
Fotomobily  |   Software
Příslušenství  |  Ostatní
Svět hardware  |  TV Freak
Svět mobilně

Formáty pro ukládání fotografií - 4.díl: jpeg, gif

21.11.2007, Roman Pihan, článek
V minulém díle jsme podrobně popsali jeden z nejpoužívanějších formátů pro ukládání fotografií a sice JPEG. Nyní tento popis dokončíme a podíváme se na neméně zajímavý formát GIF.

Další možnosti JPEG


Vedle uložení komprimovaných dat fotografie a tím úspory velikosti souboru nabízí JPEG ještě některé velmi užitečné možnosti, které jsou v reálné praxi hojně využívány.


Exif


Exif neboli Exchangeable Image File Format je způsob jak do fotografie uložit celou řadu užitečných fotografických informací. Jedná se zejména o datum a čas vzniku fotografie, nastavení fotoaparátu (čas, clona, ohnisko atd.), malý náhled snímku pro rychlé prohlížení bez nutnosti provádět náročnou JPEG dekompresi snímku, popis obrázku, copyright informace, nově i GPS souřadnice vzniku snímku atd. I když Exif není nijak standardizován, tak celá řada digitálních fotoaparátů Exif informace do fotografií vkládá a to i vcelku stejným způsobem. Základní informace je tedy možné z Exifu snadno vyčíst, ty speciální vidí obvykle jen program od stejného výrobce.

JPEG sice Exif nijak explicitně nepodporuje, ale většina aplikací využívá jeho universální schopnosti obsahovat libovolná aplikační data (APP bloky) a aplikace právě do nich Exif data ukládá. APP blok je ale omezen délkou na 64 KB, což je tedy i omezení délky Exifu. Řada výrobců se ale do 64 KB nevejde a tak si někdy pomáhají nestandardním způsobem, zejména při potřebě uložit do Exifu náhled fotografie užitečný pro prohlížení fotografií na displeji. Tato data „navíc“ však mohou být ztracena pokud otevřete JPEG v programu, který si s nimi neporadí, nechápe je a z nového JPEG souboru je tedy při uložení odstraní.


Část Exif dat tak, jak je zobrazuje Adobe Photoshop. Exif ale nemá v JPEGu žádnou definovanou strukturu a využívá obecného bloku APP. Různé programy/fotoaparáty tak mohou uložit různá Exif data a je otázkou, jak a které zobrazovací program ukáže.

Z uvedeného také plyne, že Exif data mohou zvýšit velikost souboru až o 64 KB, což je zejména pro internet poměrně hodně. Proto volba Uložit pro web … v Adobe Photoshopu Exif data z JPEG souboru vždy odstraňuje. Volba Uložit jako… je naopak vždy nechává.


ICC profil


ICC profil je způsob, jak společně s fotografií ukládat i podstatné informace o správě barev a tedy informace důležité pro přesné barevné zpracování fotografie při následném prohlížení či tisku. Pro představu – v souboru lze uložit informaci o tom, že data jsou myšlena v barevném prostoru sRGB a tedy určená pro prohlížení nebo v barevném prostoru CMYK a tedy určená pro tisk. JPEG však vždy vnitřně ukládá data jako YCbCr.

JPEG umožňuje ICC profil k fotografii přidat a tak programy schopné správy barev jej mohou využít. ICC profil přibalený k fotografii ale opět zvyšuje velikost soboru. V Adobe Photoshopu umožňuje na požádání přidat ICC profil k fotografii jak volba Uložit pro Web… tak volba Uložit jako…



Jak ve volbě Uložit jako… tak Uložit pro Web… je v Adobe Photoshopu možné zvolit, zda má být do JPEG přibalen ICC profil. Současně vám sdělí, který je aktuální a bude tedy přidán. Smysl to má ale jen v případě, že protistrana si se správou barev bude vědět rady.


Bezeztrátová editace JPEG


Při jakékoliv editaci fotografie v editoru je nejprve třeba JPEG soubor dekódovat. Teprve potom je možné provádět ve snímku úpravy. Při následném novém uložení se provádí nová JPEG komprese a při té může (nutně ale nemusí) vznikat celá řada nových nepříjemných artefaktů. Opakované ukládání tedy může znova a znova, více a více poškozovat snímek.

JPEG ale umožňuje řadů úprav snímku provádět bez dekódování a tedy bez potenciálního nebezpečí vzniku nových artefaktů. Jedná se zejména o otáčení snímku či převracení snímku. Toho využívá řada editorů a nabízejí zejména otáčení snímků jako tzv. Lossless editaci neboli editaci beze ztráty kvality.



Typické možnosti, které editory nabízejí jako tzv. Lossless transformaci JPEGu tedy úpravy, které nevyžadují JPEG vůbec dekódovat.


GIF formát


GIF formát neboli Graphics Interchange Format je formát uvedený na trh firmou CompuServe v roce 1987. Jeho použití je však velmi rozšířené dodnes. S trochou nadsázky se dá říct, že vynikajícím způsobem doplňuje JPEG formát zejména pro užití na internetu. I když existuje řada jiných formátů (jak uvidíme dále), internet z 99 % používá pro obrázky JPEG nebo GIF.


Paleta (tabulka barev)


Zatímco JPEG se snaží co nejvěrněji uložit celou barevnou fotografii a disponuje proto 24 bitovou barevnou hloubkou (8 bitů/kanál) nabízející na výběr přes 16 milionů barev pro každý pixel, GIF má jinou filosofii. Jeho uživatel se na začátku musí rozhodnout (může to samozřejmě udělat při uložení grafický editor automaticky), kolik barev bude celý obrázek obsahovat. Tím vytvoří tzv. paletu barev v obrázku – jiné barvy obrázek obsahovat nesmí.

Barvy v paletě mohou být minimálně 2 (ideální např. pro grafiku černých čar na bílém papíře) až po maximálně 256. Každá barva v paletě může být vybrána ze všech 16 milionů barev, celkový počet použitých barev v obrázku (paleta) však může být jen od 2 do max. 256. Barva každého pixelu obrázku je potom kódována nejúspornějším možným způsobem a říká jen číslo barvy z palety (od 1 bitu/pixel až do 8 bitů/pixel podle počtu barev v paletě). Paleta se vždy uloží společně s obrázkem a tak různé obrázky mohou mít různé palety. V jednom obrázku však nelze používat žádné jiné barvy než ty, které jsou v jeho paletě (max. 256). Uložení barev je ale díky tomu velmi úsporné.

Omezené množství barev v obrázku je diskvalifikační pro fotografie – u fotografie nelze vystačit s 256 barvami (JPEG jich umí přes 16 milionů). Hodí se však pro jednoduchou grafiku, kresby, loga, ikony, tlačítka atp., zkrátka všude tam, kde omezený počet barev není nijak na závadu.




Například logo serveru Digimanie je velmi dobře možné uložit jako GIF s paletou obsahující jen 32 barev (dole). Obsahuje totiž jen malý počet barev a tak omezení dané paletou nijak nevadí. Pro srovnání je nahoře uveden originál uložen jako vysoce kvalitní JPEG. Velikost GIF souboru je však díky paletě méně jak poloviční.


GIF paletu si obvykle vytvoří editor sám, je však možné i ruční zadání barev do palety. Např. počet barev v paletě pro logo Digimanie lze buď předepsat (zde 32) nebo nechat zjistit automaticky. Čím větší je počet barev v paletě, tím je GIF barevně přesnější, ale stoupá velikost souboru. Při 32 barvách má logo jen 3 KB.


Takto by vypadalo logo při paletě obsahující jen 2 barvy – černou a bílou. Logo má jen něco málo přes 1 KB, degradace je však fatální.


Při použití 4 barev.


Při použití 8 barev.


Při 16 barvách (zde) se začíná blížit originálu. Při 32 barvách (viz obrázek výše) je rozdíl od originálu již nepozorovatelný.

Příště se budeme věnovat dalším vlastnostem formátu GIF.

Autor: Roman Pihan

Vystudoval ČVUT Fakultu elektrotechnickou. Po nástupu digitální fotografie se stal jedním z propagátorů jejího využití v komerční i amatérské praxi. Pravidelně přispívá fotografickými články do řady odborných časopisů, lektoruje a přednáší fotografii na konferencích. Vydal úspěšné knihy „Mistrovství práce s DSLR“ a „Mistrovství práce se světlem“.