JPEG

Z WikiKnihovna
Přejít na: navigace, hledání

Autor: Jiří Křupala

Klíčová slova: počítačová grafika, obrázky, editace obrázků, ztrátová komprese



Charakteristika

JPEG patří mezi nejčastěji používané kompresní formáty při práci s fotografiemi či jinými obsahově a barevně rozmanitými obrazovými soubory. Jeho předností je malá velikost výsledného souboru v počítači a zároveň na pohled relativně identická kvalita v porovnání s jinými bezeztrátovámi formáty (např. bmp nebo tiff). Z těchto důvodů se velmi často používá k ukládání obrázků na internet.

Historie

Tato ztrátová komprese byla navržena skupinou JPEG (Joint Photographic Expert Group) v rámci mezinárodní standardizační organizace ISO v roce 1991. [1]
Samotný formát byl původně vytvořen Ericem Hamiltonem, pozdějším koordinátorem JPEG, jako součást jeho práce pro C-Cube Microsystems, a poté byl umístěn na veřejnou doménu pod názvem JFIF.
Nicméně pravděpodobně největším příspěním byla práce nezávislé skupiny IJG (Independent JPEG Group), konkrétně práce člověka jménem Tom Lane. Jejich implementace softwaru do jednoho z hlavních Open Source balíčků byla klíčem k úspěchu standardu JPEG, jenž byl následně přijmut mnoha společnostmi do celé škály produktů, jako například obrázkové editory nebo internetové prohlížeče.
Po vytvoření výše uvedeného standardu začal management reagovat na kritiku. Jedna z nejvíce vytýkaných věcí byla špatná kvalita. Nejvíce známým a viditelným problémem jsou tzv. artefakty (viz. obrázek), které se tvoří v určitých částech obrazu při vyšší kompresi, nejčastěji na větších jednobarevných plochách. Dále je to vnitřní dělení obrazu do čtverců o pevné velikosti, jež brání dosažení vyššího kompresního poměru. [2]


http://pictureup.cz/picture/verejny/19651965artefsrov.png
Na obrázku lze vidět porovnání artefaktů vytvořenými vysokým kompresním poměrem JPEG vedle bezeztrátové komprese PNG.
Zdroj: Jiří Křupala

JPEG 2000

„Zmíněné vady překonal formát JPEG 2000, který při kódování bere v úvahu obraz jako celek (bez dělení na čtverce) a podrobuje jej transformacím za pomocí funkcí zvaných wavelets (vlnky). Opakované užití tzv. vlnkových transformací umožňuje uchování obazu ve více rozlišeních, optimalizování dat pro postupný přenos po síti a definování oblasti kódované ve vyšší kvalitě.“ [1]


Způsob komprese JPEG

http://pictureup.cz/picture/verejny/923923coding.gif
Zdroj: Jiří Křupala


Transformace barev - Nejprve je třeba převést původní barevný režim do modelu YCBCR, protože v další fázi se jasová složka Y a barevné složky CB a CR zpracovávají odděleně.
Redukce barev - Sousední barevné složky se zprůměrují a nahradí se jedinou hodnotou. Průměr může sestávat např. ze sousedních pixelů.
Dopředná diskrétní kosinová transformace (DKT) - V této fázi jsou obrazová data rozdělena do čtverců o rozměrech 8×8 pixelů a každý z nich podléhá kosinové transformaci za účelem vytvoření neceločíselných koeficientů.
Kvantifikace koeficientů DKT - V této fázi uživatel vybírá koeficient kvality, neboli množství ztracených informací a úroveň komprese. Tabulky s kvantizačními hodnotami byly stanoveny komisí JPEG.
Kódování - Nyní se takto zjednodušená data kódují Huffmanovým nebo aritmetickým kódováním a zapisují se do výsledného souboru. [1]

Zdroje

[1] RYŠKA, Pavel. Počítačová grafika. 1. vydání. Praha : Michael - SSŠRT, s. r. o., 2007. str. 72. ISBN 978-80-254-0182-8.

[2] JPEG Homepage. Dostupný z www: <http://www.jpeg.org/jpeg/index.html>