JPEG – Ilustrace vlivu kvantování DCT koeficientů na vzhled obrazu

Applet slouží k znázornění průběhu komprese obrazových dat prostřednictvím diskrétní kosinové transformace (DCT) a následného kvantování DCT koeficientů v rámci algoritmu JPEG.

V levé části okna je umístěna galerie obrázků ke zpracování. Jednotlivý blok pixelů je možné vybrat kliknutím po obrázku „Výběr bloku 8 × 8 pixelů“. Pak lze zvolit kvalitu obrazu a také ukázat nebo schovat číselné hodnoty koeficientů pomocí přepínače „Zobrazit hodnoty“. Sled celého procesu je označen šipkami.

Výsledný obrázek v appletu se zvětší najetím kurzoru. Se stisknutou klávesou Ctrl se lupa objeví i pro originální obrázek.

Výběr bloku 8 × 8 pixelů

Blok 8 × 8 pixelů

DCT koefiecienty

Kvalita (určuje kvantovací matici)

Zobrazit hodnoty

Výsledný obrázek

Výsledný blok 8 × 8 po IDCT

Vynásobení kvantovací maticí

Kvantované DCT koeficienty

Diskrétní kosinová transformace

Algoritmus JPEG využívá dvourozměrnou variantu diskrétní kosinové transformace DCT-II a zpětnou DCT-II (IDCT) pro dekódování obrazu. Před samotnou transformací se celý obrázek rozdělí na bloky 8 × 8 pixelů a od hodnoty pixelů se odečte 128. Pak se spočítá DCT na každém bloku, výsledkem je matice DCT koeficientů. V levém horním rohu dané matice je tzv. DC koeficient. Ostatní 63 střídavé AC koeficienty mají mnohem menší rozsah nebo dokonce nulovou hodnotu.

Kvantování

Kvantování je v algoritmu JPEG hlavním ztrátovým procesem, který umožňuje se zbavit informace, která téměř neovlivňuje vzhled obrazu. Právě v tomto kroku lze vybrat úroveň komprese obrazu v rozsahu od 1 do 100. Během kvantování se každý prvek DCT matice dělí odpovídajícím prvkem kvantizační matice, která se generuje podle úrovně komprese, a zaokrouhluje se na celá čísla. Zaokrouhlením/kvantizací se dosahuje zmenšení amplitudy koeficientů a tím i zvýšení počtu nul v DCT spektru, které se pak jednodušeji zakódují.


(c) 2023 Valeriia Dziuina, Pavel Rajmic, Ústav telekomunikací, FEKT, VUT v Brně