Kolik odstínů barev je v souboru JPG?

JPEG (Joint Photographic Experts Group) je široce používaná metoda komprese fotografií. Formát souboru, který obsahuje komprimovaná data, se obvykle také nazývá JPEG; Nejběžnější přípony takových souborů jsou .jpeg, .jfif, .jpg, .JPG nebo .JPE. Nicméně, .jpg je nejoblíbenější rozšíření na všech platformách.

Proces komprese JPEG se skládá z několika kroků. Prvním krokem je převod obrazu z barevného prostoru RGB do prostoru YUV na základě charakteristik jasu a chromatičnosti. Veškerá další práce se provádí přesně s tímto barevným prostorem, který nám díky některým jeho vlastnostem umožňuje získat tak vysoké úrovně komprese.

V čem je reprezentace barev YUV tak odlišná ve srovnání s RGB? A skutečnost, že je nejblíže „přirozenému“, tomu, který člověk nevědomě provádí. Složka Y, neboli jas, úzce souvisí s kvalitou obrazu. Přesněji, Y je obrázek, pouze černobílý. Složky U a V obsahují informace o barvě a umožňují nám vybarvit obrázek Y.

V dalším kroku po převodu se obrázek rozdělí na čtvercové oblasti o rozměrech 8×8 pixelů. Po tomto, tzv diskrétní kosinová transformace (DCT). V tomto případě je každý blok analyzován, rozložen na jednotlivé barvy a je vypočtena frekvence výskytu každé barvy.

Lidské oko je navrženo tak, aby bylo nejcitlivější na jasovou složku obrazu (složka Y) a nejméně na barvu. Důvod tohoto jevu spočívá ve fyziologii. Pravděpodobně si pamatujete, že zornice je optická čočka, která zaostřuje obraz na oční pozadí, které je pokryto tyčinkami a čípky. No, tyčinky jsou senzory, které vnímají složku jasu, a čípky – barevnou složku. Navíc je zde řádově více tyčinek než čípků a jsou mnohem citlivější na světlo. Pamatujte na přísloví „Všechny kočky jsou v noci šedé“. proč tomu tak je? Proč všechno večer ztrácí barvu? Je to právě proto, že množství světla dopadajícího na zornici nestačí na vyvolání kuželové reakce. Ale citlivost lidského oka na různé barvy také není konstantní. Zornice je citlivější na spodní část barevného spektra než na horní. Formát JPEG bere tyto funkce v úvahu.

Analýzou frekvenčních informací o vzhledu barev je možné se zbavit části informací již v procesu kvantizace. V tomto případě jsou vyloučeny barvy v horní části spektra, což nemá prakticky žádný vliv na vizuální vnímání obrazu. Některé informace o jasu jsou také vyloučeny. Zhruba řečeno, JPEG jednoduše zahodí polovinu užitečného signálu z jasové složky a 3/4 z barevné složky. To je samozřejmě přibližně, protože existují gradace a složitější kompresní schémata.

READ
Jaký je nejlepší způsob, jak krmit okurky během plodování?

Množství informací vyloučených během komprese závisí na požadované kvalitě obrazu. Při nejvyšších úrovních komprese jsou detaily zcela vymazány a blok zešedne. Při střední a nízké úrovni komprese si soubor uchovává přibližné informace o barvě dané oblasti. Velikost tohoto „přibližného“ přímo závisí na stupni komprese. A musíte pochopit, že na rozdíl od konvenčních formátů, které ukládají obrázek bod po bodu, JPEG ukládá přibližné barvy. Z vědeckého hlediska používá JPEG k ukládání Fourierovy řady a při vysokých kompresních poměrech jednoduše zahazuje podmínky řad vyšších řádů. A pokaždé, když se obraz zobrazí na obrazovce, počítač provede syntézu. Navíc je poměrně náročný na zdroje a je patrný na pomalých počítačích. Z toho plyne jedna poznámka – pokud jste uložili obrázek ve formátu JPEG, pak jej nelze obnovit do posledního pixelu! Proto se tento formát nazývá „ztrátový formát“, a proto se nedoporučuje znovu komprimovat obrázky JPEG, protože se určitě zhorší. Co když to uděláš 10x?

Informace o jasu a barvě jsou pak zakódovány tak, aby byly uloženy pouze rozdíly mezi sousedními bloky. V důsledku toho jsou bloky reprezentovány jako řetězce čísel, které lze dále komprimovat. Protože výsledné bloky obsahují mnoho nul, poslední fáze kódování (prováděná pomocí Huffmanova algoritmu)

Rating
( No ratings yet )
Like this post? Please share to your friends:
Leave a Reply

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: