VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY ZTRÁTOVÁ KOMPRESE VIDEOSIGNÁLŮ - KVANTOVÁNÍ LOSSY VIDEO SIGNAL COMPRESSION - QUANTISATION

Podobné dokumenty
Příloha 1. Náleţitosti a uspořádání textové části VŠKP

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY NÁVRH STRATEGIE ROZVOJE MALÉ RODINNÉ FIRMY THE DEVELOPMENT OF SMALL FAMILY OWNED COMPANY

Bakalářská práce bakalářský studijní obor Teleinformatika

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Kosinová transformace 36ACS

Kompresní algoritmy grafiky. Jan Janoušek F11125

Metodický pokyn č. 1/09 pro odevzdávání, ukládání a zpřístupňování vysokoškolských závěrečných prací

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3.

DIPLOMOVÁ PRÁCE (MMSE) Pokyny pro vypracování

NÁVRH ŘEŠENÍ FLUKTUACE ZAMĚSTNANCŮ VE SPOLEČNOSTI

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

SMĚRNICE REKTORA Č. 9/2007


Grafika na počítači. Bc. Veronika Tomsová

ZÁKLADNÍ METODY REFLEKTOMETRIE

13 Barvy a úpravy rastrového

OBJEKTIVNÍ HODNOCENÍ KVALITY VIDEA V PROSTŘEDÍ MATLAB

Jasové transformace. Karel Horák. Rozvrh přednášky:

Obrazovkový monitor. Antonín Daněk. semestrální práce předmětu Elektrotechnika pro informatiky. Téma č. 7: princip, blokově základní obvody

AUTOMATIZACE CHYB OBJEDNÁVKOVÉHO SYSTÉMU AUTOMATION OF ORDERING SYSTEM ERRORS

DIGITÁLNÍ VIDEO. pokus o poodhalení jeho neskutečné obludnosti (bez jednosměrné jízdenky do blázince)

25. DIGITÁLNÍ TELEVIZNÍ SIGNÁL A KABELOVÁ TELEVIZE

Digitální magnetický záznam obrazového signálu

Vodoznačení video obsahu

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Datové formáty videa a jejich využití. Tomáš Kvapil, Filip Le Manažerská informatika Multimédia

BPC2E_C09 Model komunikačního systému v Matlabu

VIDEO DATOVÉ FORMÁTY, JEJICH SPECIFIKACE A MOŽNOSTI VYUŽITÍ SMOLOVÁ BÁRA

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni

Analýza a zpracování digitálního obrazu

Signál v čase a jeho spektrum

NOVÉ METODY HODNOCENÍ OBRAZOVÉ KVALITY

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15

7. Funkce jedné reálné proměnné, základní pojmy

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut.

Kompresní metody první generace

Moderní multimediální elektronika (U3V)

Semestrální projekt. Vyhodnocení přesnosti sebelokalizace VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ. Fakulta elektrotechniky a komunikačních technologií

Katedra radioelektroniky K13137, FEL ČVUT Praha. zakódování dané informace. Tento trend postihl i oblast záznamu a přenosu širokopásmových

Identifikátor materiálu: ICT-1-19

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011

scale n_width width center scale left center range right center range value weight_sum left right weight value weight value weight_sum weight pixel

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Doporučení k uspořádání absolventské práce obhajované na Ústavu mikroelektroniky a Ústavu elektrotechnologie FEKT VUT v Brně ČÁST PRVNÍ

Osnova. Idea ASK/FSK/PSK ASK Amplitudové... Strana 1 z 16. Celá obrazovka. Konec Základy radiotechniky

Multimediální systémy

ZPRACOVÁNÍ OBRAZU přednáška 4

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

Kartografické stupnice. Přednáška z předmětu Tematická kartografie (KMA/TKA) Otakar Čerba Západočeská univerzita

12 Metody snižování barevného prostoru

DIGITÁLNÍ VODOZNAČENÍ OBRAZU

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ SMĚRNICE Č. 38/2017 ÚPRAVA, ODEVZDÁVÁNÍ, ZVEŘEJŇOVÁNÍ A UCHOVÁVÁNÍ VYSOKOŠKOLSKÝCH KVALIFIKAČNÍCH PRACÍ

Zpracování obrazů. Honza Černocký, ÚPGM

Úvod do zpracování signálů

11MAMY LS 2017/2018. Úvod do Matlabu. 21. února Skupina 01. reseni2.m a tak dále + M souborem zadané funkce z příkladu 3 + souborem skupina.

Číslicové zpracování signálů a Fourierova analýza.

ZÁKLADY AUTOMATICKÉHO ŘÍZENÍ

Chyby měření 210DPSM

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

1. Přednáška: Obecné Inf. + Signály a jejich reprezentace

RNDr. Eva Janoušová doc. RNDr. Ladislav Dušek, Dr.

Informační systémy ve zdravotnictví

Základní principy přeměny analogového signálu na digitální

Volba zobrazení (Direct Current, Scaling) - FFT 1D, FFT 2D

KOMPRIMACE. aneb Aby to zabralo méně místa

Základní komunikační řetězec

VY_32_INOVACE_E 15 03

1 Tyto materiály byly vytvořeny za pomoci grantu FRVŠ číslo 1145/2004.

A/D převodníky - parametry

1. Předmět a účel Rámcové licenční smlouvy

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

Jan Kaiser ČVUT, Fakulta elektrotechnická, katedra Radioelektroniky Technická 2, Praha 6

ztrátová odstraňuje zbytečné informace z obrazu. Různé druhy ztrátových kompresních metod se liší podle druhu odstraněných zbytečných informací.

Moderní multimediální elektronika (U3V)

Čas (s) Model časového průběhu sorpce vyplývá z 2. Fickova zákona a je popsán následující rovnicí

5 Vícerozměrná data - kontingenční tabulky, testy nezávislosti, regresní analýza

Zadání maturitní práce ve školním roce 2016/2017

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Kvalita zvuku a obrazu v elektronických komunikacích aneb Ještě chceme HiFi?

JPEG Formát pro archivaci a zpřístupnění.

Quantization of acoustic low level signals. David Bursík, Miroslav Lukeš

7. Rozdělení pravděpodobnosti ve statistice

Úvod do GIS. Prostorová data II. část. Pouze podkladová prezentace k přednáškám, nejedná se o studijní materiál pro samostatné studium.

Analýza dat na PC I.

U Úvod do modelování a simulace systémů

SEMESTRÁLNÍ PROJEKT 1 (MM1E, LM1E) Pokyny pro vypracování

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

Videosekvence. vznik, úpravy, konverze formátů, zachytávání videa...

Komprese obrazu. Úvod. Rozdělení metod komprese obrazů. Verze: 1.5, ze dne: 1. června Václav Hlaváč a Tomáš Svoboda

1 Základní funkce pro zpracování obrazových dat

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

Zásady regulace - proudová, rychlostní, polohová smyčka

Fázorové diagramy pro ideální rezistor, skutečná cívka, ideální cívka, skutečný kondenzátor, ideální kondenzátor.

Zdroj:

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Příklady použití tenkých vrstev Jaromír Křepelka

Vysokoškolské kvalifikační práce na UPa. Pardubice 4. května 2010

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

Základy a aplikace digitálních. Katedra radioelektroniky (13137), blok B2, místnost 722

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta elektrotechniky a informatiky Ústav radioelektroniky

Transkript:

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV RADIOELEKTRONIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF RADIO ELECTRONICS ZTRÁTOVÁ KOMPRESE VIDEOSIGNÁLŮ - KVANTOVÁNÍ LOSSY VIDEO SIGNAL COMPRESSION - QUANTISATION BAKALÁŘSKÁ PRÁCE BACHELOR S THESIS AUTOR PRÁCE AUTHOR VEDOUCÍ PRÁCE SUPERVISOR Ing. Tomáš Frýza, Ph.D. BRNO 2008

LICENČNÍ SMLOUVA POSKYTOVANÁ K VÝKONU PRÁVA UŽÍT ŠKOLNÍ DÍLO uzavřená mezi smluvními stranami: 1. Pan/paní Jméno a příjmení: Bytem: Antonínková 528, Blatnice pod Svatým Antonínkem, 696 71 Narozen/a (datum a místo): 16. prosince 1985 v Kyjově (dále jen autor ) a 2. Vysoké učení technické v Brně Fakulta elektrotechniky a komunikačních technologií se sídlem Údolní 53, Brno, 602 00 jejímž jménem jedná na základě písemného pověření děkanem fakulty: prof. Dr. Ing. Zbyněk Raida, předseda rady oboru Elektronika a sdělovací technika (dále jen nabyvatel ) Čl. 1 Specifikace školního díla 1. Předmětem této smlouvy je vysokoškolská kvalifikační práce (VŠKP): disertační práce diplomová práce bakalářská práce jiná práce, jejíž druh je specifikován jako... (dále jen VŠKP nebo dílo) Název VŠKP: Vedoucí/ školitel VŠKP: Ústav: Datum obhajoby VŠKP: Ztrátová komprese videosignálů - kvantování Ing. Tomáš Frýza, Ph.D. Ústav radioelektroniky VŠKP odevzdal autor nabyvateli * : v tištěné formě počet exemplářů: 2 v elektronické formě počet exemplářů: 2 2. Autor prohlašuje, že vytvořil samostatnou vlastní tvůrčí činností dílo shora popsané a specifikované. Autor dále prohlašuje, že při zpracovávání díla se sám nedostal do rozporu s autorským zákonem a předpisy souvisejícími a že je dílo dílem původním. 3. Dílo je chráněno jako dílo dle autorského zákona v platném znění. 4. Autor potvrzuje, že listinná a elektronická verze díla je identická. * hodící se zaškrtněte

Článek 2 Udělení licenčního oprávnění 1. Autor touto smlouvou poskytuje nabyvateli oprávnění (licenci) k výkonu práva uvedené dílo nevýdělečně užít, archivovat a zpřístupnit ke studijním, výukovým a výzkumným účelům včetně pořizovaní výpisů, opisů a rozmnoženin. 2. Licence je poskytována celosvětově, pro celou dobu trvání autorských a majetkových práv k dílu. 3. Autor souhlasí se zveřejněním díla v databázi přístupné v mezinárodní síti ihned po uzavření této smlouvy 1 rok po uzavření této smlouvy 3 roky po uzavření této smlouvy 5 let po uzavření této smlouvy 10 let po uzavření této smlouvy (z důvodu utajení v něm obsažených informací) 4. Nevýdělečné zveřejňování díla nabyvatelem v souladu s ustanovením 47b zákona č. 111/ 18 Sb., v platném znění, nevyžaduje licenci a nabyvatel je k němu povinen a oprávněn ze zákona. Článek 3 Závěrečná ustanovení 1. Smlouva je sepsána ve třech vyhotoveních s platností originálu, přičemž po jednom vyhotovení obdrží autor a nabyvatel, další vyhotovení je vloženo do VŠKP. 2. Vztahy mezi smluvními stranami vzniklé a neupravené touto smlouvou se řídí autorským zákonem, občanským zákoníkem, vysokoškolským zákonem, zákonem o archivnictví, v platném znění a popř. dalšími právními předpisy. 3. Licenční smlouva byla uzavřena na základě svobodné a pravé vůle smluvních stran, s plným porozuměním jejímu textu i důsledkům, nikoliv v tísni a za nápadně nevýhodných podmínek. 4. Licenční smlouva nabývá platnosti a účinnosti dnem jejího podpisu oběma smluvními stranami. V Brně dne: 6. června 2008.. Nabyvatel Autor

Anotace Tématem mé bakalářské práce je ztrátová komprese videosignálů. Protože sekvence videosignálů často vyžadují velké množství paměti pro jejich uchovávání a zabírají velkou šířku pásma při jejich přenosu, je nutné videosignály komprimovat. Některé standardy pro kompresi videosignálů používají dvourozměrnou diskrétní kosinovou transformaci. Mým úkolem je rozšířit tuto transformaci o další rozměr (čas) a otestovat použití trojrozměrné diskrétní kosinové transformace. Zaměřuji se hlavně na porovnávání obrazové kvality v závislosti na velikosti ztrátové komprese. Tato práce také popisuje metody kvantování koeficientů vzniklých trojrozměrnou diskrétní kosinovou transformací. Annotation The aim of my bachelor s thesis is a lose video signal compression. Because sequences of digital video signals typically require vast amount of electronic memory for storage, and occupy much bandwidth during the transmission, the video signals must be compressed. Several video compression standards use two-dimensional discrete cosine transform. My job is to extend one more dimension (time) and make tests of threedimensional discrete cosine transform. I focused on video quality compared to the compression ratio. This paper also describes a technique for generating the quantisation values for three dimensional discrete cosine transform coefficients. Klíčová slova Diskrétní kosinova transformace, DCT, trojrozměrná, dvourozměrná, kvantování, komprese videa, transformace, ztrátová komprese Keywords Discrete cosine transform, DCT, three dimensions, two dimensions, quantisation, video compression, transform coding, lose compression BALADA, R. Ztrátová komprese video signálů kvantování: bakalářská práce. Brno: Vysoké učení technické v Brně, Fakulta elektrotechniky a komunikačních technologií, 2008. 45 s., 4 přílohy. Vedoucí bakalářské práce Ing. Tomáš Frýza, Ph.D. V

Prohlášení Prohlašuji, že svou bakalářskou práci na téma Ztrátová komprese videosignálů - kvantování jsem vypracoval samostatně pod vedením vedoucího bakalářské práce a s použitím odborné literatury a dalších informačních zdrojů, které jsou všechny citovány v práci a uvedeny v seznamu literatury na konci práce. Jako autor uvedené bakalářské práce dále prohlašuji, že v souvislosti s vytvořením této bakalářské práce jsem neporušil autorská práva třetích osob, zejména jsem nezasáhl nedovoleným způsobem do cizích autorských práv osobnostních a jsem si plně vědom následků porušení ustanovení 11 a následujících autorského zákona č. 121/2000 Sb., včetně možných trestněprávních důsledků vyplývajících z ustanovení 152 trestního zákona č. 140/1961 Sb. V Brně dne 6. června 2008... podpis autora Poděkování Děkuji vedoucímu bakalářské práce Ing. Tomáši Frýzovi, Ph.D. za účinnou metodickou, pedagogickou a odbornou pomoc a další cenné rady při zpracování mé bakalářské práce. V Brně dne 6. června 2008... podpis autora VI

Obsah 1 ÚVOD... 1 2 ÚPRAVA DAT... 2 2.1 TRANSFORMACE BAREV Z RGB DO YC B C R A ZPĚT... 2 2.2 PODVZORKOVÁNÍ BAREV... 2 3 DISKRÉTNÍ KOSINOVÁ TRANSFORMACE... 4 3.1 DVOUROZMĚRNÁ DISKRÉTNÍ KOSINOVÁ TRANSFORMACE... 4 3.2 TROJROZMĚRNÁ DISKRÉTNÍ KOSINOVÁ TRANSFORMACE... 6 3.3 STATISTICKÉ VLASTNOSTI KOEFICIENTŮ 3D DCT... 7 3.3.1 Dynamický rozsah stejnosměrných koeficientů... 7 3.3.2 Dynamický rozsah střídavých koeficientů... 9 4 KVANTOVÁNÍ... 13 4.1 KVANTOVÁNÍ 2D DCT KOEFICIENTŮ... 13 4.2 KVANTOVÁNÍ 3D DCT KOEFICIENTŮ... 14 4.2.1 Modifikace kvantování 2D DCT na koeficienty 3D DCT... 14 4.2.2 Hyperboloidické kvantování... 14 4.2.3 Hodnocení experimentálních výsledků... 16 4.2.4 Experimentální určení kvantizačních parametrů... 17 5 NAČÍTÁNÍ KOEFICIENTŮ... 21 5.1 NAČÍTÁNÍ CIK-CAK PO SNÍMCÍCH... 21 5.2 NAČÍTÁNÍ CIK-CAK V BLOKU 8X8X8... 22 5.3 NAČÍTÁNÍ DLE VÁHOVÁNÍ SOUŘADNIC KOEFICIENTŮ... 22 6 POPIS PROGRAMU... 25 6.1 ANALÝZA VLASTNOSTÍ TESTOVANÝCH VIDEOSEKVENCÍ... 27 6.1.1 Histogram... 28 6.1.2 Statistika... 29 6.1.3 Náhled... 30 6.1.4 Načítání koeficientů... 30 6.2 VÝSLEDKY TESTOVANÝCH VIDEOSEKVENCÍ... 31 7 ZÁVĚR... 34 8 POUŽITÉ INFORMAČNÍ ZDROJE... 9 SEZNAM ZKRATEK... 37 10 SEZNAM PŘÍLOH... 37 VII

Seznam obrázků OBRÁZEK 1 PODVZORKOVÁNÍ A) Y=JASOVÁ MATICE 16X16, B), C) C B C R =CHROMINANČNÍ MATICE (8X8), PODVZORKOVÁNÍ V HORIZONTÁLNÍM I VERTIKÁLNÍM SMĚRU, D), E) PODVZORKOVÁNÍ V HORIZONTÁLNÍM SMĚRU, F), G) PODVZORKOVÁNÍ VE VERTIKÁLNÍM SMĚRU.... 3 OBRÁZEK 2 A) ORIGINÁLNÍ OBRÁZEK, B) KOEFICIENTY 2D DCT [1].... 5 OBRÁZEK 3 BLOK KOEFICIENTŮ 8X8X8... 6 OBRÁZEK 4 HODNOTY DC KOEFICIENTŮ A) MAXIMÁLNÍ, B) MINIMÁLNÍ.... 8 OBRÁZEK 5 PŘEVODNÍ CHARAKTERISTIKA NELINEÁRNÍHO A LINEÁRNÍHO KVANTOVÁNÍ PRO DC KOEFICIENTY... 9 OBRÁZEK 6 POSTUPNÉ NAČÍTÁNÍ KOEFICIENTŮ... 10 OBRÁZEK 7 DYNAMICKÝ ROZSAH AC KOEFICIENTŮ... 10 OBRÁZEK 8 AC KOEFICIENTY VIDEOSEKVENCÍ: A) AKVARIUM.AVI, B) VITR.AVI.... 11 OBRÁZEK 9 PŘEVODNÍ CHARAKTERISTIKA NELINEÁRNÍHO A LINEÁRNÍHO KVANTOVÁNÍ PRO AC KOEFICIENTY... 12 OBRÁZEK 10 KVANTIZAČNÍ MATICE PRO: A) JASOVOU SLOŽKU STANDARDU JPEG [14], B) CHROMINANČNÍ SLOŽKY STANDARDU JPEG, C) STANDARD MPEG-2 [10], D) STANDARD MPEG-4.... 13 OBRÁZEK 11 ROZDĚLENÍ KRYCHLE NA VNITŘNÍ A VNĚJŠÍ REGION... 15 OBRÁZEK 12 ZÁVISLOST POČTU VNITŘNÍCH (VNĚJŠÍCH) KOEFICIENTŮ NA KOEFICIENTU C.... 15 OBRÁZEK 13 ZÁVISLOST: A) KOMPRESNÍHO POMĚRU, B) PSNR NA KOEFICIENTU C... 17 OBRÁZEK 14 ZÁVISLOST: A) KOMPRESNÍHO POMĚRU, B) PSNR NA KOEFICIENTU β INN... 18 OBRÁZEK 15 ZÁVISLOST KOMPRESNÍHO POMĚRU A PSNR NA KOEFICIENTU β OUT... 20 OBRÁZEK 16 NAČÍTÁNÍ CIK-CAK... 21 OBRÁZEK 17 NAČÍTÁNÍ CIK-CAK V BLOKU... 22 OBRÁZEK 18 NAČÍTÁNÍ DLE VÁHOVÁNÍ SOUŘADNIC... 22 OBRÁZEK 19 NAČÍTÁNÍ KOEFICIENTŮ VIDEOSEKVENCE ZAVOD.AVI : A) POSTUPNÉ, B) CIK-CAK PO SNÍMCÍCH, C) CIK-CAK V BLOKU 8X8X8, D) DLE VÁHOVÁNÍ KOEFICIENTŮ... 23 OBRÁZEK 20 NAČÍTÁNÍ KVANTOVANÝCH KOEFICIENTŮ VIDEOSEKVENCE VITR.AVI (C.R.=3) : A) POSTUPNÉ, B) CIK-CAK PO SNÍMCÍCH, C) CIK-CAK V BLOKU 8X8X8, D) DLE VÁHOVÁNÍ KOEFICIENTŮ... 24 OBRÁZEK 21 BLOKOVÉ SCHÉMA KODÉRU A DEKODÉRU 3D DCT... 25 OBRÁZEK 22 ÚVODNÍ MENU PROGRAMU... 26 OBRÁZEK 23 MENU KVANTIZACE... 27 OBRÁZEK 24 MENU HISTOGRAM... 28 OBRÁZEK 25 MENU STATISTIKA... 29 OBRÁZEK 26 MENU NÁHLED... 30 OBRÁZEK 27 MENU NAČÍTÁNÍ KOEFICIENTŮ... 31 OBRÁZEK 28 PŘÍKLAD KVANTOVÁNÍ VIDEOSEKVENCE ZAVOD.AVI : A) MEZNÍ PŘÍPAD (C.R.=51), B) VHODNÝ PŘÍKLAD (C.R.=8,8)... 31 OBRÁZEK 29 SROVNÁNÍ 3D DCT A 2D DCT ZPRACOVÁNÍ VIDEOSEKVENCE AKVARIUM.AVI : A) 3D DCT ZPRACOVÁNI (C.R.=85), B) 2D DCT ZPRACOVÁNÍ (C.R.=85)... 32 OBRÁZEK 30 PŘÍKLADY ZPRACOVÁNÍ VIDEOSEKVENCÍ: A) BOULDER.AVI (C.R.=14), B) CIAF.AVI (C.R.=28), C) JAMU.AVI (C.R.=20), D) VITR.AVI (C.R.=10)... 33 Seznam tabulek TABULKA 1 MAXIMÁLNÍ A MINIMÁLNÍ HODNOTY DC KOEFICIENTŮ... 8 TABULKA 2 ZLOMOVÉ BODY NELINEÁRNÍHO KVANTOVÁNÍ + LINEÁRNÍ KVANTOVÁNÍ (PRO DC KOEFICIENTY)... 9 TABULKA 3 DYNAMICKÝ ROZSAH AC KOEFICIENTŮ... 11 TABULKA 4 ZLOMOVÉ BODY NELINEÁRNÍHO KVANTOVÁNÍ + LINEÁRNÍ KVANTOVÁNÍ (PRO AC KOEFICIENTY)... 12 TABULKA 5 ZÁVISLOST POČTU VNITŘNÍCH A VNĚJŠÍCH KOEFICIENTŮ NA KOEFICIENTU C... 15 TABULKA 6 ZÁVISLOST C.R. A PSNR NA KOEFICIENTU C... 18 TABULKA 7 ZÁVISLOST C.R. A PSNR NA KOEFICIENTU β INN... 19 TABULKA 8 ZÁVISLOST C.R. A PSNR NA KOEFICIENTU β OUT.... 20 TABULKA 9 PARAMETRY TESTOVANÝCH VIDEOSEKVENCÍ... 32 VIII

1 Úvod Při kompresi videosignálů se běžně používá dvourozměrná diskrétní kosinová transformace (2D DCT Two Dimensional Discrete Cosine Transform), která kóduje vždy jednotlivé obrazové snímky. Mezi následujícími obrazovými snímky bývá značná souvislost, která představuje nadbytečnou informaci (redundanci) v obraze. Přidáním dalšího rozměru (času) lze tuto redundanci částečně odstranit právě trojrozměrnou diskrétní kosinovou transformací (3D DCT - Three Dimensional Discrete Cosine Transform). Samotná transformace však většinou žádnou podstatnou kompresi neprovádí, ba právě naopak za určitých podmínek (členitý a rychle se měnící obraz) může vyžadovat větší množství datového toku. Diskrétní kosinová transformace je dle své definice bezeztrátová, tzn. inverzní diskrétní kosinovou transformací lze zcela obnovit původní signál. Ztrátovou kompresi videosignálů způsobuje až kvantování a prahování koeficientů vzniklých diskrétní kosinovou transformací, nebo obdobnou transformací (Fourierovou, vlnkovou...). Koeficienty vzniklé trojrozměrnou diskrétní kosinovou transformací mají opět trojrozměrnou matici koeficientů. Ty mají na rozdíl od běžně používaných dvourozměrných koeficientů jiné vlastnosti. Mým úkolem bude analyzovat vlastnosti trojrozměrných koeficientů. Navrhnout některé vhodné metody pro kvantování těchto trojrozměrných koeficientů a přizpůsobit načítání koeficientů pro bezeztrátové metody komprese. Bakalářská práce je členěna celkem do 7 kapitol. Kapitola 2 popisuje úpravu vstupních dat před samotnou kosinovou transformací. Kapitola 3 představuje různé druhy diskrétní kosinové transformace a vlastnosti vzniklých koeficientů. V kapitole 4 jsou nastíněny možnosti kvantování frekvenčních koeficientů diskrétní kosinové transformace. V kapitole 5 jsou uvedeny příklady možného načítání koeficientů s ohledem na pozdější zpracování metodami bezeztrátové komprese. Kapitola 6 popisuje vytvořený program v prostředí Matlab. Celkové hodnocení je uvedeno v kapitole 7. 1

2 Úprava dat Před samotnou diskrétní kosinovou transformací je nutné upravit vstupní obrazová data do předem definovaného tvaru. Zejména je nutné data převést z nejrůznějších barevných prostorů jako jsou RGB, CMYK a dalších do barevného prostoru YC b C r. Složka Y nese informaci o jasu obrazu, složky C b a C r jsou rozdílové chrominanční složky obrazu vzhledem k jasové složce Y. Tento formát vznikl pro přenos video signálu zpětně kompatibilního s černobílým obrazem. 2.1 Transformace barev z RGB do YC b C r a zpět Pro převod z barevného prostoru RGB (Red Green Blue) do prostoru YC b C r lze použít následující vzorce; tyto vzorce jsou již upraveny pro rozsah celých čísel 0 až 255, tj. pro 8 bitové binární vyjádření [6]: Y = 0,20 R + 0,5870 G + 0,1140 B Cb = 0,1687 R 0,3313 G + 0,5000 B + 128 (1) C = 0,5000 R 0,4187 G 0,0813 B + 128 r Opačný převod z YC b C r na RGB se provádí pomocí těchto vzorců: R = Y + 1,40200 ( C G = Y 0,34414 ( C B = Y + 1,77200 ( C r b b 128) 128) 0,71414 ( C 128) r 128) 2.2 Podvzorkování barev Podvzorkování barev redukuje množství informací u chrominančních složek obrazu. Princip podvzorkování je možné použít díky vlastnostem lidského oka. Na sítnici lidského oka je několik druhů senzorů. Jednotlivé druhy senzorů reagují na rozdílné podněty, některé snímají informace o světelnosti (jasu) obrazu, další jsou citlivé na různé barevné odstíny. Protože senzorů na jasovou složku je podstatně více než senzorů pro barevné složky, je lidské oko méně citlivé na barevné složky obrazu. Podvzorkování vytváří průměr ze dvou sousedních pixelů na řádku popřípadě v sloupci, nebo ze čtyř sousedních pixelů tvořících čtverec a ukládá se jako jediný pixel, tím dochází ke ztrátě informace o barevné složce obrázku a zároveň k podstatnému zmenšení objemu dat. Pro snížení výpočtové náročnosti se často místo průměrování pouze vynechají některé pixely [5]. Obě barevné složky jsou tímto způsobem podvzorkovány, jasová složka zůstává v plném rozlišení obrazu viz. Obrázek 1. Podvzorkování je ztrátová operace, tzn. že podvzorkované barevné signály již nelze obnovit do původní formy. Vzhledem k vlastnostem lidského zraku toto zkreslení nepůsobí rušivě a může být využito k podstatnému zmenšení datového toku. V případě podvzorkování v horizontálním i vertikálním směru může uspořit polovinu datového toku, v případě podvzorkování pouze v jenom směru může ušetřit třetinu datového toku. (2) 2

Obrázek 1 Podvzorkování a) Y=jasová matice 16x16, b), c) C b C r =chrominanční matice (8x8), podvzorkování v horizontálním i vertikálním směru, d), e) podvzorkování v horizontálním směru, f), g) podvzorkování ve vertikálním směru. 3

3 Diskrétní kosinová transformace Diskrétní kosinová transformace (discrete cosine transform, DCT) je obdobou diskrétní Fourierovy transformace (discrete Fourier transform, DFT), ovšem s tím rozdílem, že jsou vypočteny pouze kosinové složky. DCT má oproti DFT některé výhody, obsahuje pouze reálné složky a protože kosinus je sudá funkce, nedochází při zpětné transformaci na ostrých hranách přechodů k zákmitům jako u DFT. Existuje několik typů DCT, které jsou více či méně často používány. Rovnice, prvních čtyř nejvíce používaných DCT, převzaté z [11]: DCT-I: 1 2 k N ( g0 + ( 1) g N 1) + 2 n= 1 π Gk = g n cos nk N 1. (3) DCT-I není definována pro N<2. DCT-II: G k = DCT-III: G k = DCT-IV: π N 1 g n cos n + n= 0 N 2 1 N 1 g0 + 2 n= 0 g n 1 k. (4) π 1 cos n k +. (5) N 2 N 1 π 1 1 Gk = g n cos n + k +. (6) n= 0 N 2 2 Kde N je celkový počet zpracovávaných vzorků. Nejběžnější varianta diskrétní kosinové transformace je DCT typu II, která je často nazývána pouze DCT. K ní inverzní transformace je DCT typu III, která je rovněž často nazývána inverzní DCT nebo jen zkratkou IDCT. DCT se s výhodou používá při zpracování obrazového či zvukového signálu, obzvláště při přípravě na ztrátovou kompresi. DCT je používána v řadě kodeků, například pro obrazový kodek JPEG, video kodek MPEG nebo zvukový kodek MP3. 3.1 Dvourozměrná diskrétní kosinová transformace Vícerozměrná transformace (transformace vícerozměrné funkce) může být spočítána jako série jednorozměrných transformací postupně v každém rozměru. Pro 2D například nejprve po řádcích a pak po sloupcích (nebo naopak). To umožňuje transformaci v ploše, tj. ve dvou směrech x a y. To znamená transformovat matici s prostorovými prvky x, y na frekvenční matici složek f x =u a f y =v, viz. literatura [6], [10]. Koeficienty DCT, tj. funkce G(u,v) se počítají z funkce g(x,y), tj. pro přímou dvourozměrnou diskrétní kosinovou transformaci DCT podle rovnice: G( u, v) 2 2 M N M 1N 1 = C( u) C( v) (2x + 1) uπ (2y + 1) vπ g( x, y)cos cos, (7) 2M x= 0 y= 0 2N 4

u, v = souřadnice ve frekvenční oblasti, x, y = souřadnice v prostorové oblasti. 1 Konstanty C ( u) = C( v) = pro u=v=0, 2 C ( u) = C( v) = 1 pro u>0, v>0. Transformovaná funkce G(u,v) se převede zpět na původní funkci g(x,y) pomocí inverzní diskrétní kosinové transformace IDCT (často značena DCT -1 ) podle rovnice: g( x, y) = 2 M 2 N M 1N 1 (2x + 1) uπ (2y + 1) vπ C( u) C( v) G( u, v)cos cos. (8) N x= 0 y= 0 2M 2 DCT i IDCT jsou bezeztrátové, k minimálním odchylkám může docházet zaokrouhlováním při číslicovém zpracování algoritmu DCT, samotný algoritmus DCT je však bezeztrátový. Dvourozměrná diskrétní kosinová transformace (2D DCT) se používá při zpracování statického obrazového signálu. Používá se sice i pro zpracování video signálů, ale 2D DCT je vždy aplikována pouze na jednotlivé snímky video signálu. Jejím úkolem je odstranit vzájemnou korelaci (závislost) mezi jednotlivými obrazovými body. Výsledkem 2D DCT transformace aplikované na matici NxN obrazových bodů je matice NxN koeficientů 2D DCT. Tyto koeficienty 2D DCT jsou již však vzájemně nekorelované (nezávislé) a vytváří tak vhodnou formu obrazového signálu pro další zpracování. První koeficient 2D DCT odpovídá průměrné hodnotě jednotlivých členů původní matice NxN, další koeficienty odpovídají amplitudě střídavých kosinových složek 2D DCT. Zpracovávat celý obraz najednou by bylo pomocí 2D DCT velmi náročné na výpočetní výkon i paměťovou kapacitu. Proto se obraz rozloží na jednotlivé bloky, obvykle o velikosti 8x8 obrazových bodů (pixelů), a tyto bloky se dále zpracovávají jednotlivě. Jako příklad zpracování obrazového signálu pomocí 2D DCT je uveden Obrázek 2, kde je na obrázku 2 a) originální obrázek a na obrázku 2 b) je tentýž obrázek zpracovaný pomocí 2D DCT, tzn. jeho koeficienty 2D DCT. Mezi těmito obrázky by asi nikdo nepředpokládal nějakou souvislost. a) b) Obrázek 2 a) Originální obrázek, b) Koeficienty 2D DCT [1]. 5

3.2 Trojrozměrná diskrétní kosinová transformace Přidáním dalšího rozměru, například času, může být sestavena rovnice pro výpočet trojrozměrné diskrétní kosinové transformace (3D DCT) a inverzní trojrozměrné diskrétní kosinové transformace (3D IDCT) [3]. 3D DCT: 2 M 2 2 N P M 1 N 1 P 1 (, v, w) = C( u) C( v) C( w) g( x, y, z) cos( t ) cos( t ) cos( t ) G u 3D IDCT: g M 1 N 1 P 1 x= 0 y= 0 z= 0 ( x, y, z) = C( u) C( v) C( w) G( u, v, w) cos( t ) cos( t ) cos( t ) kde u= 0 v= 0 w= 0 t 1 ( 2x + 1) 2 M 2 2 N P uπ =, t 2M Konstanty ( u) = C( v) = C( w) 2 ( 2y + 1) vπ =, t 2N 3 ( 2z + 1) wπ =. 2P 1 C = pro u=v=w=0, 2 ( u) = C( v) = C( w) = 1 C pro u>0, v>0, w>0. 1 1 2 2 3 3, (9), (10) Trojrozměrná diskrétní kosinova transformace je aplikována na bloky 8x8x8 obrazových bodů znázorněných na Obrázku 3. Vychází z dvourozměrné diskrétní kosinové transformace, která je běžně aplikována na bloky 8x8. Touto problematikou se zabývala skupina Joint Photographics Experts Group [12]. Tato skupina sestavila několik nejvhodnějších postupů pro komprimaci barevných i monochromatických obrazových dat. Mimo jiné také navrhla kvantizační tabulky pro JPEG standard. Zkoumala také vliv velikosti zpracovávaných bloků na obrazovou kvalitu a zvolila jako optimální velikost právě 8x8 obrazových bodů. Obrázek 3 Blok koeficientů 8x8x8. 6

Trojrozměrná diskrétní kosinová transformace (3D DCT) byla aplikována na soubor šesti nekomprimovaných videoklipů o rozměrech 320x240 a 96 snímcích. Náhled na videoklipy akvarium.avi, boulder.avi, CIAF.avi, jamu.avi, vitr.avi a zavod.avi je umístěn v příloze č.1. Všechny tyto snímky mají vzhledem k jejich délce obrovskou velikost, která může být velice snadno odhadnuta jednoduchým výpočtem: Velikost = 320 240 3( barvy) 96snímků = & 22MB, to vše při délce jednoho videoklipu asi 3,84s (pro 25 snímků za sekundu). To jenom podtrhuje potřebu komprimace. 3.3 Statistické vlastnosti koeficientů 3D DCT Nyní budou rozebrány některé vlastnosti 3D DCT koeficientů. Především jejich dynamický rozsah a pravděpodobnost výskytu. Dynamický rozsah může být rozdělen na dynamický rozsah stejnosměrných (DC) koeficientů G(u,v,w)=G(0,0,0) a střídavých (AC) koeficientů G(u,v,w)=G(u>0,v>0,w>0). 3.3.1 Dynamický rozsah stejnosměrných koeficientů Z vlastností transformace 3D DCT (9) mohou být odvozeny vztahy pro teoreticky dosažitelné dynamické rozsahy [2], [4]. Pro stejnosměrný dynamický rozsah DR DC platí: DR x + 1 DC = 1, (11) M 1 N 1 P 1 1 1 1 max M N P x= 0 y= 0 z= 0 xmin + pro M=N=P=8 a x max =255, x min =0 je 7 7 7 1 1 1 255 + 1 DR DC = = & 5793. 8 8 8 0 + 1 x= 0 y= 0 z= 0 Teoreticky vypočtená hodnota dynamického rozsahu pro blok 8x8x8 obrazových bodů a rozsah vstupních dat x=0 až 255 je DR DC =5793. To je však čistě teoretická hodnota, která by odpovídala sekvenci 8x8 obrazových bodů a 8 po sobě jdoucích snímků s maximálním jasem. Naopak minimální hodnota DR DC =0 by odpovídala bloku 8x8 obrazových bodů a 8 po sobě jdoucích úplně černých snímků, tato situace by se v praxi mohla vyskytovat poměrně často (úvodní/poslední obrazovka filmu, titulky atd.). K zakódování celého dynamického rozsahu by bylo potřeba v binární podobě 13 bitů, což je podstatně větší hodnota než pro dynamický rozsah vstupních dat DR X =255, ke kterému by v binární podobě postačilo 8 bitů. Toto by vedlo k navýšení potřebného počtu bitů na jeden vzorek signálu, což by nevedlo ke komprimaci nýbrž k expanzi. Pomocí programu vytvořeného v prostředí MATLAB byla provedena 3D DCT transformace všech testovaných videoklipů. Tím se získaly koeficienty 3D DCT reálných videosekvencí a mohly být porovnávány jejich vlastnosti. Nejdříve byl analyzován první tzv. stejnosměrný (DC) koeficient 3D DCT. Testoval se dynamický rozsah stejnosměrného koeficientu, dosažené výsledky jsou znázorněny na Obrázku 4 a), který zobrazuje maximální hodnoty DC koeficientů jednotlivých videosekvencí, Obrázek 4 b) zobrazuje naopak minimální hodnoty DC koeficientů. Numerické hodnoty jsou uvedeny v tabulce 1. Z uvedených obrázků lze pozorovat, že maximální hodnoty DC koeficientů leží v rozmezí od 3000 až téměř do teoretického maxima 5793, minimální hodnoty DC koeficientů zase leží od 200 do asi 2500. Z těchto výsledků je patrné, že hodnoty stejnosměrného DC koeficientu jsou rozprostřeny napříč svým teoretickým rozsahem. Nutno podotknout, že tento dynamický rozsah je značný, oproti dynamickému rozsahu vstupních vzorků 0 až 255. 7

5000 Amplituda DC koeficientů 4000 3000 2000 1000 akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi závod.avi 0 1 9 17 25 33 41 49 57 65 73 81 89 snímky a) Amplituda DC koeficientů 5000 4000 3000 2000 akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi závod.avi 1000 0 1 9 17 25 33 41 49 57 65 73 81 89 snímky b) Obrázek 4 Hodnoty DC koeficientů a) maximální, b) minimální. Tabulka 1 Maximální a minimální hodnoty DC koeficientů Skupina 8 snímků 1-8 9-16 17-24 25-32 33-40 41-48 49-56 57-64 65-72 73-80 81-88 89-96 akvarium.avi maximální DC 4922 4933 4922 4931 4925 4913 4916 4942 4959 4950 4953 4947 boulder.avi maximální DC 3368 3423 3273 3641 4168 4110 3974 3731 37 3843 3605 3766 CIAF.avi maximální DC 5194 5247 4247 4275 5005 4576 4851 4794 4819 4942 4989 4926 jamu.avi maximální DC 54 5503 5502 5506 5504 5507 5509 5512 5513 5504 5505 5506 vitr.avi maximální DC 5040 5109 5149 5291 5125 5141 5109 5111 5034 4948 4938 5054 zavod.avi maximální DC 5239 5466 5311 5161 55 56 5367 5016 5291 4969 5317 5172 Skupina 8 snímků 1-8 9-16 17-24 25-32 33-40 41-48 49-56 57-64 65-72 73-80 81-88 89-96 akvarium.avi minimální DC 318 320 317 320 319 321 318 318 317 317 317 317 boulder.avi minimální DC 295 263 282 393 418 322 326 268 194 212 224 220 CIAF.avi minimální DC 1965 1869 1960 1886 2141 1787 1938 2217 2121 1758 1798 2091 jamu.avi minimální DC 972 959 963 964 970 975 978 964 962 962 963 965 vitr.avi minimální DC 1432 1313 1387 1542 1608 1650 1488 1463 16 11 1328 1379 zavod.avi minimální DC 1134 1151 1245 1179 1176 1197 1486 1629 1615 1531 1487 1400 8

Bylo by účelné celý dynamický rozsah stejnosměrných koeficientů DR DC =5793 zakódovat menším počtem úrovní (například 256 úrovněmi), nabízí se několik možností. Je možné tento dynamický rozsah rovnoměrně rozdělit na 256 úrovní. Jedna úroveň by odpovídala původním 23 úrovním (255x23=5865), tímto by se výrazně snížil dynamický rozsah pouhým snížením počtu hladin. Další možností by bylo zakódovat plný dynamický rozsah DR DC =5793 opět pouze 256 úrovněmi (8 bity), ale mohlo by být využito nelineárního kvantování. Převodní charakteristiky právě popisovaného nelineárního kvantování můžeme jednoduše znázornit viz. Obrázek 5. Charakteristika vychází z charakteristiky typu A-law. Vytvořený program však pracuje s plným dynamickým rozsahem, výše uvedené možnosti kvantování by byly použitelné při limitaci hardwarem na omezený počet kvantizačních hladin a počet bitů. 256 Kvantizační rozsah 192 128 64 0 0 1000 2000 3000 4000 5000 Vstupní rozsah nelineární kvantování lineární kvantování Obrázek 5 Převodní charakteristika nelineárního a lineárního kvantování pro DC koeficienty. Tabulka 2 Zlomové body nelineárního kvantování + lineární kvantování (pro DC koeficienty) Kvantizační rozsah 0 1 32 64 96 128 160 192 224 255 5793 Nelineární kvantování 0 23 45 91 181 362 724 1448 2897 5793 Lineární kvantování 0 23 736 1472 2208 2944 3680 4416 5152 5865 3.3.2 Dynamický rozsah střídavých koeficientů Dynamický rozsah střídavých (AC) koeficientů závisí na složitosti jednotlivých snímků a rychlosti změn těchto jednotlivých snímků v čase. Složitostí snímku se myslí velikosti rozdílů mezi sousedními obrazovými body a velikosti souvislých ploch, respektive jemnost prokreslení detailů. Souvislé plochy mají malé rozdíly mezi obrazovými body a neobsahují takové množství detailů, jinými slovy jsou jednodušší a pro jejich zakódování bude stačit menší rozsah hodnot. Kdežto nesouvislé plochy s množstvím detailů a velkých rozdílů mezi sousedními obrazovými body budou vyžadovat k jejich zakódování velký dynamický rozsah hodnot. Rychlost změn jednotlivých snímků souvisí s množstvím pohybu v obraze. Zda se mění pouze jednotlivé objekty, celý obraz, nebo je v obraze nespočet pohybujících se objektů. Dále je nesmírně důležitý kontrast mezi jednotlivými obrazovými objekty, čím většího kontrastu může být dosaženo, tím větší dynamický rozsah bude vyžadován. Dynamický rozsah byl zjišťován experimentálně na výše uvedených šesti video sekvencích. Důležité jsou opět maximální a minimální hodnoty střídavých (AC) 9

koeficientů. Frekvenční koeficienty videosekvence se rozdělí na bloky 8x8x8 a vyhledají se maximální a minimální hodnoty těchto střídavých koeficientů. V každém bloku 8x8x8 je celkem 512 frekvenčních koeficientů, první z nich se vyřadí, je to takzvaný stejnosměrný (DC) koeficient, jež byl analyzován výše. Zbylo tedy 511 střídavých (AC) koeficientů, které byly načítány postupně. Nejdříve se načítaly koeficienty zleva doprava v řádcích, poté postupně shora dolů jednotlivé řádky a poté další snímek znovu od horního řádku tak, jak je naznačeno na Obrázku 6. Každému takto načtenému koeficientu bylo přiřazeno pořadové číslo (index) v pořadí, od nejnižšího (od 2) po nejvyšší (po 512), jak byl postupně načítán. Obrázek 6 Postupné načítání koeficientů. Při analýze se zaznamenávaly největší a nejmenší hodnoty koeficientů pro každou jejich pozici v pořadí, jak byly postupně načítány. Hodnoty těchto koeficientů byly jak kladné tak i záporné. Rozsah koeficientů se pohyboval v rozmezí od 2000 do +2000. V tomto intervalu ležely všechny střídavé (AC) koeficienty testovaných videosekvencí. Maximální a minimální hodnoty AC koeficientů pro každý blok 8x8x8 a jejich rozložení v průběhu videosekvence znázorňuje Obrázek 7, konkrétní numerické hodnoty jsou uvedeny v Tabulce 3. 2000 1500 Amplituda AC koeficientů 1000 500 0-500 -1000 akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi závod.avi -1500-2000 1 9 17 25 33 41 49 57 65 73 81 89 snímky Obrázek 7 Dynamický rozsah AC koeficientů 10

Tabulka 3 Dynamický rozsah AC koeficientů Skupina 8 snímků 1-8 9-16 17-24 25-32 33-40 41-48 49-56 57-64 65-72 73-80 81-88 89-96 akvarium.avi maximální AC 1446 1472 1384 1748 1760 1778 1646 15 1406 1485 1486 1488 boulder.avi maximální AC 981 817 959 1055 901 5 804 900 828 802 1261 1139 CIAF.avi maximální AC 805 827 1026 807 704 812 756 740 694 870 842 755 jamu.avi maximální AC 1752 1759 1778 1759 1804 1789 1762 1823 1776 1820 1834 1818 vitr.avi maximální AC 1160 9 1131 1273 1017 1024 1034 1149 1069 1228 1094 1117 zavod.avi maximální AC 1225 1171 1084 1229 1120 1396 1228 1507 1552 1296 1253 1289 Skupina 8 snímků 1-8 9-16 17-24 25-32 33-40 41-48 49-56 57-64 65-72 73-80 81-88 89-96 akvarium.avi minimální AC -1739-1854 -1606-1584 -1647-1663 -1633-1632 -1563-1660 -1631-1700 boulder.avi minimální AC -728-861 -806-1000 -859-832 -909-915 -1115-962 -921-877 CIAF.avi minimální AC -597-634 -657-576 -880-1047 -861-672 -815-918 -859-616 jamu.avi minimální AC -1547-1543 -1530-1527 -1519-1532 -1545-1546 -1549-1545 -1539-1536 vitr.avi minimální AC -1036-808 -1085-939 -1208-1140 -1104-959 -1120-1015 -1014-1208 zavod.avi minimální AC -1079-1165 -1303-1016 -1012-1130 -1272-1217 -1377-1310 -1542-1075 Těchto maximálních a minimálních hodnot však nabývalo jen několik málo koeficientů, většina střídavých koeficientů nabývala podstatně nižších hodnot. Nejvyšších hodnot nabývaly koeficienty nejdříve načítané (s nižším indexem) a jejich hodnota se s vzrůstajícím indexem prudce snižovala, dalšího nárůstu docházelo periodicky každých 64 indexů. Tento nárůst byl způsoben načítáním koeficientů dalšího snímku znovu od levého horního rohu. Avšak s dalším nárůstem indexu se tyto periodické vzrůsty amplitud postupně snižovaly. Jako ilustraci velikosti střídavých frekvenčních koeficientů na svém indexu uvádím obrázek 8. Velikost těchto periodických nárůstů amplitud byla ve velké míře přímo úměrná množství pohybu v obraze, což můžeme pozorovat na obrázku 8. Obrázek 8 a) odpovídá závislosti střídavých frekvenčních koeficientů na jejich indexu pro videosekvence akvarium.avi, která obsahuje jen nepatrný a plynulý pohyb. Velikost střídavých koeficientů prudce klesá a téměř nedochází k periodickým nárůstům jejich amplitud. Kdežto obrázek 8 b) náleží k video sekvenci vitr.avi, která obsahuje velké množství rychlého pohybu takřka v celé jeho ploše a po celou dobu trvání videosekvence. V tomto obrázku můžeme zřetelně pozorovat periody nárůstu amplitudy frekvenčních koeficientů, tj. každý 64. index. a) b) Obrázek 8 AC koeficienty videosekvencí: a) akvarium.avi, b) vitr.avi. 11

128 96 64 Kvantizační rozsah 32 0-2000 -1500-1000 -500 0 500 1000 1500 2000-32 -64-96 nelineární kvantování lineární kvantování -128 Vstupní rozsah Obrázek 9 Převodní charakteristika nelineárního a lineárního kvantování pro AC koeficienty. Tabulka 4 Zlomové body nelineárního kvantování + lineární kvantování (pro AC koeficienty) Kvantizační rozsah -128-112 -96-80 -64-48 -32-16 16 32 48 64 80 96 112 128 Nelineární kvantování -2000-1000 -500-250 -125-63 -31-16 16 31 63 125 250 500 1000 2000 Lineární kvantování -2048-1792 -1536-1280 -1024-768 -512-256 256 512 768 1024 1280 1536 1792 2048 Pokud by bylo nutné kódovat celý dynamický rozsah AC koeficientů pouze 256 úrovněmi, bylo by opět možné použít lineárního i nelineárního kvantování. Pro zakódování experimentálně zjištěného dynamického rozsahu AC koeficientů DR AC =4000 lineárním kvantováním, by jedna úroveň odpovídala 16 původním úrovním. Četnost AC koeficientů s malými hodnotami je mnohonásobně vyšší než četnost koeficientů s velkými hodnotami, proto by bylo výhodné kódovat malé hodnoty jemněji a velké hodnoty hruběji. K tomuto účelu výborně vyhovuje nelineární kvantování viz. Obrázek 9. Program však opět pracuje s plným dynamickým rozsahem. 12

4 Kvantování Stěžejním bodem při ztrátové kompresi videosignálů je kvantování. Kvantování má za úkol přiřadit hodnotu danému koeficientu podle jeho důležitosti. Důležitost jednotlivých koeficientů je posuzována subjektivně na základě vnímání lidského oka. Pohybující se obraz si nedokáže lidské oko za velmi omezenou dobu podrobně prohlédnout. Proto můžeme nějaké detaily obrazu zanedbat, těmto detailům zpravidla odpovídají koeficienty s vyšším indexem a právě tyto koeficienty jsou pomocí kvantování silně potlačovány nebo zcela odstraněny. Odstraněním některých koeficientů může být ušetřena podstatná část datového toku potřebného k zakódování videosignálu. Odstraněné koeficienty už není možné žádným způsobem obnovit, jsou ztraceny, odtud pochází název ztrátová komprese videosignálů. Při odstraňování jednotlivých koeficientů se musí postupovat velmi obezřetně, aby nedošlo k přílišnému zkreslení obrazu, které by již lidské oko nebylo schopno akceptovat a působilo by velmi rušivě. Kvantování je velice komplikovaná záležitost, existuje velké množství možností a zabývalo se jí mnoho odborných článků. 4.1 Kvantování 2D DCT koeficientů Kvantováním koeficientů vzniklých po dvourozměrné diskrétní kosinově transformaci a jejich optimalizací se zabývali odborníci ze skupiny JPEG a MPEG. Výsledkem jejich několikaleté práce bylo vytvoření standardů pro statické i pohyblivé obrazové signály. Podstatnou částí jejich práce bylo vytvoření kvantizačních tabulek, které jsou optimalizovány pro co nejlepší poměr mezi obrazovou kvalitou a kompresním poměrem. Jsou základem pro přepočet kvantizačních tabulek na jinou obrazovou kvalitu. Při podrobnějším pohledu na tyto kvantizační tabulky je patrné, že jejich hodnota vzrůstá od levého horního rohu směrem k vyšším koeficientům, tj. k pravému spodnímu rohu. To znamená, že koeficienty s vyšším indexem jsou potlačovány čím dál větší měrou. Při dalším pohledu na tyto kvantizační tabulky lze odhalit některé nepravidelnosti v jejich rostoucím trendu vzhledem ke koeficientům s vyšším indexem [12], [13]. Tyto nepravidelnosti jsou důsledkem optimalizace kvantizačních koeficientů na základě jejich vlivu na obrazovou kvalitu. 16 13 26 Q 29 40 58 51 61 60 57 51 ( u, v) = Q ( u, v ) JPEG _ Y 56 87 95 121 11 14 24 55 69 98 112 12 18 22 64 55 103 100 14 17 22 72 56 104 120 12 16 24 92 80 103 92 10 10 49 78 109 62 101 16 24 64 81 77 103 14 40 37 68 87 113 JPEG _ C a) b) 21 22 23 24 26 28 30 32 Q ( u, ) = Q ( u, ) MPEG 2 v 8 17 20 22 23 25 27 17 18 21 23 24 26 28 18 19 22 24 26 28 30 19 21 23 26 28 30 32 21 23 24 28 30 32 23 25 26 30 32 38 25 27 28 32 38 41 27 28 30 38 41 45 MPEG 4 v c) d) Obrázek 10 Kvantizační matice pro: a) jasovou složku standardu JPEG [14], b) chrominanční složky standardu JPEG, c) standard MPEG-2 [10], d) standard MPEG-4. = = 17 25 8 16 19 22 22 26 26 27 18 47 16 16 22 22 26 27 27 29 18 19 22 26 26 27 29 29 24 66 22 24 27 27 29 32 34 38 21 56 26 27 29 29 32 38 46 24 66 27 29 34 34 37 40 46 56 47 29 34 34 37 40 48 56 69 26 34 37 38 40 48 58 69 83 13

Kvantování může být matematicky popsáno rovnicí: G ( ) ( u, v) G Q u, v =, kde G ( u v) G( u v) Q( u v) Ν Q( u, v) Q,,,, G Q ( u, v) je matice kvantovaných koeficientů, ( u v) a Q ( u, v) je kvantizační matice. Ν je množina celých čísel. 4.2 Kvantování 3D DCT koeficientů,. (12) 4.2.1 Modifikace kvantování 2D DCT na koeficienty 3D DCT G, je matice koeficientů 2D DCT Kvantování koeficientů po trojrozměrné diskrétní kosinově transformaci vychází z obdoby kvantování dvourozměrných koeficientů. Bloky koeficientů 8x8x8 jsou opět rozděleny na 8 dvourozměrných snímků 8x8 a na tyto snímky jsou aplikovány dvourozměrné kvantizační matice. Dynamický rozsah frekvenčních koeficientů po 3D DCT je však podstatně větší a proto je nutné původní kvantizační matice přizpůsobit tomuto rozsahu [2]: Q ( ) ( u, v) prm + 50 Q u, v, w =, kde Q ( u v, w), Q( u, v) Ν 100,. (13) Q ( u, v, w) je kvantizační matice upravená pro rozsah 3D DCT koeficientů, ( u v) kvantizační matice pro koeficienty 2D DCT, některá z QJPEG _ Y ( u, v), QJPEG C ( u, v) Q MPEG 2 ( u, v) nebo Q MPEG 4 ( u, v). Q, je _, Protože se koeficienty 3D DCT mění ve třetím rozměru obdobným způsobem jako ve dvourozměrném prostoru, nebude asi úplně ideální kvantovat koeficienty 3D DCT pouze modifikací dvourozměrného kvantování. Nicméně i tato metoda je velmi dobře použitelná, protože koeficienty s vyšším indexem bývají poměrně malé a i tímto kvantováním jsou silně potlačeny. 4.2.2 Hyperboloidické kvantování Lee, Chan a Adjeroh [4] navrhli metodu kvantování koeficientů trojrozměrné diskrétní kosinové transformace. Jejich metoda vychází z předpokladu, že největší koeficienty 3D DCT (koeficienty s největší energií) leží podél hlavních os krychle koeficientů 8x8x8. Hlavní osy krychle koeficientů jsou dány souřadnicemi G(u,0,0), G(0,v,0), G(0,0,w). Velikost koeficientů exponenciálně klesá se vzdáleností od hlavních os krychle. Koeficienty s větší energií je účelné oddělit od koeficientů s nižší energií. A jednotlivé druhy koeficientů zpracovávat odděleně tak, aby mohlo být dosaženo dobrého poměru mezi obrazovou kvalitou a ztrátou některých koeficientů. Rozdělit koeficienty podle obsažené energie je možné následujícím způsobem. Krychle se rozřízne hyperboloidem na dvě části. Část obsahující osy a jejich nejbližší okolí se bude nazývat vnitřní region, doplněk krychle se bude nazývat vnější region. Celá tato situace je znázorněna na Obrázku 11. Z obrázku je jasně vidět rozdělení na vnitřní region s koeficienty s velkou energií a vnější region, kde leží koeficienty s menší energií. 14

Obrázek 11 Rozdělení krychle na vnitřní a vnější region. Je nutné rozhodnout, jaké množství koeficientů z celkového počtu 512 bude ležet ve vnitřním respektive ve vnějším regionu. Jinými slovy kolik a jaké koeficienty obsahují větší energii a které obsahují jenom malou energii. Zavedením parametru C, který určuje, kolik koeficientů bude ležet ve vnitřním regionu a kolik v regionu vnějším. Tato závislost počtu vnitřních koeficientů na velikosti parametru C může být popsána matematickým vztahem: u v w C, kde u, v, w 1; 8, (14) a u, v, w jsou souřadnice koeficientů krychle 8x8x8. Závislost počtu vnitřních nebo vnějších koeficientů na velikosti parametru C lze jednoduše znázornit Obrázkem 12. Z grafu vidíme průběh počtu vnitřních i vnějších koeficientů na koeficientu C. S rostoucím C nelineárně klesá počet vnějších koeficientů a inverzně k němu roste počet vnitřních koeficientů. 600 Počet vnitřních (vnějších) koeficientů 500 400 300 200 100 vnitřní koeficienty vnější koeficienty 0 0 100 200 300 400 500 600 koeficient C Obrázek 12 Závislost počtu vnitřních (vnějších) koeficientů na koeficientu C. Tabulka 5 Závislost počtu vnitřních a vnějších koeficientů na koeficientu C. Koeficient C 0 32 64 96 128 160 192 224 256 288 320 2 384 416 448 512 Vnitřní koeficienty 0 168 280 343 392 419 446 465 480 489 495 502 505 508 511 512 Vnější koeficienty 512 344 232 169 120 93 66 47 32 23 17 10 7 4 1 0 15

V závislosti zda daný koeficient leží ve vnitřním nebo vnějším regionu, jsou příslušné koeficienty kvantovány. Kvantování proto závisí na souřadnicích daného koeficientu. Pro vlastnosti kvantování je definováno několik parametrů, na základě kterých se bude generovat kvantizační tabulka. Prvním již zmiňovaným parametrem je parametr C, který určuje počet vnitřních a vnějších koeficientů. Dalšími parametry jsou A inn, A out, což jsou vlastně amplitudy kvantizačních koeficientů v příslušných regionech. A nakonec parametry β inn a β out, které reprezentují exponenty pro vytváření kvantizačních tabulek s exponenciální regresí. Indexy inn se vždy vztahují k vnitřním koeficientům a indexy out ke koeficientům vnějším. Pomocí těchto parametrů lze zapsat vztah pro vytvoření kvantizační matice Q u, v, w o rozměrech 8x8x8, tedy pro kvantování 3D DCT koeficientů [4]: ( ) Ν Q ( u, v, w)= A A inn out e 1 β INN ( u+ 1)( v+ 1)( w+ 1) e β INN + 1; pro ( u v w) C βout ( u+ 1)( v+ 1)( w+ 1) ( 1 e ); pro ( u v w) > C Konkrétní hodnoty jednotlivých koeficientů jsou navrhnuty experimentálně na základě provedených simulací. 4.2.3 Hodnocení experimentálních výsledků Pro objektivní hodnocení výsledků simulací je zavedeno několik parametrů. Pro hodnocení rozdílu mezi originálními a dekódovanými video sekvencemi lze použít normalizovanou kvadratickou chybu NMSE (normalized mean square error) [4], aplikovanou na jasovou složku obrazu: M NMSE 1 1 2 = 2 255 M N P, (16) m= 0 n= 0 p= 0 kde G m,n,p je originální hodnota a G m,n,p je dekódovaná hodnota. 1 N 1 P 1 ( G m, n, p G m, n, p ) Normalizovaná kvadratická chyba je rozdíl mezi vzorky původního videosignálu a jeho dekódovanou variantou podělená počtem vzorků a maximální amplitudou jednotlivých vzorků. Dále je možné rozdíl mezi původním a dekódovaným videosignálem vyjádřit normalizovanou efektivní chybou NRMSE (normalized root mean square error): NRMSE M 1 N 1 P 1 ( Gm, n, p G m, n, p ) m= 0 n= 0 p= 0 = 1 M N 1 P 1 ( Gm, n, p ) m= 0 n= 0 p= 0 2 2 Celkové hodnoty NMSE a NRMSE vzniknou prostým aritmetickým průměrem hodnot vypočtených pro jednotlivé barevné složky obrazu. K porovnání originálních a dekódovaných hodnot lze použít vyjádření poměru signálu k šumu v decibelech PSNR (peak signal to noise ratio) [4]: 1 PSNR = 10log10 NMSE... (15) (17) (18) 16

Pro porovnání kompresních vlastností kvantování lze použít také poměr mezi celkovým počtem frekvenčních koeficientů 3D DCT (512) a počtem nenulových frekvenčních koeficientů C.R. (compression ratio): C R all.. =, (19) N all N N nul kde N all je počet všech frekvenčních koeficientů a N nul je počet nulových koeficientů. Kompresní poměr C.R. (compression ratio) není poměr mezi původním nekomprimovaným videoklipem a jeho zakódovanou komprimovanou formou, ale je to poměr mezi celkovým počtem frekvenčních koeficientů 3D DCT a průměrným počtem nenulových koeficientů 3D DCT. Tato forma vyjádření kompresních vlastností byla zvolena, protože kodér nebyl doplněn entropickým kódováním. 4.2.4 Experimentální určení kvantizačních parametrů Dříne než bude možné vypočíst kvantizační tabulku, je nutné analyzovat vliv jednotlivých koeficientů na kvalitativní parametry. Nejdůležitější bude vliv koeficientů na kompresní poměr C.R. a odstup signálu od šumu PSNR a subjektivní hodnocení kvality obrazu. Ke srovnání vlivu Hyperboloidického kvantování s kvantováním dvourozměrných 2D DCT koeficientů, musí mít stejný rozsah kvantizačních koeficientů, proto jsou zvoleny amplitudy kvantizačních koeficientů A inn =255 i A out =255. Nyní se stanoví použitelný rozsah pro koeficient C. Aby se co nejlépe rozeznal vliv počtu vnitřních a vnějších koeficientů na obrazovou kvalitu, volí se takové β inn a β out, aby vnitřní kvantizační koeficienty byly co nejmenší Q inn (u,v,w)=1 a vnější kvantizační koeficienty byly co největší Q out (u,v,w)=255. Toho je dosaženo použitím β inn =0,000001 a β out =10. Pro tyto hodnoty koeficientů se bude měnit pouze koeficient C a bude se sledovat průběh kompresního poměru a odstupu PSNR viz. Obrázek 13. Numerické hodnoty jednotlivých bodů jsou umístěny v tabulce 6. kompresní poměr C.R. 140,0 120,0 100,0 80,0 60,0 40,0 akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi zavod.avi PSNR [db] 45,0 40,0,0 30,0 25,0 20,0 20,0 0,0 0 4 8 12 16 20 koeficient C 15,0 0 4 8 12 16 20 koeficient C a) b) Obrázek 13 Závislost: a) kompresního poměru, b) PSNR na koeficientu C. 17

Tabulka 6 Závislost C.R. a PSNR na koeficientu C. koeficient C 2 4 6 8 10 12 14 16 18 20 akvarium.avi kompresní poměr C.R. 102,4 42,7 25,6 18,3 15,5 11,9 11,1 9,3 8,5 8,0 PSNR [db] 27,2 28,3 29,3 30,2 30,9 32,0 32,2 33,3 33,8 34,4 boulder.avi kompresní poměr C.R. 128,0 39,4 21,3 14,2 11,6 8,8 8,0 6,4 5,8 5,3 PSNR [db] 24,0 24,8 25,5 26,1 26,5 27,3 27,4 28,2 28,6 29,0 CIAF.avi kompresní poměr C.R. 128,0 46,5 25,6 18,3 15,5 12,5 11,6 9,8 9,1 8,5 PSNR [db] 32,7,3 37,3 39,5 40,1 40,9 41,4 42,3 42,6 42,9 jamu.avi kompresní poměr C.R. 102,4 39,4 23,3 16,0 13,1 10,4 9,5 7,8 7,1 6,6 PSNR [db] 25,8 26,8 27,9 29,0 29,6 30,5 30,9 31,9 32,3 32,9 vitr.avi kompresní poměr C.R. 56,9 32,0 19,0 13,5 11,1 8,7 7,9 6,4 5,8 5,3 PSNR [db] 17,9 18,3 18,6 19,0 19,3 19,8 19,9 20,4 20,7 20,9 zavod.avi kompresní poměr C.R. 102,4 39,4 21,3 14,6 11,9 9,1 8,4 6,7 6,1 5,6 PSNR [db] 24,0 25,0 25,9 26,6 27,1 27,9 28,1 28,8 29,2 29,6 Na obrázku 13 je vidět, že pro malé hodnoty koeficientu C (2 až 4) je velká hodnota kompresního poměru C.R., ale také nejmenší odstup signálu od šumu. Pro vyšší hodnoty koeficientu C (8 až 14) hodnota kompresního poměru prudce poklesla a od C=16 se s dalším zvyšováním C nijak výrazně nemění. Odstup signálu od šumu PSNR úměrně roste se zvyšujícím se koeficientem C a zvětšujícím se počtem frekvenčních koeficientů ležících ve vnitřním regionu. Pro posouzení nejvhodnější velikosti koeficientu C je výhodné pozorovat dekódovaný videosignál a subjektivně určit vhodnou úroveň kvality obrazu. Kvalita obrazu a kompresní poměr jsou navzájem protichůdné vlastnosti. Při velkém kompresním poměru je kvalita obrazu nevalná. Při vynikající obrazové kvalitě zase není příliš velká hodnota kompresního poměru. Kompromisem může být hodnota koeficientu C=10 až 12, při kterém se kompresní poměr pohybuje okolo hodnoty C.R.=10 a obrazová kvalita je uspokojivá. Dalším parametrem pro odvození kvantizační matice je koeficient β inn pro vnitřní region. Pro stanovení vlivu tohoto parametru na kvantizační tabulku a obrazovou kvalitu se nastaví ostatní parametry pro odvození kvantizační matice na následující hodnoty: A inn =255, A out =255, C=10, β out =10. Koeficient β inn se krokuje od 0,01 do 0,1 a vyhodnocují se hodnoty parametrů kompresního poměru C.R. a PSNR viz. Obrázek 14 a Tabulka 7. kompresní poměr C.R. 180,0 150,0 120,0 90,0 60,0 akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi zavod.avi PSNR [db] 40,0,0 30,0 25,0 30,0 20,0 0,0 0,00 0,02 0,04 0,06 0,08 0,10 koeficient β INN 15,0 0,00 0,02 0,04 0,06 0,08 0,10 koeficient β INN a) b) Obrázek 14 Závislost: a) kompresního poměru, b) PSNR na koeficientu β inn. 18

Tabulka 7 Závislost C.R. a PSNR na koeficientu β INN. koeficient β INN 0,01 0,02 0,03 0,04 0,05 0,06 0,07 0,08 0,09 0,10 akvarium.avi kompresní poměr C.R. 34,1 46,5 56,9 73,1 73,1 85,3 85,3 102,4 102,4 102,4 PSNR [db] 30,8 30,6 30,4 30,2 30,0 29,8 29,7 29,5 29,4 29,2 boulder.avi kompresní poměr C.R. 20,5 28,4 36,6 42,7 46,5 56,9 56,9 64,0 73,1 73,1 PSNR [db] 26,4 26,2 26,1 25,9 25,8 25,6 25,5 25,4 25,3 25,2 CIAF.avi kompresní poměr C.R. 51,2 73,1 85,3 102,4 128,0 128,0 128,0 128,0 170,7 170,7 PSNR [db] 39,4 38,8 38,3 37,8 37,4 37,0 36,7 36,4 36,2 36,0 jamu.avi kompresní poměr C.R. 32,0 42,7 51,2 56,9 64,0 64,0 73,1 73,1 85,3 85,3 PSNR [db] 29,5 29,4 29,2 29,0 28,9 28,7 28,6 28,4 28,3 28,2 vitr.avi kompresní poměr C.R. 17,1 20,5 23,3 25,6 28,4 30,1 32,0 34,1 34,1 36,6 PSNR [db] 19,3 19,2 19,2 19,1 19,1 19,0 19,0 18,9 18,9 18,8 zavod.avi kompresní poměr C.R. 24,4 32,0 39,4 46,5 51,2 56,9 56,9 64,0 64,0 73,1 PSNR [db] 27,0 26,9 26,7 26,6 26,4 26,3 26,2 26,1 25,9 25,8 Z Obrázku 14 lze opět pozorovat závislost kompresního poměru C.R. a odstupu signálu a šumu PSNR na proměnné β inn. S rostoucím β inn (s progresivnějším kvantováním) roste i kompresní poměr C.R. a nepřímo úměrně klesá odstup signálu od šumu PSNR. Ke stanovení optimální hodnoty koeficientu se musí přihlédnout také k subjektivnímu hodnocení kvality obrazu. Velikost β inn má rozhodující vliv na tlumení koeficientů ve vnitřním regionu a tím tedy na nejdůležitější frekvenční koeficienty. Těmto koeficientům přísluší podstatné rysy obrazu, jejichž zanedbání by působilo rušivě nebo by mohlo dojít k totální degradaci videosignálu. Proto se při volbě koeficientu β inn musí postupovat velmi obezřetně. V závislosti na velikosti komprimace se volí hodnota β inn z intervalu 0,01 až 0,1. Obdobným způsobem jako β inn se stanoví použitelný rozsah pro β out. Koeficient β out má vliv na frekvenční koeficienty ve vnějším regionu. Koeficienty ve vnějším regionu odpovídají jemnějším detailům než koeficienty ve vnitřním regionu. Velké množství koeficientů ve vnějším regionu má velmi malou nebo nulovou hodnotu, proto se nesmí kvantovat tak velkou hodnotou jako koeficienty ve vnitřním regionu. Proto se také používají dva odlišné koeficienty pro vnitřní a vnější region. Pro subjektivně hodnocenou kvalitu obrazu lze použít rozsah koeficientu β out z intervalu 0,001 až 0,01. Jeho velikost se opět odvíjí od požadované velikosti komprese. Závislost C.R. a PSNR na β out je znázorněna na Obrázku 15, numerické hodnoty jsou uvedeny v tabulce 8. 19

16,0 50,0 14,0 45,0 12,0 kompresní poměr C.R. 10,0 8,0 6,0 4,0 2,0 0,0 akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi zavod.avi 0,000 0,002 0,004 0,006 0,008 0,010 koeficient β OUT PSNR [db] 40,0,0 30,0 25,0 20,0 0,000 0,002 0,004 0,006 0,008 0,010 koeficient β OUT a) b) Obrázek 15 Závislost kompresního poměru a PSNR na koeficientu β out. Tabulka 8 Závislost C.R. a PSNR na koeficientu β OUT. akvarium.avi boulder.avi CIAF.avi jamu.avi vitr.avi zavod.avi koeficient bout 0,001 0,002 0,003 0,004 0,005 0,006 0,007 0,008 0,009 0,010 kompresní poměr C.R. 7,9 10,0 11,1 11,9 12,5 12,8 13,1 13,5 13,5 13,8 PSNR [db] 41,1 38,9 37,8 37,1 36,5 36,0,7,4,1 34,8 kompresní poměr C.R. 3,7 5,1 6,1 7,0 7,5 8,1 8,5 8,8 9,1 9,3 PSNR [db] 34,6 32,8 31,8 31,1 30,6 30,2 29,9 29,6 29,4 29,2 kompresní poměr C.R. 11,4 13,5 14,2 14,6 15,1 15,1 15,1 15,1 15,1 15,1 PSNR [db] 46,0 44,8 44,2 43,7 43,3 43,1 42,8 42,6 42,4 42,3 kompresní poměr C.R. 6,8 8,8 9,7 10,4 10,9 11,1 11,4 11,6 11,6 11,9 PSNR [db] 40,0 38,4 37,5 36,7 36,2,7,4,0 34,8 34,5 kompresní poměr C.R. 2,6 3,4 4,0 4,5 4,9 5,3 5,6 6,0 6,2 6,5 PSNR [db] 31,2 28,3 26,8 25,9 25,2 24,6 24,2 23,8 23,5 23,2 kompresní poměr C.R. 4,6 6,2 7,2 8,0 8,5 9,0 9,3 9,5 9,8 10,0 PSNR [db],8 34,0 33,0 32,3 31,8 31,4 31,1 30,8 30,6 30,4 Nyní jsou definovány použitelné rozsahy koeficientů A inn, A out, C, β inn a β out potřebných k odvození kvantizační matice Q(u,v,w). Můžou se tedy zvolit vhodné konkrétní hodnoty těchto koeficientů a vypočíst se hodnoty trojrozměrné kvantizační matice. Amplitudy těchto koeficientů se volí A inn =A out =254, aby mohly být srovnávány s dvourozměrnými kvantizačními tabulkami. Hodnota koeficientu C=12 rozdělí krychli 8x8x8 na vnitřní region o 62 koeficientech a vnější region o 450 koeficientech viz. Obrázek 12. Koeficient β inn se volí dle rozsahu (viz. Obrázek 14) pro dobrou vizuální kvalitu β inn =0,03. A poslední potřebný koeficient lze vybrat z rozsahu (viz. Obrázek 15) β out =0,006 pro kvantizaci koeficientů z vnějšího regionu. Konečně jsou určeny všechny potřebné parametry k vytvoření trojrozměrné kvantizační matice dle vztahu (15). Celá trojrozměrná kvantizační matice velikosti 8x8x8 je poměrně rozlehlá, její konkrétní hodnoty frekvenčních koeficientů jsou uvedeny v příloze číslo 2. 20

5 Načítání koeficientů Načítání koeficientů má za úkol připravit vzorky signálu tak, aby mohly být co nejefektivněji zakódovány některou metodou bezeztrátové komprese. Metod bezeztrátové komprimace je bezpočet a popsat jen základní typy bezeztrátové komprimace by dalo na samostatnou bakalářskou práci. Cílem této práce již není bezeztrátová komprimace a proto zde nebude rozebírána. Zmíním jen několik možných a dobře známých typů bezeztrátové komprimace. Huffmanovo kódování využívá ke komprimaci proměnnou délku značky a statistické vlastnosti kódovaných vzorků. Vzorkům s největší pravděpodobností výskytu přiřadí nejkratší značku, vzorkům s nižšími pravděpodobnostmi výskytů přiřazuje značky s větší bitovou délkou. Pro kódování Huffmanovým kódem musí být předem známy vlastnosti kódovaných vzorků. Proto se nejdříve musí vytvořit tzv. Huffmanův slovník, nebo využít již předem definovaný slovník. Vytváření Huffmanova slovníku je velice časově náročné, proto se pro zrychlení výpočtu používají předdefinované slovníky. Adaptivní kódování používá dynamicky vytvářené slovníky. Knihovna značek se vytváří postupně. Data jsou srovnávána s daty uloženými ve slovníku, pokud dojde ke shodě použije se pouze adresa slovníku, případně se přidají další data. Takové vytváření slovníku je velice výhodné, protože není nutné předem znát vlastnosti kódovaných dat. Takovýchto algoritmů existuje opět celá řada (např. Lempel-Ziv-Welch) a používají se v mnoha datových i multimediálních formátech (ZIP, GIF, TIFF, ARJ...). Pro takové kódování je výhodné, aby se často opakovaly vzorky se stejnou hodnotou. Proto je také výhodné uspořádat koeficienty tak, aby koeficienty se stejnou hodnotou ležely vedle sebe. Takovým uspořádáním se dosáhne optimálního využití komprimačního algoritmu. Pro dosažení co nejlepšího kompresního poměru se často kombinuje několik komprimačních metod, proto je vhodné uspořádat frekvenční koeficienty (vzorky) co nejjednodušeji. V případě frekvenčních koeficientů vzniklých po trojrozměrné diskrétní kosinové transformaci bude nejvhodnější přenášet stejnosměrné DC koeficienty a střídavé AC koeficienty odděleně. Střídavé koeficienty je vhodné načítat tak, aby se odstranily periodicity a průběh hodnot frekvenčních koeficientů měl monotónní charakter, popřípadě přenášet zvlášť kladné i záporné koeficienty. 5.1 Načítání CIK-CAK po snímcích Načítání koeficientů metodou CIK-CAK využívá standard JPEG. Načítací metoda CIK-CAK postupuje od levého horního rohu k pravému dolnímu rohu, což respektuje sestupný trend koeficientů pro dvourozměrnou diskrétní kosinovou transformaci (2D DCT). Nejprve se načte stejnosměrný DC koeficient a poté se načítají střídavé AC koeficienty tak, jak ukazuje Obrázek 16. Pro koeficienty trojrozměrné diskrétní kosinové transformace (3D DCT) se metoda aplikuje na každý snímek samostatně a řadí se postupně za sebou. Obrázek 16 Načítání CIK-CAK 21

5.2 Načítání CIK-CAK v bloku 8x8x8 Modifikací metody CIK-CAK po snímcích na blok koeficientů 8x8x8 se může docílit téměř monotónního sestupného trendu. Metoda se liší od metody CIK-CAK po snímcích tím, že nejprve prochází mezi snímky ve směru červených šipek a teprve poté v rámci CIK-CAK postupuje z levého horního rohu k pravému dolnímu ve směru zelených šipek, viz. Obrázek 17. Obrázek 17 Načítání CIK-CAK v bloku 5.3 Načítání dle váhování souřadnic koeficientů Načítání dle váhování souřadnic nejprve vytvoří váhy pro jednotlivé koeficienty. Každý koeficient je možné identifikovat jeho souřadnicemi u, v, w. Počátek souřadné soustavy leží v levém horním rohu. Jednotlivé souřadnice nabývají hodnot 1 až 8. Váha koeficientu se vytvoří vynásobením všech tří souřadnic koeficientu ( váha = u v w ). Tímto způsobem se váhují všechny koeficienty, nejnižší váhu ( váha = 1 1 1 = 1) má DC koeficient v levém horním rohu, nejvyšší váhu má koeficient v pravém dolním rohu vzadu ( váha = 8 8 8 = 512 ). Koeficienty s nízkými váhami leží podél souřadných os, kde se koncentrují koeficienty s vyšší energií. Koeficienty jsou načítány od nejnižší váhy po váhu nejvyšší, koeficienty se stejnou váhou se načítají v pořadí dle souřadnic u, v, w, viz. Obrázek 18. Obrázek 18 Načítání dle váhování souřadnic 22

