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ě