|
Kategorie: Diplomové, bakalářské práce |
Tento dokument chci!
Prvním cílem diplomové práce je prostudování základních principů komprimace obrazových signálů. Seznámení se s technikami používanými pro redukci zbytečnosti a nadbytečnosti v obrazovém signálu. Druhým cílem je, na základě těchto informací, realizovat jednotlivé komprimační nástroje v programovém prostředí Matlab a sestavit tak jednoduchý model video kodeku. Diplomová práce obsahuje popis realizace tří základních komprimačních bloků a sice - kódování uvnitř snímku, mezi snímkové kódování a kódování s proměnnou délkou slova - podle standardu MPEG-2.
Pokud je
podmínka splněná, zapsán identifikátor EoB, respektive NaN (Not Number).
{ Zápis VLC kódu vektoru.36
Zdrojový kód RLE (m-file koder_RLE.m) obsahuje cyklus for pro
načítání koeficientů.
if isnan(data(i)); Podmínka pro detekci NaN (EoB).3. Pokud není
splněna, následuje čítání běhu nul pomocí smyčky while následný zápis skupiny.
Podmínka kontroluje, zda nejsou konce vektoru pouze nulové hodnoty.
3.
for i=1:length(data); Smyčka načítání koeficientů..3.1 Kódování koeficientů
Zdrojový kód VLC pro koeficienty (m-file koder_VLC_dc.2 Kódování AC/DCT koeficientů
Zdrojový kód VLC pro AC/DCT koeficienty (m-file koder_VLC. }
else
for n=1:12; Smyčka prohledávání VLC tabulky.
3. Smyčka while obstarává zpracování vybraného vektoru, délka
vektoru pro koeficienty snímku nebo pro DCT koeficienty snímků P/B. }
else
{ Načtení skupiny: běh nul hodnota. VLC
tabulky pro AC/DCT koeficienty vektory pohybu obsahují VLC kódy přímo pro hodnoty,
které vyskytují vektoru dat.2.
while i<=length(data); Smyčka procházení vektoru RLE dat.3. }
elseif n==113 Není definován VLC kód skupiny.
{ Zapsání VLC kódu vektoru. opačném případě dochází za
pomocí cyklu for prohledávání VLC tabulky, při shodě vektoru zapsán VLC kód spolu
s binárně vyjádřenou hodnotou koeficientu. Nulová hodnota koeficientu kódována přímo VLC kódem,
k čemuž slouží podmínka if, která testuje nulovou hodnotu. Podmínka zajišťuje detekci hodnoty NaN (EoB), jinak se
načte skupina formátu běh nul hodnota Následuje cyklus for pro prohledávání VLC
tabulky, pokud VLC kód nalezen, zapsán kódovaných dat.
if isequal(); Testování shody VLC tabulkou. }
end;
for n=1:113; Smyčka prohledávání VLC tabulky. VLC tabulky pro koeficienty
obsahují VLC kódy, které definují počet bitů, jimiž lze vyjádřit hodnotu koeficientu. }
3.
{ Vygenerování zápis VLC kódu vektoru.
if isequal(); Testování shody VLC tabulkou.
{ Zapsání kódu vektoru.
if data(i)==0; Podmínka pro nulovou hodnotu.m) tvořen cyklem for zajištujícím načítání
vektorů AC/DCT koeficientů.m) obsahuje smyčku while
pro načítání RLE kódovaných dat.2.2 Huffmanovo kódování
Huffmanovo kódování lze standardu MPEG-2 rozdělit podle principu zpracování na
kódování koeficientů kódování AC/DCT koeficientů. Pokud není pro skupinu
VLC kód definován, vygeneruje nový VLC kód formátu únikový kód (6b) binárně
vyjádřená délka běhu (6b) binárně vyjádřená hodnota (8b) celkově tedy bitů.
{ Uložení řetězce NaN skupiny