|
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.
Celý proces,
jak kodéru, tak dekodéru, probíhá jednotlivých makroblocích.
Obr. Dekodér výrazně jednoduší,
jelikož neobsahuje vyhledávání vektorů pohybu. případě dvou cyklů for byl každý 256 výpočtů
doprovázen inkrementací kontrolou čítače vnitřního cyklu for [2].2 Mezisnímkové kódování
Zdrojový kód pro mezisnímkové kódování vychází blokového schématu obr.
3.
Rozdíl tohoto snímku snímku aktuálního spolu vektory pohybu přenáší dekodéru.
for noffset 0:(2*okno)
for 0:15 Výpočet SAE. . 31.
SAE SAE abs(Y2(i+m,15+n) Y1(i+Ver,15+Hor));
Samotný výpočet SAE realizován pouze jedním cyklem for důvodu šetření
výpočetního výkonu tedy času. Aplikací vektorů
pohybu snímek paměti získáme snímek minimálním rozdílem vůči aktuálnímu snímku. První
dvojice starosti zpracování snímku jednotlivých makroblocích, další dvojice
obstarává posun vyhledávacího okna. Povolená
velikost vyhledávacího okna +/– pixelů. Vyhledávání vektorů
pohybu starosti jeden tří vyhledávacích algoritmů, viz podkapitoly. Na
straně dekodéru obdobných způsobem zrekonstruuje aktuální snímek.1 Plné vyhledávání
Plné vyhledávání (m-file koder_predikce_FS.
SAE SAE abs(Y2(i+m,0+n) Y1(i+Ver,0+Hor));
SAE SAE abs(Y2(i+m,1+n) Y1(i+Ver,1+Hor));
.2. První tři
bloky tvoří část kodéru, část dekodéru tvořena dvě bloky.
for 1:16:size(snímek,2)
for moffset 0:(2*okno) Posun vyhledávacího okna. Blokové schéma mezisnímkového kódování.m) realizováno několika cykly for. Aby prohledávaná oblast odpovídala zvolené velikosti
vyhledávacího okna, zapotřebí zvolenou velikost pro účely posunu zdvojnásobit. Velikost kroku vždy jeden pixel.26
3.
for 1:16:size(snímek,1) Posun makroblocích.
Vyhledávání
vektorů
pohybu
Aplikace VP
na snímek
v paměti
Rozdíl
snímků
Snímek v
paměti
Aktuální
snímek
Přenos vektorů pohybu
Přenos rozdílu snímků
Aktuální
snímek
Aplikace VP
na snímek
v paměti
Aplikace
rozdílu
snímků
.
Snímek paměti posunut vůči snímku aktuálnímu jeden snímek vpřed, jedná-li se
o předpověď zpětnou nebo jeden snímek vzad, jde-li předpověď dopřednou. 31