a) b) c) d) Obrázek 19 Načítání koeficientů videosekvence zavod.avi : a) postupné, b) CIK-CAK po snímcích, c) CIK-CAK v bloku 8x8x8, d) dle váhování koeficientů. Obrázek 19 znázorňuje rozdíly při načítání frekvenčních koeficientů. Na Obrázku 19 a) je zobrazeno postupné načítání. Při tomto typu načítání je vidět několik sestupných tendencí, v rámci každého řádku po 8 vzorcích, v rámci jednoho snímku po 64 vzorcích a celkový klesající trend na odlišných snímcích. Na Obrázku 19 b) je zobrazeno načítání CIK-CAK po snímcích. Tento způsob eliminuje klesající tendence v jednotlivých řádcích, ale zůstává klesající tendence v rámci jednoho snímku. V celém bloku je celkem 8 snímků a proto je na obrázku vidět 8 dílčích klesajících tendencí, které mají v rámci bloku rovněž klesající tendenci. Na Obrázku 19 c) je modifikace načítání metodou CIK-CAK. Je zde vidět celkový klesající trend, ale v průběhu tohoto trendu dochází k častému výskytu osamocených špiček. Výskyt těchto špiček by byl na závadu při určitém typu entropického kódování. Proto je nejvhodnější poslední metoda zobrazená na Obrázku 19 d). Na tomto obrázku je vidět celkový postupně klesající trend bez výrazných špiček a dílčích periodicit. V určitých případech se může jevit jako nejvhodnější i metoda načítání CIK-CAK v bloku 8x8x8, vždy závisí na vlastnostech konkrétního video signálu. Na Obrázku 19 jsou načítány koeficienty ihned po provedení 3D DCT, tzn. že jen nepatrné množství koeficientů je nulových. To je výhodné pro porovnávání vlivu načítání koeficientů v závislosti na jejich velikosti (klesající trend). 23

Na Obrázku 20 jsou načítány koeficienty po provedení kvantizace s dosaženým kompresním poměrem C.R.=3, tzn. že asi třetina frekvenčních koeficientů je nulových. To je výhodné pro porovnávání délky běhu nulových frekvenčních koeficientů s vyšším indexem. Z obrázku lze pozorovat, že nejvhodnější metoda načítání je opět dle váhování koeficientů, viz. Obrázek 20 d). Obsahuje sice určitý zákmit v klesajícím trendu, ale rovněž obsahuje na konci nejdelší běh nulových koeficientů, což je výhodné pro entropické kódování. Načítání CIK-CAK v bloku 8x8x8 sice neobsahuje žádný výrazný zákmit v klesajícím trendu, ale nemá na konci tak dlouhý běh nulových koeficientů. Nejvhodnější metoda načítání koeficientů se může lišit pro různé video sekvence, avšak obecně nejvhodnější metoda by měla být ve většině případů dle váhování koeficientů. a) b) c) d) Obrázek 20 Načítání kvantovaných koeficientů videosekvence vitr.avi (C.R.=3) : a) postupné, b) CIK-CAK po snímcích, c) CIK-CAK v bloku 8x8x8, d) dle váhování koeficientů. 24

6 Popis programu Pro účely ověření platnosti uváděných vztahů a pro nejrůznější transformace, kvantování, kódování a dekódování byla vytvořena v prostředí Matlab jednoduchá aplikace. Tato aplikace znázorňuje postup a činnost kodéru a dekodéru trojrozměrné diskrétní kosinové transformace. Blokové schéma kodéru a dekodéru je znázorněno na Obrázku 21. Do kodéru vstupuje nekomprimovaný videosignál. Tento signál se převede do barevného prostoru YC b C r, volitelně může dojít k podvzorkování barevných složek signálu. Nastupuje samotná trojrozměrná diskrétní kosinová transformace a vygenerování jejích frekvenčních koeficientů. Frekvenční koeficienty jsou v dalším bloku kvantovány dle požadovaných parametrů, případně může být provedeno i prahování koeficientů. Následně jsou frekvenční koeficienty načteny ve vhodném pořadí a zakódovány entropickým (bezeztrátovým) kódováním. Výsledkem jsou data s podstatně nižším datovým tokem, než jaký měl vstupní videosignál. Dekódování se provádí stejným způsobem, ale s opačným pořadím jednotlivých bloků kodéru. Výstupem dekodéru by měl být videosignál subjektivně co nejvěrnější původnímu vstupnímu videosignálu. Vstupní videosignál Transformace barev (podvzorkování) Trojrozměrná Diskrétní Kosinová Transformace Kvantování (prahování) Entropické kódování Zakódovaná data Entropické dekódování Odkvantování Inverzní Trojrozměrná Diskrétní Kosinová Transformace Transformace barev Výstupní videosignál Obrázek 21 Blokové schéma kodéru a dekodéru 3D DCT Vytvořený program respektuje jednotlivé bloky kodéru i dekodéru. Úvodní menu programu je zobrazeno na Obrázku 22. Pro zakódování videosignálu se musí postupně použít všechny tlačítka od nejvyššího po nejnižší. První tlačítko Načíst soubor vyvolá dialogové okno pro výběr souboru. Soubor musí být nekomprimovaný s příponou *.avi, barevný videoklip musí obsahovat základní složky barevného prostoru RGB. Tlačítko Úprava barev převede vzorky barevného prostoru RGB do barevného prostoru YC b C r, všechny vzorky jsou zakódovány 8bitovými slovy. Popřípadě může provést podvzorkování barevných složek (v závislosti na uživatelské volbě). Podvzorkování je možné provést v horizontálním směru nebo v horizontálním i vertikálním směru. 25

Obrázek 22 Úvodní menu programu Tlačítko DCT vyvolá dialogové okno s možností zvolit typ diskrétní kosinové transformace a to buď trojrozměrnou (3D DCT), nebo dvourozměrnou (2D DCT). Následně se převedou vzorky barevného prostoru YC b C r na frekvenční koeficienty DCT. Algoritmus trojrozměrné diskrétní transformace je mimořádně výpočetně náročný. Obsahuje několik vnořených cyklů. Prostředí Matlab není optimalizované pro provádění velkého množství cyklů k procházení rozlehlých matic. Proto transformace videoklipu o rozměrech 320x240 a celkem 96 snímcích trvala na počítači s procesorem AMD Sempron 2600+ s operační pamětí 512MB více než dvě hodiny. Takové řešení by bylo z důvodu časové náročnosti nevyhovující. Proto byly hledány způsoby jakým by bylo možné urychlit výpočet trojrozměrné diskrétní transformace (3D DCT). Existuje několik modifikovaných metod pro výpočet 3D DCT, které jsou optimalizovány pro číslicové zpracování. Nicméně převážnou část doby zpracování zabíraly právě cykly pro postupné procházení videoklipem. Nakonec po podrobném prostudování helpu programu Matlab byl odhalen odlišný způsob zápisu, který umožní procházení rozlehlých matic bez použití cyklů. Tento zápis je specifický pouze pro prostředí Matlab a je na něj optimalizován. Příklad zdrojového kódu je uveden v příloze 4, kde je umístěn algoritmus optimalizované 3D DCT s procházením vstupních dat pomocí offsetování. Použitím tohoto zápisu se celková doba potřebná pro výpočet 3D DCT a výše popsaného videoklipu snížila na dobu nižší než 10 minut, což už je poměrně akceptovatelná hodnota. Zmáčknutím tlačítka Kvantizace se zobrazí menu s volbami pro provedení kvantizace zobrazené na Obrázku 23. Menu kvantizace umožňuje zvolit typ kvantování buď 2D kvantování nebo 3D kvantování. 2D kvantování provádí kvantizaci pomocí dvourozměrných kvantizačních matic modifikovaných pro rozsah 3D DCT koeficientů. 2D kvantování umožňuje zvolit posuvníkem kvalitu od 1 (nejnižší kvalita) do 100 (nejvyšší kvalita) a zaškrtnutí volby prahování, která odstraní hodnoty koeficientů s absolutní hodnotou menší než 3. 3D kvantování umožňuje volbu všech tří parametrů C, B inn i B out. Parametr C má vliv na velikost vnitřního/vnějšího prostoru, koeficient B inn určuje míru kvantizace ve vnitřním prostoru a B out ve vnějším prostoru. Po zadání požadovaných parametrů kvantizace bude provedeno vlastní kvantování. Entropické kódování již program neprovádí, protože není pro porovnání parametrů kvantizace rozhodující a vytvoření vlastního slovníku a následné kódování a dekódování je zbytečně časově náročné. 26

Obrázek 23 Menu kvantizace Dekódování opět neobsahuje entropické dekódování, ale pokračuje přímo odkvantováním. Klepnutím na tlačítko Dekvantizace se provede odkvantování s automaticky nastavenými parametry, jaké byly použity při kvantování. Tlačítko idct zahájí výpočet inverzní diskrétní kosinové transformace. Tlačítko Obnovení barev převede vzorky videosignálu zpět z barevného prostoru YC b C r do barevného prostoru RGB. Po tomto převodu se porovnají vstupní data RGB s dekódovanými daty RGB. Kdykoli v průběhu kódování nebo dekódování je možné se vrátit k některému z předcházejících bloků a změnit jeho parametry. A od tohoto bloku opět pokračovat v průběhu kódování či dekódování. Tento program slouží jen jako názorná ukázka kodéru a dekodéru trojrozměrné diskrétní transformace a jeho jednotlivých bloků. Stěžejní význam mají funkce realizující jednotlivé transformace a dílčí výpočty. Těchto funkcí bylo využito při analýze frekvenčních koeficientů trojrozměrné diskrétní transformace a při hodnocení vlivu kvantovacích parametrů na obrazovou kvalitu. 6.1 Analýza vlastností testovaných videosekvencí Pro analýzu vlastností testovaných videosekvencí slouží panel umístěný v pravé části vytvořeného programu. Tento panel obsahuje několik dílčích modulů, které názorně popisují důležité vlastnosti při zpracování videosekvencí. Jednotlivé moduly se spouští příslušnými tlačítky, možnosti a volby dílčích modulů jsou závislé na stupni zpracování videosekvence panely kodéru a dekodéru. Je doporučeno nejdříve provést všechny kroky kódování i dekódování a teprve poté spouštět moduly pro analýzu. Samozřejmě je možné se opět vrátit ke kterémukoliv bloku kodéru nebo dekodéru a měnit jejich vlastnosti a znovu spustit potřebný modul, není tedy naprosto nutné provádět jednotlivé zpracování vždy od počátku. Pokud je potřeba testovat jinou video sekvenci, tak je naopak nezbytně nutné provést všechny dílčí kroky kódování i dekódování postupně od počátku. Dále jsou popsány jednotlivé moduly samostatně. 27

6.1.1 Histogram Histogram je grafické znázornění četnosti výskytu vzorků o určité hodnotě. Z takového grafického znázornění lze rychle a přehledně vidět, jaké vzorky s jakou hodnotou se vyskytují nejčastěji. Na x-ové ose lze rovněž pozorovat minimální a maximální hodnoty vzorků dané videosekvence. Modul histogram umožňuje zobrazit rozložení hodnot vzorků pro několik formátů vzorků respektující zpracování videosignálů kodérem. Tyto formáty je možné přepínat listboxem v levé horní části menu. Obsahuje položky data RGB, data YCbCr, data DCT a dataquant. Data RGB umožňuje zobrazit rozložení vzorků v původním vstupním formátu složeném ze tří základních barev. Hodnoty vzorků v tomto formátu mají rozsah 0 až 255, jejich rozložení závisí na složení vstupního videosignálu. Je možné si prohlédnout jednotlivé kanály R, G, B pro každý snímek videosignálu. Data YCbCr zobrazuje rozložení vzorků po převedení do barevného prostoru YCbCr, tedy jasovou a dvě chrominanční složky signálu. Hodnoty vzorků v tomto formátu opět leží v rozsahu 0 až 255. Rozložení vzorků je odlišné od formátu RGB, zde základní jasová složka vypovídá o celkovém rozložení jasu, chrominanční signály jsou dány rozdílem mezi barevnou a jasovou složkou. Data DCT znázorňují rozložení frekvenčních koeficientů po diskrétní kosinově transformaci. Jejich dynamický rozsah je značně závislý na členitosti vstupního videosignálu a je kladný i záporný. Nejvíce četné jsou vzorky pohybující se okolo nulové hodnoty. Tyto vzorky jsou zpracovávány vždy po blocích 8 snímků, mezi kterými je možné listovat. Data QUANT reprezentují rozložení frekvenčních koeficientů po provedení kvantizace. Jejich dynamický rozsah se kvantováním podstatně sníží a rozložení kolem nulové hodnoty je mnohem ostřejší, vzorky o nulové hodnotě jsou nejčetnější. Obrázek 24 Menu Histogram 28

6.1.2 Statistika Menu statistika zobrazuje některé důležité číselné údaje o zpracovávaných video sekvencích. Je možné zpětně zobrazit informace i o dříve zpracovaných video sekvencích. Menu statistika má pouze jeden ovládací prvek a tím je listbox umístěný v horní části menu. Tímto listboxem se volí požadovaný již dříve zpracovaný soubor. Jména souborů jsou řazeny chronologicky postupně tak, jak byly zpracovány (shora dolů). Celé menu je rozděleno třemi panely na části odpovídající postupnému blokovému zpracování kodéru. V prvním panelu jsou informace po provedení kosinové transformace. Průměrný počet nenulových koeficientů udává, kolik koeficientů z celkového počtu 512 je průměrně nenulových, tzn. kolik koeficientů nese obrazovou informaci. Kompresní poměr v tomto případě neudává poměr mezi vstupním a výstupním datovým tokem, ale poměr mezi celkovým počtem koeficientů a nenulovým počtem koeficientů podle vztahu (19). Tato forma kompresního poměru udává, kolikrát méně vzorků je potřeba k přenesení obrazové informace. Na dalším panelu jsou informace po provedení kvantizace, opět je tu udán průměrný počet nenulových koeficientů a kompresní poměr. Navíc jsou tu uvedeny parametry kvantizace, pomocí nichž bylo dosaženo uvedených hodnot počtu nenulových koeficientů a kompresního poměru. Poslední panel udává informace po rekonstrukci obrazu, tj. po dekódování a převedení do barevného prostoru RGB. Jsou tu uvedeny normalizovaná efektivní chyba, normalizovaná kvadratická chyba a poměr signálu k šumu. Hodnoty těchto parametrů jsou pouze orientační, nejdůležitějším parametrem je subjektivní hodnocení kvality videosignálu lidským zrakem. Obrázek 25 Menu Statistika 29

