Komprese videa Praha 2010
Účel komprese Snížení zátěže přenosového média Zmenšení objemu dat pro uložení
Metody komprese obrazu Redundance Irelevance
Redundantní složka část informace, po jejíž odstranění ze signálu můžeme rekonstruovat původní signál bez zkreslení např. sekvenci vzorku s(n) ={4,4,4,4,4,4,6,6,6,6,7,7,7} rozdělenou na tři, o stejné hodnotě s(n) = {4,4,4,4,4,4} {6,6,6,6} {7,7,7} lze vyjádřit dvojicí s počtem opakování s(n) = {4,6} {6,4} {7,3}
Irelevance Část informace, jejíž nepřítomnost je v signálu je nepostřehnutelná, ale nelze zpětně rekonstruovat původní signál. Např. sekvence s hodnotou jasu u bodu (i,j)čb f(n) = {5,4,4,4,4,3,3,5,4,4} průměrná jasová hodnota v sekvenci je (4) ve tvaru g(n) = {4,4,4,4,4,4,4,4,4,4} komprimace g(n) = {4,9}
Komprese videa Neztrátové RAW, HuffYUV Ztrátové Indeo Video, H.261 až H263, MJPEG, MPEG-1, MPEG-2, MPEG-3, MPEG-4, ASF, WMV, QuickTime, RealVideo, DivX 3.11a Alpha, DivX 4, DivX 5, XviD, DV
Další typy komprese symetrická náročnost algoritmu (složitost) komprese i dekomprese je téměř shodná asymetrická náročnost algoritmu komprese a dekomprese je podstatně odlišná (např. časově)
Další typy komprese Kaskádová podstatou této komprese je postupné skládání funkcí, dekomprese probíhá v opačném pořadí s opačnými funkcemi Proudová na vstup kompresního algoritmu přichází postupně jednotlivé symboly a výstup je vytvářen po symbolech Bloková na vstup kompresního algoritmu jde celý blok dat, výstup je vytvářen po blocích
Další typy komprese statická model kompresního algoritmu je časově stálý, je přesně stanoven pro danou aplikaci semiadaptivní komprese má dva cykly: při prvním pouze projdou vstupní data a upraví se model kompresního algoritmu, při druhém průchodu se data komprimují Adaptivní kódy se připraví až na základě dat a proto se musí pokaždé přenést tabulka znaků lokálně adaptivní např. metoda move to front
ISO a ITU standard
Standardy pro aplikace Rok komunikace videokonfer. ITU 1994 H.261 kontinuální přenos MPEG MPEG-1 vysílání MPEG M-JPEG 1998 H.263 MPEG-4 část 2 MPEG-2 2002 H.263++ MWV/VC1 H.264 MPEG-4 část 10 MPEG-4 AVC 2006 Jednotný standard
Kritéria pro výběr kodeků Dostupnost kodeků pro různé platformy Ztrátovost Čas Náročnost Výběr přenosového média Finanční náročnost
Porovnání výsledků testu aplikace Průměrné úspory vztažené k: Kodér MPEG-4 ASP H.263 HLP MPEG-2 H.264/AVC MP 37,5 % 47,6 % 63,5 % MPEG-4 ASP - 16,6 % 42,9% H.263 HLP - - 30,6%
Odolnost kodeků MPEG-2 a H.264 proti chybám při přenosu kodek MPEG-2 je proti bitovým chybám výrazně odolnější než kodek H.264 (to se projeví vyšší hodnotou PSNR). kodek H.264 je na bitové chyby velmi citlivý a to už při nízkých hodnotách BER v v praxi zakódovaný tok se vždy doplňuje ochranným kódem. U H.264 se k tomu využije část ušetřeného bitového toku
Hodnocení parametrů komprese rychlost komprese náročnost použitého algoritmu výsledný kompresní poměr Vliv snímané scény na kompresní poměr Subjektivní kvalita výsledku
Vliv obsahu obrazu na výsledek komprese kompresní poměr / čas JPEG+GDI 19 / 0,98s 76,99 / 0,74s Huffman 1,034 / 2,07s 5,37/ 0,76s
Standard H.264 pro video-aplikace multimediální pošta multimediální služby prostřednictvím paketové sítě konverzační služby v reálném čase (videokonference, videotel. atd.) vzdálený video-dohleddohled sériové paměťové prostředky a a další aplikace
Oblast standardizace Standard ISO/IEC 14496-10 Omezuje se na bitový tok, syntaxe, a dekódování Povolena optimalizace Povoleno zjednodušení složitosti pro nástroj Neposkytuje záruky jakosti
Standard H.264 pro video-aplikace kabelová televize (optické sítě, metalická vedení apod.) přímé satelitní vysílání a video-služby digitální účastnické vedení pro video-služby digitální pozemní televizní vysílání interaktivní paměťová média (optické disky atd.)
Základní profily H.264 Baseline (BP): Bez predikčních snímků, pouze 4:2:0/8bit, videokonference, mobilní aplikace Extended (XP): I,P,B snímky, i prokládané řádkování. IP streaming Main(MP), High (HiP): Základní profil pro TV distribuci, HD DVD/Blue Ray. (High má navíc adaptivní změnu velikosti bloku a proměnlivou velikost kvantizační matice a oddělené řízení barvonosných složek)
Základní profily H.264
Profily H.264/AVC Standardu Kódovací nástroje Baseline Main Extended I a P části X X X CAVLC X X X CABAC B části X X prokládané kódování X X chybová odolnost X X SI a SP část X X
Druhy entropického kódování Exponenciální kód CAVLC (context-adaptive variable-length length coding) kódování s proměnnou délkou slova CABAC (context-adaptive binary arithmetic coding) adaptivní binární aritmetické kódování. Kód CAVLC je užívaný společně s univerzálním nerovnoměrným kódem (UVLC), kdy je přiřazeno kratší kódové slovo symbolu s vyšší pravděpodobností výskytu, a delší kódové slovo pro symboly s nižší pravděpodobností výskytu. Jednotlivý výběr kódových slov je z tabulek, které platí pro všechny symboly s výjimkou transformačního součinitele, jehož hodnota závisí na struktuře a vlastnostech předchozích kódových úrovní.
Nadstavbové profily H.264
Rozšířené profily H.264 High 10 profil (Hi10P), podpora 4:2:0 video až do 10 bitů reprezentuje přesnost za vzorek High 4:2:2 profil (H422P), podpora až do 4:2:2 sytost barvy vzorkování a až do 10 bitů na vzorek
Rozšířené profily H.264 High 4:4:4 profil (H444P), podporuje až do 4:4:4 sytosti barvy vzorkování až do 12 bitů na vzorek, dodatečně podporuje účinné bezeztrátové kódování
Pohybové režimy Proměnná délka bloku inter režimu ze 16x16 do 4x4 Vnitřní režim: 16x16, 8x8, 4x4 Přímý režim: 16x16, 8x8
Pokročilé video-kódování Každý zbytkový makroblok je transformovaný, kvantovaný a kódovaný. Předchozí standardy jako MPEG- 1, MPEG 2, MPEG - 4 a H.263 použilo 8x8 diskrétní kosinus transformace (DCT) jako základní transformace. baseline profil H.264 užívá tři transformace v závislosti na typu zbytkových dat, který má být kódovaný: transformace pro 4x4 pole luma DC součinitelů v nitru makrobloky
Pokročilé video-kódování (předpovězený v 16x16 módu), transformace pro 2x2 pole sytosti barev DC součinitelé (v nějakém /každém /žádném makrobloku) a transformace pro všechny další 4x4 bloky v zbytkových datech. Jestli volitelná "přizpůsobivá velikost bloku transformuje" mód je užívaný, další transformace jsou vybrané v závislosti na kompenzaci pohybu velikost bloku (4x8, 8x4, 8x8, 16x8, atd).
Princip nezávislého kódování
Obnovovací frekvence
Rozlišení obrazu
Nezávislé kódování
Dočasná rozšiřitelnost (dvojí předpověď - struktura) Frame Rate = 3.75 7.5 15 30 fps fps GOP hranice Předpověď GOP hranice Klíčový obraz Skupina obrazků (GOP) Klíčový obrázek: Typické vnitřní kódování Hierarchicky předpovězené B obrázky: Kompenzace předpovědi pohybu T 1 T T 0 0 T T T 2 3 2 T 3 T 3 T 3 Klíčový obraz T x :Dočasný identifikátor vrstvy Konstrukční zpoždění = 7 rámců
Skupina obrázků group of pictures (GOP) group of pictures (GOP) I 0 /P 0 B 3 B 2 B 3 B 1 B 3 B 2 B 3 I 0 /P 0 B 3 B 2 B 3 B 1 B 3 B 2 B 3 I 0 /P 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 display order
Děkuji za pozornost