6.1.3 Náhled Nejdůležitějším parametrem ztrátové komprese videosignálů je subjektivní hodnocení kvality videosignálu lidským zrakem. Pro možnost takového hodnocení bylo vytvořeno menu náhled, v kterém lze velice jednoduše porovnávat originální snímek spolu s komprimovaným. Pro zobrazení náhledu je nutné postupně aplikovat všechny bloky kodéru i dekodéru až po obnovení barev zpět do barevného prostoru RGB. Posledním blokem dekodéru je uložení videosignálu do externího souboru, který je možné přehrát v běžném multimediálním přehrávači (například ve Windows Media Player). Po vytvoření náhledu i komprimovaného snímku je možné pozorovat rozdíly mezi originálním a komprimovaným snímkem a různé druhy poruch vzniklých při ztrátové kompresi na komprimovaném snímku. Při vyšší míře komprimace je možné pozorovat segmentaci obrazu na bloky, jak při použití trojrozměrné, tak i dvourozměrné transformace. Při použití trojrozměrné transformace je možné pozorovat poruchy v osmi po sobě jdoucích snímcích v místech obsahující pohyb, naopak v místech s minimem pohybu je jen minimum poruch a jsou zachovány i značné detaily. Obrázek 26 Menu Náhled 6.1.4 Načítání koeficientů Menu načítání koeficientů znázorňuje různé možnosti řazení frekvenčních koeficientů. Nejjednodušším způsobem je postupné načítání, dalším způsobem je načítání koeficientů jako u standardu JPEG cik-cak po jednotlivých snímcích, nebo řazení cik-cak v bloku 512 koeficientů složených z 8 snímků a posledním způsobem je načítání koeficientů váhováním souřadnic. Na tomto menu je možné jasně pozorovat průběhy velikostí jednotlivých koeficientů na indexu v bloku 512 koeficientů. Cílem různého řazení koeficientů je pokud možno zajištění monotónního klesajícího průběhu, podobně jako je zobrazeno na Obrázku 27. Různé druhy načítání se volí listboxem umístěným v levé horní části menu, v pravé horní části menu se lze přepínat mezi daty, které budou načítány. Je možné načítat data přímo po kosinové transformaci nebo až po provedení kvantizace, kde je velké množství frekvenčních koeficientů nulových. 30

Obrázek 27 Menu Načítání koeficientů 6.2 Výsledky testovaných videosekvencí Pro ilustraci vlivu kvantování na obrazovou kvalitu, je uveden konkrétní příklad pro hodnoty β inn =0,1 a β out =0,01 viz. Obrázek 28 a). Na obrázku lze vidět velmi zkreslený videosignál, největší zkreslení lze pozorovat na rychle se pohybujících objektech (např. nohy), některé statické objekty v obraze jsou ještě docela dobře rozlišitelné (vodící bílé čáry, žluté číslo dráhy). Některé rysy pomalu se pohybujících postav v pozadí jsou dokonce lépe prokreslené než rysy rychle běžících postav v popředí. Obranou tohoto snímku může být snad jen hodnota kompresního poměru C.R.=57, což je obrovská hodnota. Kvantování ve všech třech rozměrech způsobuje částečnou ztrátu informací o pohybujících se objektech, které v obraze působí velice rušivě. a) b) Obrázek 28 Příklad kvantování videosekvence zavod.avi : a) mezní případ (C.R.=51), b) vhodný příklad (C.R.=8,8). Dalším příkladem je Obrázek 28 b), který je kvantován s parametry β inn =0,01 a β out =0,001. Mezi tímto a originálním obrázkem již pouhým okem nelze nerozeznat téměř žádné rozdíly, ale přesto je hodnota kompresního poměru nezanedbatelná C.R.=8,8. Právě takovéto výsledky jsou hlavním cílem ztrátové komprese videosignálů. 31

a) b) Obrázek 29 Srovnání 3D DCT a 2D DCT zpracování videosekvence akvarium.avi : a) 3D DCT zpracováni (C.R.=85), b) 2D DCT zpracování (C.R.=85) Na Obrázku 29 a) je uvedeno srovnání zpracování s využitím trojrozměrné diskrétní kosinové transformace a Hyperboloidického kvantování a na Obrázku 29 b) je klasické zpracování dvourozměrnou diskrétní kosinovou transformací a klasických kvantizačních tabulek. Videosekvence je tvořena poměrně statickou scénou a je použito drastického kvantování k dosažení kompresního poměru C.R.=85. U 3D zpracování jsou patrné poruchy v okolí pohybujících se rybiček, u 2D zpracování je obraz již zcela nepoužitelný. Na Obrázku 30 jsou ukázky dalších zpracovaných videosekvencí. V Tabulce 9 jsou uvedeny doplňující parametry dosažených výsledků testovaných videosekvencí, zejména kompresní poměr, normalizovaná efektivní chyba, normalizovaná kvadratická chyba a odstup signálu k šumu. Tabulka 9 Parametry testovaných videosekvencí Videosekvence C.R. NRMSE NMSE PSNR [db] akvarium.avi (2D DCT) 85 0,418 0,017781 17,5 akvarium.avi (3D DCT) 85 0,1 0,001016 29,9 boulder.avi 14 0,103 0,001375 28,6 CIAF.avi 28 0,013 0,000048 43,2 jamu.avi 20 0,022 0,000156 38,1 vitr.avi 10 0,124 0,003931 24,1 zavod.avi (mezní případ) 51 0,09 0,002146 26,7 zavod.avi (vhodný případ) 8,8 0,032 0,000271,7 32

a) b) c) d) Obrázek 30 Příklady zpracování videosekvencí: a) boulder.avi (C.R.=14), b) CIAF.avi (C.R.=28), c) jamu.avi (C.R.=20), d) vitr.avi (C.R.=10). 33

7 Závěr Bylo popsáno několik druhů diskrétní kosinové transformace (DCT). Byly modifikovány dílčí rovnice pro výpočet přímé i inverzní dvourozměrné diskrétní kosinové transformace (2D DCT) včetně nejvíce sledované trojrozměrné diskrétní kosinové transformace (3D DCT). Byl analyzován dynamický rozsah frekvenčních koeficientů 3D DCT a jejich rozložení v bloku 8x8x8. Byly vyzkoušeny různé možnosti kvantování koeficientů 3D DCT, jak možnost modifikování dvourozměrných kvantizačních tabulek, tak metoda kvantování využívající hyperboloidického rozložení koeficientů. Metody modifikace dvourozměrných kvantizačních tabulek nebudou optimálně využívat vlastností 3D DCT koeficientů. Generování kvantizačních tabulek na principu exponenciálního průběhu kvantizačních koeficientů je sice velmi jednoduché, ale asi až příliš pravidelné (viz. příloha č. 2). Optimálním řešením by bylo vytvoření předem definovaných kvantizačních tabulek jako je tomu u dvourozměrného kvantování. Předdefinované kvantizační tabulky by mohly totiž být optimalizované na vlastnosti lidského zraku. Vytvoření takovýchto tabulek by však vyžadovalo obrovské množství simulací a analýz subjektivního vnímání. Výsledek by však byl nejlepší. Byly vyzkoušeny různé metody načítání frekvenčních koeficientů s ohledem na pozdější použití některé metody bezeztrátové komprese. Nakonec bylo uvedeno několik případů ztrátové komprese videosignálů pomocí vytvořené aplikace. Aplikace umožňuje ovlivňovat mnoho parametrů a získávat rozličné výsledky zpracování videosignálů. 34

8 Použité informační zdroje [1] BALADA, R. Ztrátová komprese videosignálů - kvantování: semestrální projekt 1. Brno: FEKT VUT v Brně, 2007. 22 s., 1 příl. [2] FRÝZA, T., Komprimace obrazových signálů pomocí transformace 3D DCT: disertační práce. Brno: Vysoké učení technické v Brně, 2007. [3] SERVAIS, M., De JAGER, G. Video compression using the three dimensional discrete cosine transform (3D-DCT). In Communications and Signal Processing, 17. COMSIG '97. Proceedings of the 17 South African Symposium. Grahamstown, South Africa: 9.-10. September 17, s. 27-32. ISBN: 0-7803-4173-2. [4] LEE, M. C., CHAN, Raymond K. W., ADJEROH, D.A. Quantization of 3D-DCT Coefficients and Scan Order. Journal of Visual Communications and Image Representation, vol. 8, no. 4, 17. s. 405-422. [5] LE GALL, D., MPEG: A Video compression standard for multimedia applications. New York, USA: ACM, 11. ISSN: 0001-0782 [6] VÍT, V. Televizní technika, přenosové barevné soustavy. Praha: BEN technická literatura, 17. 719 stran. ISBN 80-86056-04-X. [7] ALSHIBAMI, O., BOUSSAKTA, S. Fast algorithm for the 3D DCT. In Acoustics, Speech, and Signal Processing, 2001. Proceedings. (ICASSP '01). 2001 IEEE International Conference. Salt Lake City, UT, USA: 5. July 2001-5. November 2001. s. 1945-1948 vol.3. ISBN: 0-7803-7041-4. [8] ČAPEK, V., FABIAN, P. Komprimace dat, principy a praxe. Praha: Computer Press, 2000. 173 stran. ISBN 80-7226-231-9 [9] WISEMAN, J., An Introduction to MPEG Video Compression [online]. [cit. 7. prosince 2007]. Dostupný z WWW:< http://www.siggraph.org/education/ materials/hypergraph/video/mpeg/?searchterm=mpeg-2> [10] MARSHALL, D., Video and Audio Compression [online]. [cit. 10. dubna 2001]. Dostupný z WWW: <http://www.cs.cf.ac.uk/dave/multimedia/node200.html> [11] WIKIPEDIE. Diskrétní kosinová transformace [online]. [cit. 2007-12-7]. Dostupný z WWW: <http://cs.wikipedia.org/wiki/diskr%c3%a9tn%c3%ad_kosinov%c3%a1 _transformace >

[12] TIŠNOVSKÝ, P. Root.cz (www.root.cz). [online]. Prosinec 2006 [cit. 7. prosince 2006]. Dostupné na WWW: <http://www.root.cz/clanky/jpeg-kral-rastrovychgrafickych-formatu/> ISSN 1212-8309. [13] TIŠNOVSKÝ, P. Root.cz (www.root.cz). [online]. Prosinec 2006 [cit. 14. prosince 2006]. Dostupné na WWW: < http://www.root.cz/clanky/ztratova-kompreseobrazovych-dat-pomoci-jpeg/ > ISSN 1212-8309. [14] MUBARAK, S. Computer Vision Systéme (www.cs.ucf.edu) [online]. Listopad 2004. [cit. 12. února 2005] Dostupné na WWW: < http://www.cs.ucf.edu/ courses/cap6411/lecture-8.pdf > 36

9 Seznam zkratek 2D 3D C.R. CMYK DCT DFT DR IDCT IDFT ISO JPEG MPEG NMSE NRMSE PSNR RGB YC b C r Dvourozměrná (two dimensional) Trojrozměrná (three dimensional) Kompresní poměr (compression ratio) Barevný prostor složený z azurové, purpurové, žluté a černé (Cyan Magenta Yellow black) Diskrétní kosinová transformace (Discrete Cosine Transform) Diskrétní Fourierova transformace (Discrete Fourier Transform) Dynamický rozsah (Dynamic range) Zpětná diskrétní kosinová transformace (Inverse Discrete Cosine Transform) Zpětná diskrétní Fourierova transformace (Inverse Discrete Fourier Transform) Mezinárodní organizace pro standardizaci (International Organization for Standardization) Joint Photographic Experts Group Motion Picture Experts Group Normalizovaná kvadratická odchylka (Normalized Mean Square Error) Normalizovaná efektivní odchylka (normalized root mean square error) Odstup signálu od šumu (Peak Signal to Noise Ratio) barevný prostor složený ze tří základních barev červené, zelené a modré (Red Green Blue) barevný prostor složený z jasové a dvou chrominančních složek 10 Seznam příloh PŘÍLOHA 1. UKÁZKY ZPRACOVÁVANÝCH VIDEOSEKVENCÍ PŘÍLOHA 2. TROJROZMĚRNÁ KVANTIZAČNÍ MATICE Q (U,V,W) PŘÍLOHA 3. PŘÍKLAD VÝPISU PROGRAMU PŘÍLOHA 4. PŘÍKLAD ZDROJOVÉHO KÓDU PROGRAMU 37

Příloha 1. Ukázky zpracovávaných videosekvencí a) akvarium.avi b) boulder.avi c) CIAF.avi d) jamu.avi e) vitr.avi f) zavod.avi