You are on page 1of 52

P22 Kodeci

Uvod
Od svih naih ula, oko je najefikasniji prijemnik informacija. Kratkim razgledanjem
neke slike ovek moe da primi koliinu informacija koju bi primio pri vieasovnom
sluanju verbalnog opisa iste slike. Zato prenos, obrada i smetaj slike postaju vani
faktori efikasnog rada, uenja i zabave savremenog oveka koji je sve vie orijentisan
prema vizuelnoj komunikaciji.
Digitalni video vie nije ogranien samo na profesionalnu upotrebu, ve nalazi sve
veu primenu i u kunim uslovima.

Digitalizacija signala
Raunar je digitalni ureaj koji svoj rad zasniva na binarnom brojnom sistemu. Da bi
mogla da se obavi digitalna obrada nekog analognog signala neophodno je taj signal
konvertovati u ekvivalentan digitalni oblik, tj. potrebno je obaviti analogno/digitalnu
(A/D) konverziju koja obuhvata odmeravanje, kvantizaciju i kodiranje.
Kod signala kao to je video signal, koji se predstavljanu kao viedimenzione
funkcije, potrebno je izvriti odmeravanje tj. diskretizaciju po svim nezavisno
promenljivim. Video signal je po svojoj prirodi diskretan po vremenu (25 slika u
sekundi) i po vertikalnoj y osi (576 vidljivih linija po slici), tako da je potrebno jo
samo izvriti diskretizaciju po horizontalnoj x osi. Da bi na osnovu diskretnog signala
mogao da se rekonstruie originalni video signal potrebno je izvriti odmeravanje sa
rezolucijom od 768 piksela (taaka od kojih je sastavljena slika) po horizontali.
Kod signala slike u boji neophodno je odmeravanje i kvantizacija svake RGB ili
YUV komponente. Za dobar kvalitet slike koristi se kvantizacija sa po 8 bita, tj. sa po
jednim bajtom za svaku komponentu, to omoguava da slika sadri 23*8 = 224 (16,7
miliona) boja.

Potreba za video komprimovanjem


Video signal nakon konverzije u digitalni oblik sadri ogromnu koliinu informacija,
to zahteva brzinu prenosa od 31, 6 megabajta/sekundi (768 576 25 3). Ako se
ne bi upotrebljavao neki vid komprimovanja, ak i da se poseduje 200 gigabajta
potrebnih za smetaj prosenog filma, neophodna je velika brzina za prenos podataka
u PC okruenju.
Ako bi se snimalo u realnom vremenu bez hardverskog komprimovanja dolazilo bi do
gubljenja, odnosno isputanja pojednih frejmova u video sekvenci, i zato slabije
kartice za digitalizaciju u realnom vremenu, koje nemaju komprimovanje, smanjenje
koliine informacija u video signalu reavaju tako to rade na nioj rezoluciji
(obino 160 120 piksela), sa oko 15 fps (engl. frame per second slika u sekundi), i
sa 256 boja. Rezultat njihovog rada uglavnom je ogranien na kunu primenu i na
snimanje AVI video sekvenci za razne multimedijalne primene, kao to su na primer
enciklopedije na CD-ROM-ovima gde se polazi od toga da e se reprodukcija vriti i
na slabijim raunarima.
Dobar kompromis izmeu kvaliteta slike i prostora koji ona zauzima moe se
primeniti kod YUV digitalnog formata slike, sastavljenog od luminentne Y
(osvetljenje) i hrominentnih U i V (kolor) komponenti, koji se preteno i koristi
prilikom kodiranja digitalnog videa. Na osnovu injenice da je ljudsko oko osetljive
na promene u boji, vri se redukcija kolor informacije i to najee u odnosima 4:2:2,
pri emu se dobija potrebna brzina prenosa oko 20 MB/s, kao i 4:1:1, sa brzinom od
oko 15 MB/s. Ovaj vid redukcije omoguava otrije slike nego to su komprimovane,
pri emu se dobija manje zauzee na disku od nekomprimovanog RGB formata, koji
se koristi kod prikaza slike na ekranu monitora.

Tipovi digitalnog komprimovanja


Da bi se i pri niskim brzinama prenosa postigao zadovoljavajui kvalitet video snimka
potrebno je pribei nekom vidu komprimovanja pomou kojeg se postie smanjenje
redundanse (viak nepotrebnih ili manje potrebnih podataka). Komprimovanje se kod
personalnih raunara koristi svakodnevno, esto i bez razmiljanja, kao na primer kod
modemskih komunikacija, gde se upotrebljava MNP5 komprimovanje, ili recimo kod
DoubleSpace ili Stacker diskova. Meutim, nisu ni svi naini komprimovanja isti. Za
razliku od pomenutih komprimovanja, kao i od komprimovanja tipa .GIF ili .PNG,
koji kod dekomprimovanja datoteke vraaju svaki bajt identian originalu pre
komprimovanja, tzv. lossy komprimovanje slike, kao to je na primer JPEG (Joint
Photographic Experts Group) ne radi na taj nain, ve na osnovu talasnih jednaina i
slinih matematikih principa uklanja redundantne podatke. Nakon JPEG
dekomprimovanja slika je naizgled ista kao originalna slika pre komprimovanja, ali
nije joj identina u bajt to je, ukoliko je dobro izabran stepen komprimovanja,
vizuelno esto zanemarljivo. Zauzvrat, za razliku od .ZIP-a i slinih komprimovanja,
kod kojih je stepen komprimovanja oko 2:1, lossy komprimovanje slike ima daleko
vei stepen komprimovanja (i do 200:1) koji je neophodan ako se eli snimanje
filmova na CD-ove koji imaju brzinu od 150 kB/s. Najvei broj sistema za
komprimovanje digitalnog videa namenjenih multimedijalnim enciklopedijama i
slinim materijalima, kao to su Radius Cinepak, Intel Indeo, ili Microsoft Video I,
projektovani su tako da za dekomprimovanje ne zahtevaju specijalan hardver, ve taj
postupak obavlja sam mikroprocesor. Od njegove brzine prvenstveno zavisi
maksimalan fps i veliina slike kod koje se nee javljati isputeni frejmovi iz video
sekvence prilikom reprodukcije, mada je brzina ostatka sistema (grafika karta, disk,
) takoe bitna.
MPEG (Motion Picture Experts Group) standard omoguava najbolji stepen
komprimovanja od svih pomenutih, tako da za isto trajanje video snimka zahteva
znatno manje prostora na disku, a i kvalitet slike koji nudi je znatno bolji.
MPEG se, dalje, odnosi na komprimovanje pokretne slike i zvuka. To je standard,
donesen od strane organizacije ISO, a na osnovu rada vrhunskih strunjaka iz ove
oblasti (Moving Pictures Experts Group MPEG).

Kako ovekov vizuelni sistem funkcionie i kako ga kodeci podraavaju

Konane sudije kvaliteta slike svakog vizuelnog sistema su gledaoci. Inenjeri koji
projektuju kamere, video rekordere i kartice za digitalizaciju koji rade sa
komprimovanim video signalima moraju da prave kompromis izmeu dobrog
kvaliteta video signala i date brzine prenosa. Da bi bolje shvatili i koristili dodeljene
ograniene sistemske resurse, inenjeri koriste funkcionisanje ovekovog vizuelnog
sistema.
Nae oi i mozak obrauju ogromne koliine podataka da bi vizuelno opazili svet oko
nas. Neki istraivai tvrde da mi obraujemo vizuelne informacije brzinom od 160
MB/s. Meutim, ovekov vizuelni sistem ne daje svakom stimulusu istu vanost.
Mnogo informacija se zanemaruje. Inenjeri ele da njihovi video kodeci zanemaruju
iste informacije koje i ovekov vizuelni sistem.
Nekomprimovani NTSC video ima brzinu prenosa od preko 20 MB/s. Bilo bi sjajno
raditi svo vreme sa nekomprimovanim videom, ali visoka cena opreme za
digitalizaciju, obradu i smetanje takvog materijala ograniava primenu. ak i oni
koji poseduju takvu opremu imaju klijente koji im donose sirovi materijal u
komprimovanom formatu, recimo u DV formatu, ili oekuju da dobiju izmontiran
materijal spreman za distribuciju u komprimovanom materijalu, kao to je Digital
Betacam.
Glavni cilj inenjera koji se bave komprimovanim digitalnim video formatom je da
maksimizuju koliinu informacija koju e gledaoci primetiti. Nema koristi od prenosa
informacija koje nee biti primeene. Ukoliko inenjeri ne uzmu u obzir kako
funkcionie ovekov vizuelni sistem, morae da primene visok stepen komprimovanja
u svojim sistemima da bi uskladili propusnu mo i granice obraivanja. Ovo e kao
rezultat dati znatno slabiji kvalitet slike.
Dobri kodeci primenjuju vee komprimovanje na video informacije koje mi ne
primeujemo, a manje komprimovanje na one koje primeujemo. Inenjeri moraju
inteligentno da izaberu koje informacije e njihovi kodeci da odbace.

ovekov vizuelni sistem

Poto svetlost proe kroz soivo oka, ona pogaa fotoreceptivne neurone koji
obrazuju mrenjau, slika 22.1. Fovea, mala oblast mrenjae odmah iza zenice, ima
najveu koncentraciju svetlosno osetljivih nervnih elija i ima najvaniju ulogu u
vizuelnom opaanju. Kada gledamo program na TV prijemniku, mi fokusiramo
njegovu prenetu svetlost na nae fovee. U fovei, nekoliko slojeva optikih neurona
kodira svetlost koja je pogodila svaki epi. Slojevi optikih neurona prenose svoje
signale du optikog nerva, koji se protee od oka do mozga.

Slika 22.1 Grubi prikaz ovekovog vizuelnog sistema.

Oko skuplja podatke, ali im mozak daje smisao. Svaka taka na mrenjai povezana
je sa specifinom oblau primarnog vizuelnog korteksa. U stvari, ako se deo vaeg
primarnog vizuelnog korteksa oteti, vi ete oslepeti u odgovarajuem delu vidnog
polja. Iako primarni vizuelni korteks predstavlja (prikazuje) celu mrenjau, fovea
vee vie prostora mozga nego periferijska vizija. Visoka gustina neurona iza fovee i
njena primarna uloga u vizuelnoj otrini, prostorno opaanje i kolorna vizija zahtevaju
vie umne snage, i prema tome vie neurona.
Iako veina neurona u primarnom vizuelnom korteksu odgovara odreenim
fotoreceptorskim elijama na mrenjai, neki neuroni reaguju na linije i ivice, a ne na
take svetlosti. Proste elije reaguju na svetlost od linija i ivica odreene
orijentacije i pogaaju odreene delove mrenjae. Kako se orijentacija linije menja,
ili poto reflektovana svetlost pogodi drugi deo mrenjae, razliite proste elije e
reagovati.
Sloene elije prihvataju informacije od prostih elija i nastavljaju da reaguju na
odreeni linijske ili ivini stimulus sve dok orijentacija ostaje ista, ak iako svetlost
reflektovana od njega pogaa drugi deo one jabuice. Poto sloene elije reaguju na
stimulus ak iako menja mesto, one opaaju kretanje.
Kako se kreete du stepenita promenljivi nizovi elija u primarnom vizuelnom
korteksu reaguje na svetlost koja se reflektuje od stepenica i ivica rukohvata. Glavni
izlaz primarnog vizuelnog korteksa sastoji se od informacija o linijama,
orijentacijama i kretanjima.
Oblasti za vizuelnu asocijaciju prate primarni vizuelni korteks. Ove oblasti analiziraju
informacije o poravnavanju, liniji i kretanju koje stvara primarni vizuelni korteks, i
povezuju te informacije sa detaljnijim i sloenijim uzorcima (kao to su stabla i lica).
Meutim, oblasti za asocijaciju ne zakljuuju da se, na primer, radi o licu, ve
zakljuuje da se radi o objektu koji prepoznaje. Odreeni neuroni reaguju na odreene
oblike. Neurofiziolozi tvrde da odreeni neuroni kod majmuna koji se aktiviraju kada
se majmunu pokae fotografija majmuna, ne reaguju kada se majmunu pokae
fotografija sa izoblienim likom. Oblasti za viu asocijaciju kombinuju informacije od
oblasti za vizuelnu asocijaciju sa informacijom od susednih opaajnih oblasti i drugih
osetila. Oblasti za viu asocijaciju stvaraju nae prepoznavanje sveta. Ne uestvuju
sve informacije, koje pogaaju receptore (ukljuujui i mrenjau), u razvoju tog
prepoznavanja. Mozak obavlja mnoga filtriranja i obrade pre nego to neki objekat
prepozna kao stablo.

Sakrivanje greaka

Kada projektuju video hardver i softver, inenjeri pokuavaju da shvate i iskoriste


osobinu filtriranja ovekovog vizuelnog sistema. Svi video signali, analogni i
digitalni, sadre i obrauju manje vizuelnih informacija nego nae mrenjae i
mozgovi. Inenjerski cilj je da se obezbedi da sistem zanemaruje i od bacuje iste
informacije kao i gledaoev vizuelni sistem. to je tehniki sistem pribliniji, manje
gledalaca e primetiti komprimovanje. Ako video sistem unosi greke kodiranja koje
se nalaze ispod prega ovekove percepcije, one nee biti primeene.
ovekov vizuelni sistem pokazuje izuzetnu osetljivost na promene kod izvesnih vrsta
vizuelnih informacija, a manju osetljivost na druge. Na primer, na vizuelni sistem
primeuje bolje promene osvetljaja nego razlike u obojenosti. Mi primeujemo razlike
kod objekata u prednjem planu mnogo lake nego u pozadini. Mnogo lake uoavamo
razlike u monotonim oblastima nego prenatrpanim oblastima.
Uvoenje komprimovanja i greaka u video signale prethodi digitalnoj video
revoluciji. Uzimanje odmeraka video signala u odnosu 4:2:2 i preplitanje analognog
videa odreuje oblike neophodnog komprimovanja da bi se video signal uklopio u
zadati propusni opseg. Preplitanje unosi tzv. puzanje i treperenje. Meutim, mi smo se
navikli da gledamo video sliku sa preplitanjem, tako da su te anomalije dobile status
prihvatljive grake.
Komprimovani digitalni video uvodi nove metode redukovanja veliine signala. Mi se
u ovom odeljku neemo detaljno baviti funkcionisanjem algoritama za
komprimovanje slike, ve emo navesti samo osnovne principe. JPEG i ostali
algoritmi za komprimovanje digitalnog videa pretvaraju talasne oblike u to je
mogue manje brojeva. Prvo, video slika se pretvara u digitalne elemente slike
(piksele), a zatim se deli u blokove od po 88 piksela. Zatim se vrednosti piksela
svakog bloka pretvaraju u vrednosti koje predstavljaju frekventni sadraj bloka. Kod
JPEG-a i DV formata, pretvaranje obavlja diskretna kosinusna transformacija (engl.
Discrete Cosine Transform DCT). Sada nastupa komprimovanje. Brojevi koje je
proizvela diskretna kosinusna transformacija preslikavaju se u intervale kvantizacije.
to su kvantizacioni nivoi bliskiji, bolji je diskretizovani izlaz, ali je vea datoteka.
to imate manje nivoa kvantizacije, izlaz je grublji, ali je datoteka manja.
Cilj video kodeka je da koristi grubu kvantizaciju u sluajevima kada ovekov
vizuelni sistem nee primetiti, a vie kvantizacionih nivoa na delovima slike koje
vizuelni sistem primeuje. Sada emo navesti nekoliko svojstava ovekovog
vizuelnog sistema koje inenjeri koriste u digitalnoj video tehnici.

Otrina i prostorna frekvencija

Obian ovek moe da razazna sive objekte sve do veliine vidnog ugla od jednog
minuta. Izraavajui otrinu kao ugaonu meru, zakljuuje se da to ste blie objektu
koji posmatrate, to manji detalj moete primetiti.
Veina ljudi sedi blie raunarskim monitorima nego to sedi TV prijemnicima.
Vizuelni odnosi su u rasponu od 7:1 kod NTSC televizije, 2:1 do 4:1 kod TV visoke
definicije zato to HDTV ima veu veliinu ekrana, i oko 1:1 za raunarske monitore.
Zbog otrine i rastojanja inenjeri za razliite proizvode zadaju razliite rezolucije.
Televizija moe da ima manju rezoluciju nego raunarski monitori, koja nee smetati
gledaocima, zato to TV program gledaju sa veeg rastojanja. Na primer, kod NTSC
televizije zadovoljava 320 crno-belih linija. Da bi se ostvario ekvivalentni prikaz na
kvalitetnom raunarskom monitoru bilo bi potrebno oko 1000 linija. Slike namenjene
za prikazivanje na televiziji mogu se vie komprimovati, bez primetne degradacije, u
odnosu na slike koje e se prikazivati na celom ekranu raunarskog monitora.
to je objekt manje veliine, na vizuelni sistem manje pojedinosti moe da zapazi, a
samim tim i manje greaka moe da zapazi. Drugim reima, na oblastima koje imaju
puno detalja (oblasti sa viskom prostornom frekvencijom), neemo primetiti toliko
greaka koliko na oblastima sa manje detalja. Zato projektanti kodeka mogu da
primene grublju kvantizaciju na visoko frekventne informacije, koja dozvoljava niu
globalnu brzinu prenosa. Na primer, kada komprimuje sliku stabla, kodek ima vie
slobode da napravi greke na pojedinanim listovima nego kada komprimuje krupni
plan lica.

Maskiranje

Sloene slike i pozadine su teki za obradu za ovekov vizuelni sistem. Pojedinana


svojstva se ne zapaaju tako lako. Ovo takoe znai da se neobina svojstva, kao to
su anomalije usled komprimovanja, teko zapaaju.
Pogledajmo sliku 22.2. Zalutali pikseli koji se lako zapaaju na levoj strani lica manje
su primetni kada padnu na njenu kosu. Sloena, nepravilna aktivnost slike u kosi
sakriva greke kodiranja, usled ega su one manje primetne. Slino, mnogo lake ete
zapaziti sluajan um na desnoj strani lica nego u njenoj kosi. Ovi efekti maskiranja
dozvoljavaju kodecima da sakriju sluajne greke komprimovanja u oblastima
sloenije slike.
Slika 22.2 Efekt maskiranja zamagljuje sposobnost vizuelnog sistema da detektuje i
precizne i neprecizne detalje unutar kompleksnih oblasti slike. Na levoj strani lica
tee je uoiti parazitne piksele u devojinoj kosi nego parazitne piksele na njenom
obrazu. Na desnoj strani lica u oblastima visoke kompleksnosti bolje je sakriven
sluajni um.

Meutim, greke koje ne izgledaju kao sluajan um, kao to je blokovitost koja prati
visoke nivoe JPEG i MPEG komprimovanja, postaju primetne pri mnogo niem
pragu. Na primer, ovekov vizuelni sistem moe prepoznati blokove JPEG slike kao
deo reetke. Ako se sadraj video slike kree, ali reetka miruje, mi odvojeno
interpretiramo scenu i greke kodiranja. Komprimovanjem su se izgubile pogodnosti
efekta maskiranja.
Iako ovekov vizuelni sistem moe da maskira um unutar objekata, on ne moe da
maskira um na obodnim linijama objekta. Primeuju se i minimalni defekti na
linijama ili ivicama (vidi sliku 22.3). Kodeci mogu da primene finije ili grublje
komprimovanje na komponente slike koje imaju vie detalja nego na one komponente
koje imaju istaknute ivice ili linije. Tano se linije je loe mesto za tednju bitova,
pogotovu ako se te linije pomeraju ili na sluajan nain menjaju.
Slika 22.3 ovekov vizuelni sistem je podeen na prekide u linijama, zato lake
uoavamo stepenice (krzavost) du ivica mahune graka nego defekte usled
komprimovanja unutranjosti krugova (zrna graka). Kodeci za komprimovanje slika
zato treba da ouvaju u to veoj meri linijske informacije.

Efekt Mahovih traka

Dok mesto i kontinuitet ivice objekta moraju biti dobro definisani, jasnoa ivice ne
mora biti paljivo opisana. Pogledajte sliku 22.4 i uoiete da leva ivica svake
vertikalne sive trake izgleda svetlije nego ostatak trake, a da desna ivica izgleda
tamnije. Meutim, kada prekrijete susednu levu i susednu desnu traku, videete da je
fizika jasnoa trake konstantna.
ovekov vizuelni sistem prenaglaava i slabi jasnou na graninim ivicama. Ovo
ponaanje naziva se Mach band (Mahove trake) efekt i kao rezultat daje poveanje
opaenog kontrasta na graninim ivicama dve oblasti razliite jasnoe.
Kodeci mogu da koriste osobinu Mach band efekta da poveaju globalno
komprimovanje slike. Iako se nivoi sivog neposredno menjaju na ivicama objekta,
ovaj efekt dozvoljava kodecima da prave grube, niskobitne (engl. low bit-rate) opise
nivoa sivog na ivici. Rezultujui veliki koraci gradijenta bivaju neprimeeni usled
efekta Mahovih traka.

Slika 22.4 Efekt Mach band poveava opaeni kontrast ivica nekog objekta. Ovde,
leva ivica svake vertikalne trake izgleda svetlija nego desna ivica, ali prekrivanje
susednih traka otkriva da u stvari svaka traka ima konstantnu svetlinu. Kodeci za
komprimovanje slike mogu primeniti grubu kvantizaciju na ivice sivih nivoa zato to
e rezultat biti zamuen Mach band efektom.

Kretanje
ovekov vizuelni sistem dobro detektuje kretanje, ali ne detektuje svaki detalj
objekata u kretanju. Zamislimo da paljivo posmatrate kroz prozor drvo na ulici koje
je na udaljenosti od oko 15 m. Ako iznenada proe auto brzinom od 120 Km/h, moda
ete zapaziti oblik i boju auta, ali verovatno neete zapaziti koji je tano model auta ili
broj vrata.
to je vea brzina kretanja objekta, ovekov vizuelni sistem zapaa manje detalja.
Stoga, snimci objekta koji se brzo kreu mogu da se grublje komprimuju (manje
detalja i otrine) nego snimci objekata koje se sporo kreu, bez vidno primetne
degradacije.
Naravno, vizija i komprimovanje su mnogo obimniji nego to je ovde opisano.
Meutim, svrha ove prie je da saopti da nije dovoljno da projektujete sistem koji
komprimuje video sa konstantnim odnosom 4:1. Kod reprodukcije se vidi koliko je
dobar kodek. Bolji kodek odluuje koju informaciju da sauva a koju da odbaci, a
kvalitet finalne slike je bolji.

Vrste kodeka

Kada se video procesira unutar raunara on je obino ve komprimovan. Veina


aplikacija za montau koristi MJPEG komprimovanje. Kada video materijal treba da
bude ukljuen u zabavne ili poslovne naslove i igre, on mora biti komprimovan u
formatu koji moe da prihvate programi i sistemi koji e ga reprodukovati. Ovde e
biti opisani neki standardni algoritmi za komprimovanje.

Video for Windows


Video for Windows (VfW) se sada naziva ActiveMovie i predstavlja standard koji je
Microsoft stvorio za video materijale. Njegove datoteke prepoznaju se po oznaci tipa
datoteke AVI i radi samo na PC-ju. AVI je skraenica od audio/video interleave.
Audio i video signali su smeteni u jedan kontinualni strim (engl. stream; povorka) u
kome se naizmenino smenjuju, tj. prepliu, ove dve vrste informacija.
Video se reprodukuje pri sopstvenoj brzini, a zvuk brzinom kojom su uzimani odbirci
pri digitalizaciji. Ovo moe da stvori klizanje u sinhronizaciji izmeu njih, posebno u
dugim filmovima. VfW zahteva da film samo sa video zapisom obuhvati i beumnu ili
praznu traku da bi se korektno reprodukovao, to je arenje dragocenog prostora na
disku, koji bi se mogao upotrebiti za poveanje stepena komprimovanja materijala.

Quicktime za Mac
Quicktime (QTM) je industrijski standard za CD-ROM-ove sa video materijalom.
Napravila ga je firma Apple Computer Inc., i to je prvi program koji je iroko
prihvaen u oblasti desktop video tehnologije. Pre njega video podaci nisu se mogli
isecati, kopirati ili postavljati na isti nain kao to se to radi sa tekstom u programima
za obradu teksta. Sa sinhronizacijom na vremenskom principu, on obezbeuje trake i
komande za vie vrsta medijuma, ukljuujui video, audio, muziku i tekst. Oznaka
tipa datoteke je .MOV.

Quicktime for Windows


Quicktime for Windows (QTW) je Quicktime verzija za PC i trenutno je jedini
program koji moe da se koristi za reprodukciju na obe platforme. Jedna video
datoteka, odgovarajue komprimovana, moe da se reprodukuje ili na Macintoshu ili
na PC-ju. Oznaka tipa datoteke je .MOV.

Kodeci za komprimovanje
Slika punog ekrana dimenzija 640x480 piksela ima ukupno 307200 piksela. Za svaki
piksel potrebno je rezervisati u memoriji tri bajta da bi se zabeleile informacije o boji
i osvetljaju. Prema tome, jedan frejm video materijala zahteva 921600 bajtova
memorijskog prostora. Pri brzini od 30 frejmova u sekundi, za jednu sekundu video
materijala potrebno je vie od 27 megabajta, a za jedan minut preko 1.6 gigabajta!
ak i ako je na raspolaganju dovoljan memorijski prostor, reprodukcija i
manipulisanje tolikom koliinom podataka zahteva ogromnu procesorsku snagu.
Kako je uopte mogue da osrednje opremljen raunar digitalizuje i prikazuje video
materijal? Kako video materijal za pun ekran i pune rezolucije moe biti sabijen na
150 kilobajta u sekundi za reprodukciju sa CD-ROM-a, a da jo uvek zadri dosta od
kvaliteta originala? Posredstvom kodeka, odnosno kompresora-dekompresora! Kodek
se moe koristiti ne samo za video, ve i za grafiku i animaciju.
Broj kodeka za raunare i CD-ROM proizvodnju raste iz dana u dan. Izbor zavisi od
vrste materijala koji se komprimuje i mogunosti raunarskog sistema za koji je
projektovan. Svaki kodek koristi prednosti razliitih svojstava slike da bi ostvario
komprimovanje, stoga vrsta materijala znaajno utie i na to koliko e se
komprimovanje primeniti i koliko dobro e kodek reprodukovati original.

Brzina algoritma
Kodek sadri i algoritam za komprimovanje i algoritam za dekomprimovanje. Brzo
komprimovanje poveava brzinu sa kojom filmovi mogu biti napravljeni, a brzo
dekomprimovanje poveava brzinu sa kojom korisnik moe da prikae i manipulie
materijalom.
Poeljno je da su obe operacije to je mogue bre, ali bre dekomprimovanje je
vanije, naroito za CD-ROM-ove i aplikacije koje se distribuiraju preko mree.
Vremena komprimovanja i dekomprimovanja esto nisu jednaka za iste strimove
podataka. Kodek koji obezbeuje vei stepen komprimovanja tei da potroi znatno
vie vremena za komprimovanje nego za dekomprimovanje.
Performanse kodek algoritma zavise uglavnom od:
Sloenosti algoritma komprimovanja
Efikasnosti i hardvera i softvera u implementiranju algoritma
Brzine korienog procesora i pomonog hardvera

Kvalitet slike
Konani kvalitet slike zavisi od vernosti sa kojom kodek rekonstruie originalne
podatke. Algoritmi za komprimovanje dele se na one sa gubicima (engl. lossy) i na
one bez gubitaka (engl. lossless). Algoritmi bez gubitaka zadravaju sve od
originalnih podataka i stoga se preporuuju za statine (mirne) slike i za memorisanje
arhivskih zapisa. Oni obezbeuju kopije koje su ekvivalentne originalu, nema
gubitaka od jedne generacije do druge. Minimalno komprimovanje proizvodi visok
kvalitet, ali su datoteke jo uvek izuzetno velike, posebno za video materijal.
Kodeci koji koriste algoritme sa gubicima pokuavaju da komprimuju podatke to je
mogue vie, bez primetnog pogoravanja kvaliteta slike. Poto se neki podaci slike
gube i ne mogu se rekonstruisati za vreme dekomprimovanja, oni su pogodni za
filmove u kojima je manje verovatno da gledalac primeti gubitak.

Kratak pregled kodeka

None
Idealni izvorni materijal: Bilo koji.
Podrane dubine bita: Sve.
Vreme komprimovanja: Aproksimativno 1:1.
Da li podrava ograniavanje brzine prenosa? Ne.
Da li podrava komprimovanje bez gubitaka? Da.
None, kodek koji uopte ne vri komprimovanje, pogodan je za digitalizaciju
originalnog video materijala, animacije i za arhivsko smetanje. Korienje None
kodeka na samom poetku rada ne ograniava aplikaciju da koristi kasnije razliite
kodeke za komprimovanje. Moe se koristiti za pretvaranje tzv. pikselske dubine sa
jedne vrednosti na drugu, usled ega se smanjuje potreban memorijski prostor. Na
primer, pretvaranje 32-bitnog materijala u 16-bitni daje stepen komprimovanja 2:1.
Filmovi generisani None kodekom mogu se obraivati u aplikacijama za post-
produkciju, kao to je Premiere.
Napomena: Kada pretvarate podatke punog kolora u indeksirane boje (256 boja ili
manje) korienjem None kodeka, parametar Quality utie na to kako kodek radi
pretvaranje. Kada je ovaj parametar postavljen na Most, stvara se umekana slika, dok
kada je postavljen na Least stvara se posterizovana slika. (Kodek Animation ima istu
osobinu.)
Kodek None moe da pretvori, bez gubitka u kvalitetu, 32-bitnu sliku u 24-bitnu
uklanjanjem bajta kanala alfa. Dubina boje od 24-bita poznata je kao milion ili
TrueColor u svetu PC-ja. Milion Plus je drugi nain za oznaavanje 32-bitne
dubine, to oznaava 24-bitnu dubinu boje sa dodatkom 8-bitne sive skale kanala alfa.
Kanal alfa moe da se koristi za zadavanje prozirnosti maski izmeu razliitih
aplikacija, svojstvo koje je retko potrebno koristiti.
Nije poeljno da se distribuira film raen sa None kodekom, niti je dobar izbor za
memorisanje serija mirnih slika. Umesto njega koristite kodek Animation sa
parametrom Quality postavljenim na vrenost Most.

Animation
Idealni izvorni materijal: Animacija generisana na raunaru.
Podrane dubine bita: Sve.
Vreme komprimovanja: Aproksimativno 3:1.
Da li podrava ograniavanje brzine prenosa? Ne.
Da li podrava komprimovanje bez gubitaka? Da, pri parametru za kvalitet postavljenom na Most.

Kodek Animation koristi algoritam komprimovanja koji je pogodan za animacije i


raunarski generisane video sadraje.
Kodek Animation smeta slike u tzv. RLE (Run-Length Encode) formatu, koji radi ili
u reimu sa gubicima ili u reimu bez gubitaka (kada je parametar Quality postavljen
na Most). Njegove performanse i stepen komprimovanja veoma zavise od tipa slika
koje se komprimuju. Veoma je osetljiv na promene slike, usled ega bolje radi sa
sintetiki generisanim slikama. Slike digitalizovane sa video trake uglavnom sadre
vizuelni um koji naruava inherentnu slinost piksela i smanjuje anse da kodek
Animation ostvari bolje rezultate.
Za razliku od kodeka Graphics, radi sa svim dubinama boje i obezbeuje znatno bre
dekomprimovanje, ali to se plaa smanjenim stepenom komprimovanja. Ponekad je
potrebno jednostavno eksperimentisati sa oba kodeka da bi se utvrdilo koji e bolje
raditi sa CD-ROM aplikacijama. Mada je kodek Animation bri pri
dekomprimovanju, kodek Graphics moe imati prednost zbog utede u vremenu pri
pristupanju manjim datotekama.

Graphics

Idealni izvorni materijal: Raunarska animacija i video.


Podrane dubine bita: 8-bitna kolor/siva skala.
Vreme komprimovanja: Aproksimativno 16:1.
Da li podrava ograniavanje brzine Ne.
prenosa?
Da li podrava komprimovanje bez Da, pri parametru kvaliteta postavljenom na vrednost
gubitaka? Most.

Kodek Graphics je dobra alternativa kodeku Animation kadgod su performanse manje


vane nego stepen komprimovanja (kadgod je vanije ostvariti to manju veliinu
datoteke nego minimizovati vreme komprimovanja). Veliina komprimovane slike
koju stvara kodek Graphics, obino je skoro upola manja od komprimovane slike koju
stvara kodek Animation. Sa druge strane, kodek Animation moe dva puta bre da
dekomprimuje sliku u odnosu na kodek Graphics. Prema tome, kodek Graphics treba
uglavnom koristiti kada se radi sa sporijim memorijskim ureajima. U tim
sluajevima kodek Graphics ima dovoljno vremena da dekomprimuje sliku ili
sekvencu slika.
Filmovi napravljeni kodekom Graphics variraju po veliini od 80x60 piksela do
punog ekrana sa dubinom boje od 8 bitova (256 boja). On je pogodan za video
materijal digitalizovan na 16 ili 24 bita, a zatim umekan svoenjem na 8 bita.

Photo-JPEG

Idealni izvorni materijal: Mirne (fotografske) slike.


Podrane dubine bita: 24-bitne boje, 8-bitna siva skala.
Vreme komprimovanja: Aproksimativno 1:1.
Da li podrava ograniavanje brzine prenosa? Nije na raspolaganju.
Da li podrava komprimovanje bez gubitaka? Da.

Kodek Photo, poznat kao i JPEG, koristi algoritam koji je razvila organizacija poznata
kao Joint Photographic Experts Group. On je pogodan za korienje sa fotografijama i
slikama u kojima se oblasti meaju postepeno; otre ivice i fini detalji nisu njegova
jaka strana. Prema tome, on nije idealan za raunarski generisanu grafiku i linijske
crtee.
Stepeni komprimovanja kodeka Photo mogu iroko da variraju, u zavisnosti od
karakteristika izvornih slika. Opti raspon je od 5:1 do 50:1 za 24-bitne slike, s tim da
je najbolji kvalitet slike u rasponu od 10:1 do 20:1. Pogodan je za veinu aplikacija za
stono izdavatvo. Odlian je u komprimovanju fotografskih slika visoke rezolucije i
radi dosta dobro sa 8-bitnim slikama sive skale.
Poto obezbeuje veoma veliko komprimovanje, a istovremeno zadrava prilino
dobar kvalitet, pogodan je za arhiviranje video klipova. Meutim, kada je najvaniji
kvalitet arhivirane slike, kodek None i kodek Animation su bolji izbor.

Video

Idealni izvorni materijal: Video.


Podrane dubine bita: 16-bitne boje.
Vreme komprimovanja: Aproksimativno 7:1.
Da li podrava ograniavanje brzine prenosa? Ne.
Da li podrava komprimovanje bez gubitaka? Ne.

Kodek Video je mnogo pogodniji za digitalizaciju video sadraja nego za sintetiki


generisane slike. On zadrava prihvatljiv kvalitet slike i isporuuje video sadraje koji
se brzo dekomprimuju. Ovaj kodek podrava i prostorno (veliina) i vremensko
(kvalitet) komprimovanje. Korienjem samo prostornog komprimovanja mogue je
ostvariti stepen komprimovanja izmeu 5:1 i 8:1 sa prihvatljivo dobrim kvalitetom i
16-bitnom dubinom boje piksela. Kombinovanjem prostornog i vremenskog
komprimovanja, stepen komprimovanja se protee u rasponu od 5:1 do 25:1.

Component Video

Idealni izvorni materijal: Video.


Podrane dubine bita: 24-bitne boje.
Vreme komprimovanja: Aproksimativno 1:1.
Da li podrava ograniavanje brzine prenosa? Ne.
Da li podrava komprimovanje bez gubitaka? Ne.

Kodek Component Video, koji je poznat i kao YUV, prvobitno je napravljen za


Quicktime 1.6 i bio je na raspolaganju samo za Macintosh. On obezbeuje bolji
kvalitet video materijala nego obini kodek Video i dobro je prilagoen za montau i
arhiviranje. Stepen komprimovanja je samo 2:1, to je ipak neto u odnosu na kodek
None kod koga nema komprimovanja, i obezbeuje minimalnu potporu ogromnim
koliinama prostora za smetanje digitalnih podataka.
Kada se koristi hardver za digitalizaciju, koji moe direktno da generie Component
Video podatke, zapisivanje ovog formata korienjem Quicktimea skrauje proces
poto nema potrebe za posebnim komprimovanjem video materijala, a time se
poveava i brzina digitalizacije frejmova.

Cinepak

Idealni izvorni materijal: Video.


Podrane dubine bita: 24-bitna kolor i siva skala.
Vreme komprimovanja: Aproksimativno 190:1.
Da li podrava ograniavanje brzine prenosa? Da.
Da li podrava komprimovanje bez gubitaka? Ne.

Napomena: Potrebno je da zadrite horizontalnu i vertikalnu dimenziju frejma kao


umnoke broja 4 da ne utiu na performanse reprodukcije
Ovaj kodek je pogodan za komprimovanje 16-bitnih i 24-bitnih video sekvenci, i
nesumnjivo je najpopularniji kodek. On je visoko asimetrian, to znai da mu je
znatno due vreme komprimovanja frejma nego dekomprimovanja. Na primer, za 24-
bitne slike dimenzija 640x480 piksela, potrebno je preko 150 puta vie vremena za
komprimovanje nego za dekomprimovanje.
Njegova popularnost potie od njegovih sposobnosti da ostvari vie stepene
komprimovanja, bolji kvalitet slike i bru reprodukciju nego kodek Video. Takoe,
moe da dri prenos podataka pri reprodukciji sa CD-ROM-ova u granicama koje je
definisao korisnik.
Da biste postigli najbolje rezultate, ponite sa najistijim nekomprimovanim
digitalizovanim materijalom koji je mogue dobiti. Rezultati e biti znatno loiji kada
su inicijalni video podaci ve bili izloeni gubicima pri kompresiji, kao to je sluaj sa
filmovima prethodno komprimovanim sa kodekom Video.
Savet: Kodek Cinepak radi dobro sa svim vrstama izvornog video materijala, ali je
superioran u odnosu na ostale kodeke u postizanju niske brzine prenosa podataka i u
pretstavljanju kretanja. Cinepak slike, mada nisu savrene, zadravaju detalje i u
sluajevima gde drugi kodeci generiu neprepoznatljivo zamuenje. Sa druge strane,
drugi kodeci mogu da rade sasvim dobro, ili bolje, sa snimcima usporenog kretanja.

Indeo 3.2

Idealni izvorni materijal: Video.


Podrane dubine bita: 24-bitne boje.
Vreme komprimovanja: Aproksimativno 45:1.
Da li podrava ograniavanje brzine prenosa? Da.
Da li podrava komprimovanje bez gubitaka? Ne.

Napomena: Potrebno je da zadrite horizontalnu i vertikalnu dimenziju frejma kao


umnoke broja 4 da ne utiu na performanse reprodukcije
Kodek Indeo 3.2 je po mnogo emu slian Cinepaku. U poreenju sa Cinepakom,
potrebno mu je tri puta manje vremena za komprimovanje video materijala, ali mu je
due vreme obrade pri reprodukciji (dekomprimovanje).
Za video materijal sa scenama dijaloga, kod kojih je pozadina statina, ovaj kodek je
superioran kad su u pitanju kvalitet slike i komprimovanje. Meutim, poto zahteva
dosta procesorskog vremena pri reprodukciji da bi se odrao kvalitet, nije pogodan za
raunare sa slabim procesorom.
Cinepak je verovatno bolji izbor za digitalizaciju video materijala u kunim uslovima.
Preporueni interval kljunih frejmova za Indeo 3.2 je 4, bez obzira na brzinu prenosa
frejmova. On deli sa Cinepakom karakteristiku da brzina prenosa i podeavanje
kvaliteta su meusobno iskljuivi. Mogue je da se izabere neki parametar kvaliteta ili
da se postavi granica brzine prenosa, ali ne oboje.
Napomena: Kada se reprodukuje film sa QTW, Intel preporuuje da se prikljui
Indeo video paleta poto ona poboljava 8-bitni video kvalitet i performanse
reprodukcije. Indeo paleta je ukljuena u kodek.

Indeo Video Interactive

Idealni izvorni materijal: Video.


Podrane dubine bita: 24-bitna.
Vreme komprimovanja: Aproksimativno 90:1.
Da li podrava ograniavanje brzine prenosa? Da.
Da li podrava komprimovanje bez gubitaka? Ne.

Indeo Video Interactive koristi sasvim novi algoritam zasnovan na tzv. wavelet
tehnologiji. Naziva se interaktivni zato to nova svojstva omoguavaju da se
komprimuju video ili grafiki objekti proizvoljnog oblika koji se preklapaju ili na
video ili na grafikoj sceni i interaktivno kontroliu dojstikom, miem ili tastaturom
za vreme reprodukcije. Prethodno je bilo potrebno spojiti slike maski sa pozadinom i
posebno definisanom oblau. Indeo Video Interactive omoguava stvaranje kljunog
izvora koji moe da se pomera bilo kuda na sceni, svojstvo koje je posebno poeljno
za multimedijalne aplikacije i igre.
Indeo Video Interactive je kodek sa normalizacijom, to znai da je mogue da se
prilagoava izmeu nekoliko razliitih nivoa kvaliteta ili opsega, zavisno od
mogunosti procesora raunara na kome se vri obrada. Usled toga na brim
raunarima mogua je glatka reprodukcija punog ekrana, i ak sa visokim kvalitetom.
Prethodne verzije ovog kodeka omoguavale su varijaciju brzine prenosa frejmova i
veliine slike da bi se postigli najbolji rezultati u zavisnosti od performansi procesora
raunara na kome se vri obrada.

JPEG
JPEG je standardizovani algoritam za komprimovanje crno-belih slika i slika u boji
scena iz realnog sveta. On dobro funkcionie kada se primeni na fotografije,
umetnike slike i sline materijale; nije pogodan za pisanu dokumentaciju, linijske i
tehnike crtee. Poto je projektovan tako da koristi poznata ogranienja ula vida,
namenjen je za komprimovanje slika koje e gledati ljudi.
Pogodno svojstvo JPEG-a je to to moe da se menja stepen gubitaka podeavanjem
parametara komprimovanja. To znai da se moe praviti kompromis izmeu veliine
datoteke i kvaliteta slike.
Drugo vano svojstvo JPEG-a je da dekoderi mogu da prave kompromis izmeu
brzine dekodiranja i kvaliteta slike korienjem brzih, ali nepreciznih aproksimacija
kod izraunavanja. (Kod kodera nema smisla praviti kompromis izmeu brzine
kodiranja i kvaliteta slike.)

M-JPEG
Motion-JPEG ili M-JPEG je video adaptacija JPEG (Photo-JPEG) standarda za mirne
slike (fotografije). On jednostavno obrauje video strim kao serije mirnih slika,
komprimujui svaku posebno, bez interfrejm komprimovanja. Poto ne koristi
interfrejm komprimovanje idealan je za video montau; rezovi na bilo kom mestu nisu
problem zbog gubitka kljunih frejmova.
JPEG je bio prvi standard za komprimovanje slika koji je imao podrku specijalnog
hardvera. Adaptacija JPEG ipova za primenu u oblasti videa bila je prirodan
tehnoloki put koji je omoguio brzo prihvatanje ove metode komprimovanja. Na
osnovu M-JPEG ipova napravljeni su mnogi sistemi za nelinearnu montau,
ukljuujui Avid, Radius VideoVision i druge.

MPEG-1
MPEG standard je razvijen kao odgovor na stalno rastue potrebe raunarske
industrije za efikasnim i funkcionalnim nainom da se video i audio informacija
zabelei i uskladiti, a zatim i prikae u realnom vremenu. Grafika i video su oduvek
bili najzahtevniji po pitanju hardvera, poev od koliine i brzine memorije, preko
procesorske snage, do brzine grafikih procesora, hard diskova i ostalih periferija.
Malo je ko mogao nabaviti kvalitetnu multimedijalnu mainu, koja bi razvukla sliku
na ceo ekran, i to 30-ak puta u sekundi. Zato se tragalo za algoritmima koji
omoguavaju veliko komprimovanje, reda 20:1 i vie.
U trenutku nastanka MPEG-1 standarda, osnovni zadatak bio je smestiti digitalizovan
video signal na jeftin CD-ROM. Tadanji CD-ROM drajvovi imali su brzinu transfera
od oko 1.2 megabita (jednobrzinski, 150 KB/s) u sekundi i to su bili okviri u koje je
MPEG-1 morao da se smesti. Iako je standard bio razvijen za CD-ROM medijum, u
igri su bili DAT-ovi, optiki diskovi, ISDN i LAN. Danas su sasvim uobiajeni CD-
ROM drajvovi sa mnogo veom brzinom prenosa, i generalno je prihvaeno da bi
svaki MPEG-1 enkoder morao da podri kodiranje brzinom od 3 Mb/s.
Iako je MPEG-1 prilino fleksibilan, njegovi osnovni algoritmi su podeeni da rade
dobro sa brzinama od 1 do 1.5 Mb/s i sa rezolucijama od oko 350x250 taaka, pri
osveavanju od 25 do 30 slika u sekundi. MPEG-1 kodira progresivno skenirane slike
i ne prepoznaje koncept preplitanja (engl. interlace). Pre no to se pristupi kodiranju
izvornog ispreplitanog signala, mora obaviti konverziju u neispreplitani (non-
interlace) signal. Format kodiranog video signala dozvoljava funkcije kao to su
putanje pokretnih slika unapred i unazad, pauza, premotavanje u oba smera, kao
i pristup svakom segmentu videa.
Za komprimovanje digitalizovanog video signala koristi se nekoliko tehnika:
pododmeravanje (engl. subsampling) informacije o boji, da bi si prilagodila ljudskim
vizuelnim sposobnostima, diferencijalno kodiranje, koje eksploatie prostorne ostatke
u slici (susedne take sa istim parametrima), kompenzacija pokreta, koja koristi
vremenske redundance (delovi slike koji se ne menjaju u vremenu), zatim diskretna
kosinusna transformacija (skraeno DCT), koja omoguava da se iskoriste tipini
statistiki parametri slike. Pomenimo jo i kvantizaciju, kodiranje promenljivom
duinom, entropijsko kodiranje i upotrebu interpoliranih slika.

MPEG-2
MPEG-2 je nastao kao neminovan odgovor na rastue apetite za generikim metodom
kodiranja pokretnih slika i njima pridruenog zvuka, koji bi naao mnogo
raznovrsniju primenu, prevashodno u profesionalnom domenu kablovske televizije.
Da se mislilo ozbiljno, najbolje govori rezolucija u njemu definisane slike, a to je
veoma impozantnih 2 E14 linija, irine isto toliko taaka. U okviru samog standarda
postoje razliiti nivoi i profili, koji su definisani upravo iz trenutne nemogunosti da
se ovolika rezolucija podri hardverskim resursima. Razvoj ovih podsistema
omoguava sisteme sa ogranienom MPEG-2 kompatibilnou i rezolucijom slike od,
za praktinu primenu sasvim komfornih, 720x576 taaka puta frejmova u sekundi.
Bitna razlika u odnosu na MPEG-1 je potpuna podrka konceptu preplitanja, ime je
praktino obezbeen prodor u sferu profesionalne digitalne kablovske televizije. To,
meutim, znatno komplikuje algoritam komprimovanja, iako je teorijski pristup isti
kao kod MPEG-1. Ukljuivanje polja (ispreplitanih frejmova) ini predikciju slike
veoma sloenom, to je i sutinska razlika izmeu ova dva algoritma.
Budunost je u tenji ka objedinjavanju medijskih sistema u jedan jedini,
multimedijalni.

MPEG-4
MPEG-4 je standard za multimedijalne komunikacije, odnosno, otvoreni
internacionalni standard za Web video. Zasnovan je na QuickTime formatu datoteka i
po svoj prilici bie veoma interesantna Web video tehnologija. Mada jo uvek nije
potpuna MPEG-4 implementacija, Microsoft Windows Media Technology koristi
nepotpunu varijantu kodeka sa oznakom MPEG-4v3.
Ovaj standard je usmeren na etiri osnovne stvari:
Modularnu integraciju slika, teksta, audio i video objekata.
Transparentnu distribuciju sadraja od veoma razliitih izvora.
Korisnikovu interaktivnost.
Identifikaciju i zatitu intelektualne svojine.

Fractal
Fraktalno komprimovanje je zasnovano na patentu Dr. Michaela Barnsleya i
karakteristino je po tome to je nezavisno od rezolucije: teoretski moete
normalizovati sliku bez gubitka rezolucije.
Kao i veina ovde pomenutih kodeka, fraktalno komprimovanje je blokovski
orijentisano. Meutim, ovde se slini blokovi predstavljaju matematikim (fraktalnim)
jednainama, a ne koeficijentima u look-up tabeli.
Fraktalno komprimovanje je veoma asimetrino zato to je odreivanja matematikih
jednaina raunski veoma zahtevno. Meutim, dekodiranje slike za prikazivanje je
veoma brzo. Mada ima velike potencijale, fraktalno komprimovanje se za sada koristi
u oblasti striming medija (Web video).

Wavelet
Wavelet komprimovanje vri komprimovanje razlaganjem svakog frejma po
frekventnom sadraju. Ovo omoguava da se ouvaju visokofrekventne informacije
(ivice, fini detalji) korienjem niskog nivoa komprimovanja, dok se niskofrekventni
sadraj komprimuje u veem stepenu.
Wavelet komprimovanje je simetrino, tj. komprimovanje i dekomprimovanje se
obavljaju veoma brzo. Kodeci koji koriste ovu vrstu komprimovanja koriste se u
raznim oblastima obrade slike, pa i u oblasti striming medija.

Hardverski zavisni kodeci


To su kodeci koji proveravaju i zahtevaju da postoji specijalizovani hardver na
raunaru da bi radili. Oni se obino nalaze na vrhunskim karticama za digitalizaciju
koje podravaju video procesiranje punog ekrana (30 frejmova), tj. 60 poluslika u
sekundi. Usled pomoi hardvera pri komprimovanju i reprodukciji, vie podataka
moe da se provue kroz raunar, to daje veu veliinu slike i kvalitet. Primeri
internih kodeka su oni koji su implementirani sa karticama Radius Studio i Targa
2000.

U sledeoj tabeli dat je pregled osnovnih karakteristika kodeka.


Tabela 22.1 Poreenje kodeka

Kodek Brzina Gubi Prostorno Vremensko Primenjiv u Veliina Broj Poseban Kvalitet
prenosa ci komprimo komprimov montanim frejma poluslik hardver
Mb/s vanje anje sistemima a
Cinepak 0,1 4 Da Da Da Da 160x120 8 30 Ne Dobar
640x480
Indeo 3.2 0,1 4 Da Da Da Da 160x120 8 30 Opciono Dobar
320x240
M-JPEG 1 10 Da Da Ne Da 160x120 60 Da Vrlo
640x480 dobar
MPEG-1 1,5 Da Da Da Ne 352x240 30 Da Dobar
MPEG-2 1,5 100 Da Da Da Da 720x480 60 Da Vrlo
dobar
Fractal 0,1 4 Da Da Da Da 160x120 8 30 Da Dobar
640x480
Wavelet 0,1 4 Da Da Da Da 160x120 8 30 Ne Dobar
320x240
Digital 135 Da Da Ne Da 720x480 60 Da Odlian
Betacam
CCIR 601 270 Ne Ne Ne Da 720x480 60 Da Izuzetan

Hafmanovo kodiranje
Pre nego to se upustimo u objanjavanje JPEG i MPEG kodiranja moramo da
objasnimo neke pojmove, a pre svega Hafmanovo kodiranje, koje je oblik kodiranja
informacije kodnom rei promenljive duine, a koje koristi minimalni potrebni broj
bitova (entropija). Ono koristi injenicu da u informacionoj povorci podataka za datu
promenljivu moe biti dato N bitova, ali svih 2N kombinacija bitova se ne koriste ili
bar ne sa jednakom verovatnoom.
Ukratko, idealno Hafmanovo kodiranje radi na sledei nain: uredi simbole u niz po
opadajuem redosledu pojavljivanja; dodeli bit 0 simbolu sa najveom verovatnoom,
bit 1 onom to je ostalo; uradi isto za drugu najveu vrednost verovatnoe (koja sada
ima kd 10), i tako radi do kraja niza.
U praksi ovo moe da da dugaku knjigu kodova i stoga neprikladno raunski
intenzivno kodiranje i dekodiranje, zato se ee koriste skraeno Hafmanovo
kodiranje ili druge modifikovane procedure. Skraeno Hafmanovo kodiranje kodira
samo vrednosti najvee verovatnoe prema gore navedenom pravilu i koristi kodiranje
fiksnom duinom za ostatak.

Entropija
Izvorno je izvedena kao veliina koja dozvoljava da se formalno izrazi II princip
termodinamike. Takoe, entropija je koncept koji se koristi u teoriji informacija; ako
je N stanja mogue, svako je okarakterisano verovatnoom pi, gde je

(22.1)

Tada je

(22.2)

entropija, tj. donja granica broja bitova potrebnih da se opiu svi delovi sistema; to
odgovara informacionom sadrju sistema. Ovo se koristi kod komprimovanja
podataka: kodiranjem entropije omogueno je korienje neuniformnih uzoraka bitova
u nekim kvantizacionim algoritmima. Jedna od efikasnih tehnika kodiranja je
Hafmanovo kodiranje.
Prema tome, kod Hafmanovog kodiranja individualni simboli, koji sainjavaju
poruku, predstavljaju (kodiraju) se sekvencama bitova koje imaju razliitu duinu.
Ova karakteristika kodne rei doprinosi da se smanji iznos redundanse u poruci, tj. to
omoguava komprimovanje. Na primer, simboli A, B, C i D predstavljeni su sledeim
kodnim reima:

Simbol Kodna re
A 0
B 10
C 110
D 111

Simboli A i B imaju razliite duine kodnih rei (0 i 10). Na prvi pogled izgleda
da kodne rei nisu jedinstveno dekodabilne. Ali snaga Hafmanovih kodova je u
injenici da su sve kodne rei jedinstveno dekodabilne. Prema tome, sekvenca bitova:
011011101100 se jedinstveno dekoduje kao ACDABA.
Smanjivanje redundanse u podacima Hafmanovim kodovima zasnovano je na
injenici da razliiti simboli imaju razliitu verovatnou pojavljivanja. Ova injenica
omoguuje da napravite takve kodne rei koje zaista doprinose smanjenju redundanse,
tj. komprimovanju. Simboli sa veom verovatnoom pojavljivanja kodiraju se sa
kraim kodnim reima, dok simboli sa manjom verovatnoom pojavljivanja kodiraju
se sa duim kodnim reima. Iako ne moemo spreiti pojavu duih kodnih rei, zbog
svoje manje verovatnoe one e doprineti optimalnosti koda.

Formiranje Hafmanovih kodova


Algoritam za formiranje Hafmanovih kodova zasnovan je na tzv. stablu kodiranja.
Procedura je sledea:
1. Poreajte simbole u opadajui niz verovatnoa pojavljivanja.
2. Poveite dva simbola sa najmanjim verovatnoama u jedan novi simbol ija je
verovatnoa jednaka sumi verovatnoa ta dva simbola.
3. Ponavljajte korak 2 sve dok ne izgeneriete simbol ija je verovatnoa jednaka 1.
4. Proite stablom kodiranja od korena (generisani simbol verovatnoe 1) do
originalnih simbola i dodelite svakoj donjoj grani 1, a svakoj gronjoj grani 0.
Primer:
Predpostavimo da imamo sledei tekst: ABACAD.
Napravimo tabelu verovatnoa.

Simbol Verovatnoa
A
B 1/3
C 1/3
D 1/3

Sada formirajmo stablo kodiranja.

Slika 22.5 Stablo kodiranja.

JPEG komprimovanje
Pria o JPEG-u (izgovara se dej-peg) standardu poinje sredinom 80-tih godina, u
vreme kada su snaga mikropocesora i kapaciteti hard diskova personalnih raunara,
kao i propusni opsezi raunarskih mrea, dovoljno napredovali da se moglo
razmiljati o tretiranju digitalnih slika kao ravnopravnog tipa podataka sa tekstom ili
geometrijskom grafikom. Osnovni problem sa digitalnim slikama jeste njihova
veliina: pomnoite rezoluciju 640*480 sa 16 ili 24 bita po pikselu, koliko je potrebno
da se dobije fotorealistian kvalitet, pa ete videti da je za jednu sliku potrebno 900
KB. Meutim, svi oni koji su se bar malo bavili rasterskom grafikom, verovatno su
uoili da su digitalne slike tip podataka veoma pogodan za komprimovanje, poto su
susedni pikseli esto identini ili se razlikuju za male vrednosti. Veina standardnih
formata za rastersku grafiku (na primer, GIF) podrava jednostavne metode
komprimovanja, koji su najee neka varijacija kodiranja promenljivom duinom
(engl. run-length). Prednost ovakvih metoda je to su komprimovanje i
dekomprimovanje jednostavni i brzi, ali se njima ne postie puni nivo
komprimovanja, koji je inae mogu. Razlog je to se kod run-lenght kodiranja koristi
samo slinost piksela po horizontali (horizontalna koherencija), a ne i po vertikali.
Vremenom su nastali savreniji metodi za komprimovanje, koji su bili naroito
prilagoeni prirodi digitalnih slika, ali je problem bio to se na tritu javilo vie
razliitih metoda koji su bili meusobno nekompatibilni. U meunarodnim
komitetima za standardizaciju ISO i CCITT je uoena ova situacija, ali i znaaj
primene digitalnih slika na personalnim raunarima, pa su preduzeti napori koji su
rezultirali definisanjem JPEG standardnog algoritma za komprimovanje digitalnih
slika, koji je danas u veoma irokoj upotrebi.
JPEG dolazi od Joint Photographic Experts Group i oznaava dve grupe koje su u
bliskoj saradnji radile na izradi standarda, a koje su osnovali CCITT i ISO. Zacrtani
ciljevi su bili da se osmisli algoritam koji e u pogledu iznosa komprimovanja biti
uporediv sa u tom trenutku postojeim algoritmima na tritu, koji e biti primenjiv na
svaku vrstu digitalnih slika sa kontinualnim tonovima (odnosno koji nee biti
ogranien odreenom rezolucijom ili nainom predstavljanja boja) i koji nee biti
previe raunski komplikovan, tako da se moe implementirati sa prihvatljivim
performansama, kako u hardveru sa jeftinim VLSI kolima, tako i u softveru. Rad na
standardizaciji je zapoet 1986. godine, objavljivanjem poziva za predloge. Stiglo je
12 predloga, od kojih su u junu 1987. godine prvim skupom testova izdvojena tri
najbolja. Potom su formirane tri neformalne radne grupe koje su radile na
unapreenju ovih predloga, da bi se onda prelo na jo jedno rigorozno testiranje.
Posle svega, kao najbolji se izdvojio metod komprimovanja zasnovan na diskretnoj
kosinusnoj transformaciji (DCT). U periodu od 1988. do 1990. JPEG grupa je radila
na daljem usaglaavanju standarda, da bi potom standard uao u normalnu ISO,
odnosno, CCITT proceduru usvajanja.
Treba napomenuti da se ovaj tekst odnosi na onaj deo JPEG standarda koji definie
sekvencijalno kodiranje (u JPEG terminologiji kodiranje je praktino sinonim za
komprimovanje). Naime, JPEG standard definie etiri vrste kodiranja, od kojih su tri
zasnovane na diskretnoj kosinusnoj transformaciji, pri emu je sekvencijalno
kodiranje osnovni metod od njih. Sva tri metoda spadaju u takozvane lossy metode, a
to znai da se polazna slika ne moe 100 posto tano reprodukovati nakon
dekomprimovanja. Meutim, dobija se izuzetno veliki stepen komprimovanja, koji ide
i do 50:1. Takoe, JPEG standard predvia da se izborom odgovarajuih parametara
pri komprimovanju moe fino podeavati odnos izmeu stepena komprimovanja i
vernosti reprodukcije. etvrti metod predvien JPEG standardom je loseless metoda,
to znai da je njome garantovana tana reprodukcija polazne slike nakon
dekomprimovanja. Ovaj algoritam se inae zasniva na jednostavnoj prediktivnoj
metodi, gde se na osnovu aritmetike sredine vrednosti susednih piksela predvia
vrednost sledeeg piksela. Potom se pamti samo razlika intenziteta piksela u odnosu
na vrednost dobijenu predikcijom. Ovom metodom se, meutim, postie proseni
nivo komprimovanja od svega 2:1.

Osvrt na DFT
Pre nego to vidimo kako JPEG funkcionie, moramo se bar malo upoznati sa nekim
pojmovima vezanim za digitalnu obradu signala. Oni koji znaju Furijeovu
transformaciju mogu slobodno da preskoe ovaj deo teksta, a oni drugi ne treba da se
plae - sve to nam treba da bi razumeli JPEG su, u sutini, dve jednaine.

(22.3)

Furijeova transformacija je osnovni alat za obradu analognih signala. Ona daje


jednaine kojima se neki periodini signal predstavlja beskonanom sumom sinusnih i
kosinusnih funkcija, da bi se mogli svi periodini signali razmatrati istim
matematikim alatima. Signali u realnom svetu najee nisu periodini, ali u veini
sluajeva nas zanima samo odreeni vremenski interval, pa onda moemo rei da je
upravo taj interval jednak trajanju jedne periode signala, a da je izvan njega signal
koga posmatramo periodian. Dakle, Furijeovom transformacijom se signal prebacuje
iz vremenskog u frekventni domen i Furijeovi koeficijenti odreuju amplitude
pojedinih frekvencija signala. Postoji i inverzna Furijeova transformacija, koja
odreuje amplitude signala u vremenskom domenu, na osnovu vrednosti koeficijenata
signala u frekventnom domenu.
Digitalni signal se dobija odmeravanjem (neki vie vole izraz odabiranjem)
analognog signala sa odreenom uestanou odmeravanja. Ovo znai da se
kontinualni signal predstavlja nizom vrednosti (odmeraka odnosno odbiraka), koje je
imao u odreenim trenucima, gde broj odmeraka u jedinici vremena predstavlja
uestanost odmeravanja. Pandan Furijeovoj transformaciji analognog signala je
diskretna Furijeova transformacija (DFT), tj. direktna diskretna kisinusna
transformacija (DCT) digitalnog signala. DFT daje vrednosti amplituda signala na
tano odreenim, dakle diskretnim, uestanostima u frekventnom domenu.
Furijeova transformacija nije ograniena na signale koji se menjaju u zavisnosti od
vremena: na isti nain moemo nai Furijeove koeficijente signala koji je konstantan
u vremenu, a menja se, recimo, po nekoj od prostornih osa; upravo to je sluaj sa
digitalnom slikom, gde je digitalni signal intenziteta funkcija dveju prostornih
koordinata x i y.

Prikaz algoritma
Radi jednostavnosti, za poetak emo se ograniiti na sliku koja je predstavljena
nijansama sivog. Osnovni koraci JPEG algoritma su prikazani na slici 22.6 i to su
direktna diskretna kosinusna transformacija (FDCT), kvantizacija i kodiranje
entropije (koje sadri varijaciju run-lenght kodiranja).
Slika 22.6 JPEG algoritam

Kako smo ve rekli, veina slika poseduje jaku koherenciju u vertikalnom i


horizontalnom smeru, to znai da se intenzitet sporo menja unutar svakog veeg
bloka piksela. Blage promene digitalnog signala ukazuju da on ima izraene
komponente na niskim frekvencijama, dok je veina visokofrekventnih komponenti
jednaka 0. Na ovoj injenici poiva osnovna ideja JPEG algoritma: slika e biti
predstavljena u frekventnom domenu, gde e imati malo komponenti razliitih od 0 i
onda e se bolje komprimovati - znamo da je run-length kodiranje vrlo efikasno ako
treba komprimovati nizove sa uzastopnim identinim elementima.
JPEG algoritam posmatra sliku kao niz blokova od 8*8 piksela. Intenzitet u svakom
pikselu moemo shvatiti kao prostornu funkciju od dve promenljive - x i y. Ako je
svaki piksel slike predstavljen sa P bitova, onda e se numerika vrednost intenziteta
kretati u rasponu od 0 do 2P-1, to znai da intenzitet moemo smatrati brojem bez
predznaka (engl. unsigned). JPEG algoritam, meutim, ove vrednosti ipak posmatra
kao brojeve sa znakom (signed), dakle, kao da su u opsegu od -2P-1 do 2P-1-1. Tako
se tedi bit po DCT koeficijentu - kompletnu raunicu emo izvesti kasnije.

Direktna DCT
Jednaina koja daje vrednosti koeficijenata direktne diskretne kosinusne
transformacije (Forward DCT - FDCT) za polje 8*8 odmeraka ima oblik (22.3) gde je
C(u)=C(v)=1/sqrt(2) za u,v=0 i C(u)=C(v)=1 u suprotnom. Jednaina inverzne DCT
(Inverse DCT - IDCT) daje vrednosti signala u funkciji prostornih koordinata x i y,
ako su poznati koeficijenti njegove diskretne kosinusne transformacije (22.4).
Dakle, direktna diskretna kosinusna transformacija na ulazu prima diskretni signal
intenziteta u 64 take, da bi na izlazu dala niz od 64 koeficijenta, koji odgovaraju
dvodimenzionim prostornim frekvencijama. Prvi koeficijent odgovara srednjoj
vrednosti intenziteta u bloku 8*8 odmeraka i oznaava se kao DC koeficijent, dok se
63 preostala zovu AC koeficijentima. Kako se intenzitet prostorno sporo menja,
veina AC koeficijenata ima vrednosti bliske 0. Diskretna kosinusna transformacija je
reverzibilna: na osnovu vrednosti 64 koeficijenta mogu se pomou IDCT tano
rekonstruisati polazne vrednosti intenziteta u 64 take. Prema tome, DCT nije izvor
gubitaka informacija prilikom komprimovanja. Dodue, male netanosti uvode
raunanje kosinusa, jer se kosinus, kao i druge trigonometrijske funkcije, moe
odrediti samo sa konanom preciznou.

Kvantizacija
Nakon obavljene transformacije, pristupamo kvantizaciji koeficijenata. Oni bi, zbog
mnoenja sa kosinusima, u principu trebalo da budu predstavljeni brojevima sa
pokretnim zarezom, ali ljudsko oko nije u stanju da razlikuje male promene, pa se za
svaki od DCT koeficijenata odreuje korak kvantizacije, koji mora biti u opsegu od 1
do 255, potom se vrednosti koeficijenata podele sa odgovarajuim korakom
kvantizacije, a onda zaokrue na ceo broj. Na ovaj nain se dobija niz koeficijenata
DCT u kome figuriu mali celi brojevi i u kome ima veliki broj koeficijenata jednak 0,
to je sve povoljno za trei korak komprimovanja - kodiranje entropije.
Jedan skup vrednosti koraka kvantizacije za svaki od 64 koeficijenta je kao predlog
priloen uz JPEG standard: naime, u toku izrade standarda izvren je veliki broj
testova za svaki od DCT koeficijenata. Testovi su se odvijali tako to se na jednoj slici
vrednost datog koeficijenta poveavala u koracima po 1, a polazna i novodobijena
slika su stalno vizuelno uporeivane. Onog trenutka kada bi razlika postala uoljiva,
vrednost koraka kvantizacije za dati koeficijent bi se definisala kao prethodni
inkrement, dakle kao najvei inkrement za koji vizuelna razlika jo uvek nije uoljiva.
Prilikom testiranja su koriene slike raznolikog sadraja, koje su, opet, posmatrane sa
razliitih distanci. Prilikom implementacije JPEG algoritma se mogu koristiti ove
vrednosti ili se, ako je u pitanju neka specifina aplikacija, mogu sprovesti sopstveni
testovi i koristiti njima dobijene vrednosti koraka kvantizacije.
Kvantizacija predstvlja osnovni uzrok gubitaka pri komprimovanju, a korak
kvantizacije je glavni parametar kojim se balansira odnos stepena komprimovanja i
vernosti reprodukovane slike. Ako uzmemo vee korake kvantizacije, koeficijenti e
biti predstavljeni niim vrednostima, a takoe e biti vei broj koeficijenata jednakih
0. Ovo daje vei stepen komprimovanja pri kodiranju entropije, ali e zato razlike
izmeu originalne i dekomprimovane slike biti uoljivije.

Kodiranje entropije
Trei i poslednji deo komprimovanja je kodiranje entropije i pri ovom postupku DC
koeficijenti se tretiraju odvojeno od AC koeficijenata: DC koeficijent predstavlja
srednju vrednost intenziteta u polju od 8*8 odmeraka i prirodno je da se DC
koeficijenti susednih blokova ne razlikuju mnogo - opet koherencija, ovog puta na
makro-nivou. Da bi se i ova injenica iskoristila za to vee komprimovanje, DC
koeficijenti se ne belee po apsolutnoj vrednosti, ve kao razlika u odnosu na DC
koeficijent prethodnog 8*8 bloka. AC koeficijenti se potom preureuju u niz po
rastuim prostornim frekvencijama. Ovaj niz, prema tome, ima oblik F(0,1), F(1,0),
F(2,0), F(1,1), F(0,2), i tako dalje, i esto se naziva cik-cak sekvencom.
JPEG standard nudi izbor izmeu dva naina kodiranja entropije za svaki od etiri
metoda komprimovanja, a to su Hafmanovo kodiranje i aritmetiko kodiranje. Mada
aritmetiko daje neto bolje komprimovanje, Hafmanovo se ee koristi, jer je
jednostavnije za implementaciju, a aritmetiko kodiranje prate i odreeni sporovi
vezani za autorska i patentna prava.

Pre Hafmana
U prvom koraku pri Hafmanovom kodiranju, cik-cak sekvenca koeficijenata se
prevodi u jednu meusekvencu u kojoj se nulti AC koeficijenti kodiraju duinom run-
a, to jest niza uzastopnih nultih koeficijenata. Tu razlikujemo dva tipa simbola, koji
uvek prate jedan drugog: simbol 1 se odnosi na run nultih koeficijenata i u svoja via
etiri bita daje njihov broj (RUNLENGTH), dok u nia etiri bita daje broj bitova
(SIZE) kojima je predstavljen nenulti AC koeficijent, koji prekida run-a; simbol 2
zauzima onoliko bitova koliko je odreeno poljem SIZE u prvom simbolu i oznaava
se sa AMPLITUDE.
Kako je RUNLENGTH polje duine etiri bita, najvea duina run-a je ograniena na
15. Ako postoji niz nultih AC koeficijenta duih od 15 lanova, tada jednostavno u
SIZE polje prvog simbola stavimo 0, 2 to znai da simbol 2 nee ni postojati, ve e
odmah da usledi novi simbol 1, kao oznaka novog niza nultih AC koeficijenata.
Ukoliko iza nekog nenultog AC koeficijenta slede samo nulti A koeficijenti do kraja
bloka, za simbol 1 se stavlja RUNLENGTH=0, SIZE=0 - ovaj simbol ne moe nastati
nikakvom kombinacijom vrednosti AC koeficijenata i zato se koristi kao EOB, to jest,
signal kraja bloka AC koeficijenata.
Kako SIZE polje simbola 1 ima duinu etiri bita, njime se mogu predstaviti vrednosti
od 0 do 15, to znai da amplituda nenultog AC koeficijenta mora biti u opsegu od
-215 do 215-1. Ako analiziramo jednainu za FDCT, imajui u vidu da su intenziteti
f(x,y) u granicama od -128 do 127 i da su kosinusi uvek manji od 1, te da je
minimalni korak kvantizacije jednak 1, moemo da proraunamo da su vrednosti AC
koeficijenata uvek u opsegu od -1024 do 1023, to znai da je opseg amplituda koji
daje SIZE polje i vie nego dovoljan. Ovde vidimo prednost onog polaznog tretiranja
intenziteta kao brojeva sa predznakom, a ne kao brojeva bez predznaka: da smo
intenzitete tretirali kao brojeve bez predznaka, maksimalna amplitida AC koeficijenta
bi iznosila 2047, umesto 1023.
Sami bitovi koji predstavljaju amplitudu se ne mogu posmatrati kao binarne vrednosti
koeficijenata, pa tako, na primer, ako je SIZE=1, imamo vrednosti AMPLITUDE
polja 0 i 1. Meutim, ovim kodovima su zapravo predstavljene vrednosti
kvantizovanog koeficijenta od -1 i 1; ako je koeficijent jednak 0, on je predstavljen
run-om. Analogno, ako je SIZE=2, vrednosi AC koeficijenta, koje su predstavljene sa
etiri mogue kombinacije bitova, su -3, -2, 2 i 3, i tako dalje.
Meusekvenca za DC koeficijente se formira na slian nain, ali ovde simbol 1 ima
samo etiri bita, odnosno samo SIZE polje, dok simbol 2, kao i za AC koeficijente,
sadri AMPLITUDE kod (podsetimo se da je se DC koeficijente kodiraju razlikom u
odnosu na vrednost DC koeficijenta u prethodnom bloku).
Na ovako pripremljenu meusekvencu primenjuje se dobro poznato Hafmanovo
kodiranje opisano ranije. Svaku sliku komprimovanu JPEG algoritmom mora, dakle,
da prati i look-up tabela sa Hafmanovim kodovima, koji se mogu proraunati za svaku
sliku prilikom komprimovanja ili se moe koristiti opti skup Hafmanovih tabela,
dobijen statistikom analizom velikog broja slika, tipinih za datu aplikaciju.

Dekomprimovanje
Tok dekomprimovanja je prikazan na slici 22.7 i moe se videti da je u odnosu na
komprimovanje sled dogaaja inverzan. Najpre se, pomou odgovarajue look-up
tabele, menjaju Hafmanovi kodovi, da bi se potom iz ovako dobijene meusekvence
ekspanzijom simbola 1, odnosno simbola 2, dobio niz od 64 DCT koeficijenta za
svaki blok 8*8 odmeraka. Sledei korak je dekvantizacija, koja se izvodi prostim
mnoenjem svakog od koeficijenata sa odgovarajuim korakom kvantizacije.
Vrednosti koraka kvantizacije se oitavaju iz kvantizacione look-up tabele, koja se
upisuje u datoteku sa komprimovanim podacima. Nakon ovoga koeficijenti se vraaju
iz cik-cak sekvence u polaznu sekvencu, a na kraju se za svaki blok odmeraka
obavlja inverzna DCT, ime se rekonstruiu polazne vrednosti intenziteta.

Slika 22.7 Dekomprimovanje


Naem izlaganju oito nedostaje malo boje: JPEG podrava kolor ravni, razne
modernije varijante DCT algoritma kao i progresivno, odnosno, hijerarhijsko
kodiranje. Ali to je ve tema za neku obimniju knjigu.

MPEG standardi
MPEG standard se sastoji iz tri dela: video, audio i sistemskog. Sistemski deo govori
nam o nainu kombinovanja video i audio podataka u zajedniki bitstrim (engl.
bitstream termin koji je teko prevodiv; u domaoj starijoj literaturi iz oblasti
elektronike prevoen je kao povorka). Bitstrim predstavlja niz bitova koji nosi
informaciju o slici i/ili zvuku. Za razliku od onoga to je za oekivati, video i audio
deo standarda ne govori nam o nainu video i audio komprimovanja, ve opisuje
format bitstrima i nain njegovog dekodiranja. Sam proces kodiranja je ostavljen, da
tako kaemo, na volju autorima softvera, odnosno hardvera. Dokle god rezultujui
bitstrim zadovoljava specifikacije, sve je u redu. Zato je to tako uraeno?
Pre svega, MPEG komprimovanje je, slino JPEG komprimovanju mirne slike,
lossy komprimovanje, tj. dekodiranjem MPEG datoteke neemo dobiti originalnu
datoteku. To e rei da se MPEG pakovanjem neumitno neto gubi (kasnije emo
videti da taj gubitak i nije tako veliki - ak je moda i neprimetan). MPEG enkorder
se trudi da taj gubitak bude to manji. Upravo zato ovaj postupak nije propisan
eksplicitno kako bi nezavisni proizvoai imali slobodu da taj vrlo vaan deo urade
to kvalitetnije, a i sa nadom da e se vremenom doi do jo kvalitetnijih algoritama
za MPEG komprimovanje.
Pogledajmo karakteristike standarda MPEG-1 : to se tie videa, algoritam MPEG-1
je u stanju da ide sve do rezolucije od 4k 4k (40964096), meutim zbog nekih
drugih inilaca dogovoreno je da slika bude veliine 352240 taaka (za NTSC
standard TV standard u SAD) ili 352288 (PAL, SECAM TV standardi u Evropi).
U prvom sluaju standard kae da ima 30 slika u sekundi, dok u drugom postoji 25.
Samim tim koliina podataka koju treba zabeleiti ostaje ista (240*30 = 288*25).
Ogranienje u rezoluciji proizilazi iz potrebe da ukupan protok podataka (i video i
audio) ide do 1,5 Mbit/s, koliko iznosi brzina jednobrzinskih CD-ROM ureaja. Ako
se sa brojki vratimo u stvaran svet, videemo da je kvalitet MPEG-1 videa negde u
klasi VHS video ureaja. Pri tome mislimo na kvalitetno presnimljene video trake, a
ne na loe kopije iz lokalnog video kluba. Nesumnjiva prednost standarda MPEG-1 u
odnosu na VHS je zvuk. Kvalitet MPEG audio zapisa je vrlo blizak kvalitetu CD
audio ploa, a za razliku od klasinog VHS-a moe da bude i stereo (dodue postoje i
VHS stereo ureaji, ali su dovoljno retki da ih zanemarimo).
U standardu MPEG-1 zvuk moe biti enkodiran na jedan od tri naina. Oni se
oznaavaju kao slojevi (engl. layer) 1, 2 ili 3. Svaki sledei sloj nudi vee
komprimovanje uz bolji kvalitet zvuka. Sloj 1 je praktino preuzet iz Philipsovog
standarda PASC, ugraenog u njihove DCC (Digital Compact Cassette) ureaje. Sloj
2 je kvalitetniji (ali samim tim i komplikovaniji), pa nalazi primenu u malo
ozbiljnijim ureajima (na primer, kablovska televizija, satelitski prenosi, digitalni
radio), dok se sloj 3 koristi za telekomunikacije (ISDN linkovi) i u profesionalnim
audio ureajima. Moda najiru primenu sloj 1 i sloj 2 imaju u CD ureajima. Radi se
(ponovo) o Philipsovom standardu za zapis (izmeu ostalog) i video filmova
(ukljuujui zvuk u stereo tehnici) na obian kompakt disk. Trajanje filma na CD
video disku je isto kao i trajanje odgovarajueg audio CD-a, to iznosi oko 74 minuta.
Kako sve to radi?
Pre svega treba naglasiti da se video i audio komprimovanje rade odvojeno, razliitim
algoritmima, a zatim se vri kombinovanje audio i video bitstrima u jedan zajedniki
bitstrim. Rad sa zasebnim algoritmima za komprimovanje je sasvim logian kad se
ima u vidu da ulo sluha i ulo vida imaju potpuno razliite karakteristike. Recimo,
dinamiki opseg ula sluha je mnogo vei nego kod ula vida. Drugim reima, odnos
najtieg i najglasnijeg zvuka koji je mogue uti je vei nego odnosa najtamnijeg i
najsvetlijeg detalja koje oko moe razlikovati. Sem toga, kod ula vida postoji jo
jedna dimenzija, a to su boje.
Zbog ega toliko insistiramo na fiziolokim karakteristikama ula? Upravo zato to se
MPEG komprimovanje velikim svojim delom zasniva na prouavanju naina na koji
ovek uje i vidi stvari, i primeni tih saznanja.

Zvuk
Pogledajmo sad kako radi MPEG audio komprimovanje: zvuni spektar se deli na 32
podopsega i, analiziranjem svakog od njih, kao i njihovog meusobnog odnosa,
zakljuuje se ta se moe odstraniti iz signala (a moe ono to ionako ne bismo uli) a
da ne doe do znaajnog gubitka kvaliteta. Dakle, vidimo da je i MPEG audio lossy
komprimovanje. Pri ovom procesu se polazi od fiziolokih karakteristika sluha,
odnosno naina na koji uho reaguje na podraaje iz okoline.
Jedna od bitnijih karakteristika sluha (bitnijih sa stanovita MPEG komprimovanja)
jeste da uho nije u stanju da u isto vreme uje dva zvuka relativno slinih frekvencija,
a razliitog intenziteta. Recimo, u sluaju emitovanja tonova frekvencija 2000 i 2100
Hz, pri emu je ovaj drugi ton tii svega nekoliko puta, ovek e uti samo prvi. Ako
se zatim umesto tona od 2100 pusti ton frekvencije od recimo 4000 Hz, uho e ga
primetiti ak i ako je mnogo puta tii u odnosu na prvi ton od 2000 Hz. Odavde sledi
zakljuak da u ton od 2100 HZ i ne moramo da upisujemo u izlazni bitstrim. Razlika
nee biti ni primeena, a bitstrim e biti krai od originalnog zvunog zapisa, to je i
cilj.
U realnoj situaciji gde se zvuk prostire du celog spektra, ovaj efekat maskiranja
frekvencija je jo izraeniji. Osim toga, ne samo da za vreme trajanja, ve i neko
krae vreme pre (2-5 ms), i neto due vreme posle glasnog zvuka (oko 100 ms) uho
nije u stanju da uje frekvencije bliske tom zvuku koje su jaeg intenziteta. Samim
tim nema potrebe da beleimo ni te podatke.
Sledea osobina sluha koja se koristi u MPEG audio komprimovanju je da osetljivost
uha opada od niih ka viim frekvencijama. Kod oveka je maksimum osetljivosti oko
2 4 kHz. Preko tih frekvencija ovek sve slabije uje i to se onda moe kodirati sa
manje bitova. U sluaju kodiranja stereo zvuka postoji velika slinost signala levog i
desnog kanala, pa se i ta injenica veto koristi. Takoe, uho nije u stanju da oceni
odakle dolazi zvuk izuzetno niskih frekvencija (setite se samo principa rada
zvunikih sistema sa subwoofer zvunikom kod kojih je samo jedan zvunik zaduen
za emitovanje najdubljih basova iako se radi o stereo sistemu), pa je ove zvuke
dovoljno beleiti samo jednom ak i u sluaju stereo zvuka. Najnie frekvencije nose i
najveu energiju, pa su i utede pri kodiranju velike.

Slika
Komprimovanje video signala vri se na bitno drugaiji nain. Prvi stepen
komprimovanja obavlja se prelaskom sa RGB zapisa na YUV. Komponenta Y se
naziva luminentna i govori o osvetljenosti, dok su U i V hrominentne komponente i
nose informaciju o boji pojedine take slike. Ulazna (RGB) slika rezolucije 352240
(odnosno 352288) se u MPEG-1 enkoderu transformie u YUV sliku, pri emu se
rezolucija U i V komponente prepolovi na 176120. Naime, oveje oko je mnogo
osetljivije na promene u osvetljenju, nego na promene u boji, tako da se ovim
smanjenjem rezolucije ne gubi toliko mnogo, kako se to ini na prvi pogled.
Dalje komprimovanje se zasniva na razlici izmeu pojedinih frejmova. Ako
pogledamo da se u sekundi prokazuje 30 (odnosno 25) frejmova (slika), logino je
pretpostaviti da e razlika izmeu pojedinanih slika biti vrlo mala. MPEG enkoder
zbog toga ne belei svaku sliku, ve zabelei prvu, a za svaku sledeu belei samo
razlike u izgledu slike. Ta prva slika koja se belei cela naziva se intrafrejm (I frejm).
Dodue, ni ona se ne belei u izvornom obliku, ve se komprimuje.
Sem intrafrejma u MPEG video komprimovanju postoji i P frejm (P dolazi od
engleske rei predicted onaj koji se mogao predvideti) i B frejm (engl.
bidirectional). P frejm je frejm nastao na osnovu I frejma i odgovarajuih informacija
o razlici izmeu frejmova, ili na osnovu prethodnog ve rekonstruisanog P frejma i,
naravno, informacija o razlici.
Razlika izmeu frejmova rauna se tako to se slika deli na makroblokove veliine
88 taaka (za U i V kanale), odnosno 1616 taaka (za Y kanal). Nad ovim
blokovima vri se diskretna kosinusna transformacija (DCT). Ako se razlika izmeu
istih blokova susednih frejmova pokae dovoljno malom, onda se ona kao takva i
zapisuje, dok se u suprotnom taj blok zapisuje intra-kodiran (tj. potpuno isto kao i kad
bi pripadao intrafrejmu).
Da bi komplikacija bila jo vea, uvode se i bidirekcioni frejmovi (B frejmovi).
Enkoder rauna razliku izmeu trenutnog i sledeeg frejma, i na kraju razliku izmeu
trenutnog frejma i srednje vrednosti prethodnog i sledeeg frejma. Od ove tri
vrednosti usvaja se ona koja je najmanja, ili u sluaju da nijedna od njih nije
odgovarajue mala usvaja se originalna vrednost frejma. Ove razlike se takoe
raunaju nad blokovima 88 (odnosno 1616) nad kojima je prethodno izvrena
diskretna kosinusna transformacija. Postoji i ogranienje da se svakih 12 frejmova
mora pojaviti bar jedan intrafrejm (tj. originalna slika), to otprilike dolazi na pola
sekunde.
Pored MPEG-1, ostalo nam je da obradimo standarde MPEG-2, MPEG-3 i MPEG-4.
Standard MPEG-3 je rvobitno zamiljen kao osnova za HDTV (HIGH Definition TV)
sa rezolucijom do 19201080 ( uz 30 slika u sekundi). Vremenom se dolo do
zakljuka da se ovaj standard sasvim lepo uklapa u standard MPEG-2 (koji podrava
rezolucije do 16k16k) tako da je sada i ukljuen kao podskup standarda MPEG-2.
Dakle MPEG-3, kao takav, vie ne postoji.
Standard MPEG-2 izrastao je na nedostacima standarda MPEG-1. Potreba da se sa
kvaliteta slike bliskog VHS-u pree na kvalitet slike profesionalnih studijskih TV
ureaja dovela je do definicije MPEG-2 rezolucije od 720486 (uz 30 slika u
sekundi).
Sledea stvar koja razlikuje standarde MPEG-2 od MPEG-1 je mogunost kodiranja
tzv. ispreplitanih (engl. interlacing preplitanje) pokretnih slika. Preplitanje se odnosi
na nain na koji se na TV aparatu iscrtavaju slike. Iako se TV prikaz u sutini sastoji
od 25 (30 po amerikom standardu) frejmova (slika) u sekundi, svaka slika se iscrtava
iz dva puta. U prvom prolazu se iscrtavaju prvi, trei, peti itd. red slike, a u drugom
preostali (parni) redovi slike. Ti prolazi se nazivaju poluslike (engl. field).
to se tie zvuka, MPEG-2 uvodi i nove frekvencije odmeravanja: 16 kHz; 22,05 i 24
kHz. Kod standarda MPEG-1 postoje vrednosti od 32 kHz; 44,1 kHz i 48 kHz.
MPEG-1 ima podrku za do dva kanala (bilo nezavisna, bilo stereo), dok MPEG-2
radi sa 5,1 kanalom. Verovatno e vas ovo pet zapeta jedan zbuniti, meutim, ne
dajte se. Radi se naprosto o igri brojkama. Standard podrava 5 normalnih kanala, sa
dodatkom jednog kanala za specijalne efekte sa propusnim opsegom do 100 Hz.
Odatle dolazi ono - zapeta jedan. U ovih pet kanala moe da se smesti viejezika
podrka (moi emo da biramo koji jezik sluamo dok gledamo recimo MPEG-2 film,
ili seraund (surround- okruivati) zvuk. Surround je sistem kod kojeg pored
klasinog levog i desnog kanala postoje dodatni kanali koji stvaraju iluziju zvuka koji
vas okruuje, dajui tako realistiniju zvunu sliku.

Algoritam i terminologija
MPEG hijerarhija je ureena preko slojeva, da bi se dobilo na fleksibilnosti i
efikasnosti cele strukture. Slojevi unutar MPEG videa navedeni su u sledeoj tabeli.

Tabela 22.2 MPEG slojevi i odgovarajue funkcije


Sloj sekvence Direktan pristup sadraju
Sloj grupe slika Direktan pristup videu
Sloj slike Primarno kodiranje
Sloj odseka Resinhronizacija unutar slike
Sloj makrobloka Kompenzacija kretanja unutar odseka
Sloj bloka DCT unutar makrobloka

Svaki sloj podrava specifinu funkciju, na primer: sloj sekvenca odreuje


parametre kao to su veliina slike, odnos visine i irine, broj slika u sekundi, broj bita
u sekundi, i tako dalje. Ovakva slojevita struktura obezbeuje robusnost i poveava
otpornost na greke.

Slika 22.8 Struktura bloka.

Na dnu hijerarhijskog stabla nalazi se taka, odnosno blok od 64 take ureene u


matricu 8x8. Ako ste bolje zagledali neki video klip komprimovan MPEG
algoritmom, verovatno ste uoili upravo kvadrate dimenzija 8x8, na koje je slika
izdeljena. Blokovi su osnovna jedinica za kodiranje i DCT se primenjuje na ovaj nivo.
Za potrebe kodiranja, blokovi su grupisani u takozvane makroblokove, a jedan
makroblok sadri est blokova, i to: etiri luminentna i dva hrominentna (Cr i Cb).
Slika 22.9 Struktura makrobloka.

Sekvenca makroblokova zove se odseak (engl. slice). Odseak moe biti red
makroblokova i moe ak poeti u jednom redu a zavriti se u drugom. Svaki frejm
sastoji se od vie odseaka. Mogua struktura odseaka prikazana je na slici 22.10.
Svaka boja predstavlja poseban odseak.

Slika 22.10 Mogua struktura odseaka frejma.

MPEG video sastoji se od etiri tipa frejma (slike): I frejmovi ili intrafrejmovi, koji se
kodiraju nezavisno od svih ostalih; P frejmovi ili pretpostavljeni frejmovi, koji se
kodiraju pomou kompenzacije pokreta iz prethodnog frejma; B frejmovi ili
bidirekcionalno pretpostavljeni frejmovi, koji se kodiraju uz pomo interpolacije iz
prolog i budueg frejma i D frejmovi ili DC frejmovi, u koje je implementirana samo
niskofrekventna komponenta, a namenjeni su samo za brzo pregledanje i
premotavanje. B i P frejmovi se zovu najee interfrejmovi (meuslike).
Slika 22.11 Relacije izmeu MPEG frejmova.

Pomenimo jo i parametre M i N, gde M+1 predstavlja broj frejmova izmeu dva


sukcesivna I i P frejma, dok N+1 oznaava broj frejmova izmeu sukcesivnih I
frejmova.Tipina ema za kodiranje bi sadrala meavinu I, P i B frejmova i to tako
da bi se I frejm pojavljivao posle svakih 10 do 15 frejmova, a dva B frejma izmeu
dva susedna I frejma (slika 22.11).
Obino grupa slika (engl. Group Of Pictures GOP) ima jedan I frejm i vie P i B
frejmova. Mada ne postoji ogranienje u pogledu veliine grupe slika, uobiajena
vrednost je 15.
Veina ovih parametara moe se zadati u toku faze kodiranja, tj. moete zadati mustru
za GOP, dimenzionisati odseak, eljeni broj frejmova u sekundi itd. Svaki od ovih
slojeva ima zaglavlje koje se koristi za sinhronizaciju. Ako se deo odseka izgubi,
dekoder e preskoiti ostatak odseka kada otkrije greku i nastavie dekoderanje od
poetka sledeeg odseka.
Dekodiranje MPEG-1 videa je raunski veoma intenzivna operacija, tako da
dekodiranje u realnom vremenu treba raditi sa raunarom koji ima bar procesor
Pentium na 350 MHz.

MPEG komprimovanje
MPEG-1 algoritam je baziran na dve kljune tehnike, prostornom i vremenskom
komprimovanju: vremensko komprimovanje se oslanja na slinost izmeu dva
sukcesivna frejma i koristi predvianje i kompenzaciju pokreta, dok je prostorno
komprimovanje usmereno prema otklanjanju monotonih delova u okviru jednog
frejma i izgraeno je oko DCT transformacije, kvantizacije i entropijskog kodiranja.
Interfrejmovi (B i P) se kodiraju upotrebom kompenzacije pokreta i to prevashodno
predvianjem i interpolacijom. Pretpostavljeni frejm se dobija iz prethodnog frejma
modifikacijom, pomou tehnike kompenzacije pokreta. Vektori kretanja se primenjuju
na sva etiri luminentna bloka u makrobloku, a za hrominentne blokove se
izraunavaju iz luminentnih vektora. Ova tehnika se oslanja na pretpostavku da se, u
okviru jednog makrobloka, razlika izmeu dve sukcesivna frejma moe predstviti
jednostavno kao vektorska transformacija. Jednostavnije reeno, tehnika se zasniva na
tome da su razlike izmeu dva susedna frejma veoma male, s tim da je kljuna razlika
u poziciji taaka.
Interpolacija (ili bidirekcionalna predikcija) generie visoki stepen komprimovanja,
zahvaljujui injenici da se frejm predstavlja kao interpolacija dva frejma, budueg i
prolog, I ili P frejma. Sve se ponovo odvija na nivou makrobloka. Vano je
napomenuti da se frejmovi ne prenose linijom u redosledu za prikazivanje, ve u
onom koji pogoduje dekoderu, koji dekodira niz bitova. Ovo se radi usled toga to su
dekoderu potrebne referentni frejmovi, da bi pomou njih dekodirao interpolirane i
predviene frejmove.

Prostorno komprimovanje
Tehnika prostornog komprimovanja je slina onima iz JPEG, DCT, kvantizacionog ili
entropijskog kodiranja i maksimalno koristi redundance u okviru svakog bloka (8x8
taaka). Rezultujui niz bitova je stvoren iz kombinacije prostornog i vremenskog
komprimovanja, koja najbolje odgovara tipu frejma koji se komprimuje. Dekodiranje
se kontrolie upotrebom MPEG sistemskih kodova, koji se integriu u niz podataka i
slue za rekonstrukciju segmenata, kao to je prikazano na slici.

Slika 22.12 Tipina sekvenca frejmova u redosledu za prikazivanje.

Kroz kombinaciju raznih tehnika, MPEG-1 je projektovan za kvalitet koji je slian


onome na VHS-u ili ak neto bolji. Kvalitet reprodukcije, meutim, dosta zavisi od
kvaliteta slike koja se komprimuje i nivoa redundance u okviru kodirane sekvence,
kao i od toga kako je sekvenca kodirana i koji su zahtevi pred nju postavljeni. Ukoliko
je, na primer, potrebno brzo pretraivanje i pristup bilo kom delu sekvence, N e teiti
nuli, pa e kvalitet komprimovanja neminovno opasti. U suprotnom, ako je brzo
pretraivanje od manjeg znaaja, broj interfrejmova (P i B frejmovi) moe da se
povea, ime se praktino postie vei stepen komprimovanja. Standard ne odreuje
strogo metod komprimovanja, ve uglavnom sintaksu komprimovanih podataka,
omoguavajui na taj nain prilagoavanje razliitim zahtevima. Time se obezbeuje
fleksibilnost u kodiranju uz zadran format i hijerarhiju i osigurava kompatibilnost
niza podataka.

ta predikcija znai?
Zamislite jedan I frejm koji prikazuje crveni trougao na beloj pozadini. Naredni frejm,
P frejm, prikazuje isti trougao ali na drugoj poziciji. Predikcija znai da smo
obezbedili vektor kretanja koji deklarie kako da se pomeri trougao u I frejmu da se
dobije trougao u P frejmu. Ovaj vektor kretanja je deo MPEG strima (povorke) i
podeljen je na horizontalni i vertikalni deo. Ovi delovi mogu biti pozitivni ili
negativni. Pozitivna vrednost znai kretanje u desno ili kretanja na dole, respektivno.
Negativna vrednost znai kretanje u levo ili kretanje na gore, respektivno.

Slika 22.13 I i P frejm su povezani vektorom predikcije.

Ovi delovi vektora kretanja su u opsegu od 64 do +63. Prema tome, navedena oblast
moe biti udaljena do 64x64 piksela. Meutim, ovaj model predpostavlja da svaka
promena izmeu frejmova moe biti izraena kao linearan pomeraj piksela. Sa slike
22.14 vidimo da to nije tano. Pravougaonik na slici je pomeren u desno i zarotiran za
5 stepeni. Samo jednostavan (linearan) pomeraj piksela e izazvati greku predikcije.
Stoga MPEG povorka sadri matricu za kompenzovanje ove greke predikcije.

Slika 22.14 Desna slika je dobijena pomeranjem leve slike u levo i rotiranjem za 5
stepeni.

Usled toga rekonstrukcija interkodiranih frejmova obavlja se u dva koraka:


1. Primena vektora kretanja na navedeni frejm;
2. Dodavanje rezultatu iz prvog koraka kompenzacije greke predikcije.
Slika 22.15 Rekonstrukcija interkodiranih frejmova.

Zapazite da kompenzacija greke predikcije zahteva manje bajtova nego ceo frejm
zato to su beli delovi nula i mogu biti izbaeni iz MPEG povorke. Dalje, DCT
komprimovanje se primenjuje na greku predikcije to smanjuje njenu memorijsku
veliinu.

ta ako se neki delovi kreu levo a drugi desno?


Vektor kretanja ne vai za ceo frejm. Umesto toga frejm je podeljen na makroblokove
od po 16x16 piksela. Svaki makroblok ima sopstveni vektor kretanja. Naravno, ovime
se ne izbegava kontradiktorno kretanje, ali se minimizira njegova verovatnoa.

Slika 22.16 Makroblok.

A ta ako se kontradiktorno kretanje ipak pojavi?


Jedna od najveih pogreki kod MPEG tehnike komprimovanja je da se smatra da su
svi makroblokovi P frejmova predvieni. Ako je greka predikcije velika koder moe
da odlui da intrakodira makroblok. Slino, makroblokovi u B frejmovima mogu biti
unapred predvieni ili unazad predvieni ili unapred i unazad predvieni ili intra
kodirani.
Kao to znate, svaki makroblok sadri 4 luminentna i 2 hrominentna bloka. Svaki
blok ima dimenzije od 8x8 vrednosti. Luminentni blokovi sadre informaciju o
sjajnosti svakog piksela u makrobloku. Hrominentni blokovi sadre informaciju o
boji. Zbog poznatih svojstava ljudskog oka nije potrebno davati informaciju o boji za
svaki piksel. Umesto toga 4 piksela su vezana za jednu vrednost boje. Ova vrednost
boje je podeljena na dva dela. Prvi je Cb u bloku boje a drugi Cr. Informacija o boji
primenjuje se kao to je pokazano na slici 22.17.

Slika 22.17 Luminentni i hrominentni blokovi.

U zavisnosti od vrste makrobloka blokovi sadre informaciju o pikselu ili informaciju


o greki predikcije. U svakom sluaju, informacija se komprimuje korienjem DCT.

DCT
Kao to je prethodno reeno, vrednosti bloka 8x8 se kodiraju DCT-om. Da bismo ovo
objasnili koristiemo sliku 22.18. Prikazano jezgro je uveana 8x8 oblast crno-belog
frejma.

Slika 22.18 Uveana oblast, dimenzija 8x8 piksela, crno-belog frejma.

Tabela 22.3 Sjajnost svakog piksela je izraena numerikom vrednou


120 108 90 75 69 73 82 89
127 115 97 81 75 79 88 95
134 122 105 89 83 87 96 103
137 125 107 92 86 90 99 106
131 119 101 86 80 83 93 100
117 105 87 72 65 69 78 85
100 88 70 55 49 53 62 69
89 77 59 44 38 42 51 58

Uobiajen nain je da se odredi sjajnost svakog od 64 piksela i one se normalizuju


(skaliraju) prema nekim granicama, recimo od 0 do 255, gde 0 oznaava crno a
255 oznaava belo. Takoe, ove vrednosti moemo predstaviti u obliku 8x8
stubiastog dijagrama. Naravno, vrednosti se procesiraju liniji po liniju. Ovo zahteva
64 bajta memorije.
Slika 22.19 Vrednosti sjajnosti piksela predstavljene stubiastim dijagramom.

Napomena: MPEG koristi vrednosti u opsegu od 256 do +255.

Meutim, moete definisati svih 64 vrednosti preko 5 celobrojnih vrednosti ako


primenite sledeu formulu, tj. diskretnu kosinusnu transformaciju:

(22.5)

gde je f(x,y) sjajnost piksela na poziciji (x,y). Rezultat je matrica F, takoe dimenzija
8x8.

Tabela 22.4 Vrednosti dobijene diskretnom kosinusnom transformacijom.


700 90 100 0 0 0 0 0
90 0 0 0 0 0 0 0
-89 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

Ali kao to vidite, skoro sve vrednosti su jednake nuli. Poto su ne-nula vrednosti
grupisane u gornjem delu matrice, ona se prenosi prijemniku u cik-cak redosledu,
to kao rezultat daje sledee: 700 90 90 89 0 100 0 0 0 ... 0.
Slika 22.20 Vrednosti matrinih lanova prenose se prijemniku u cik-cak redosledu.

Naravno, nule se ne prenose. Znak EOB (End Of Block) se umesto toga kodira.
Dekoder moe da rekonstruie vrednosti piksela preko formule koja se naziva
inverzna kosinusna transformacija:

(22.6)

Gde je F(u,v) transformisana matrina vrednost na poziciji (u,v). Rezultati su tane


vrednosti originalnih piksela. Prema tome, MPEG komprimovanje moe se smatrati
komprimovanjem bez gubitaka. Meutim, to nije tano, zato to se transformisane
vrednosti kvantizuju. To znai da se one dele sa nekom vrednou veom ili jednakom
8 poto DCT obezbeuje vrednosti do 2047. Da bismo ih redukovali ispod duine
bajta, primenjuje se bar kvantizaciona vrednost 8. Dekoder mnoi rezultat istom
vrednou. Naravno, rezultat se razlikuje od originalne vrednosti. Meutim, opet zbog
svojstava ljudskog oka, greka nije vidljiva. Kod MPEG-a postoji kvantizaciona
matrica koja definie raziitu kvantizacionu vrednost za svaku transformisanu
vrednost, u zavisnosti od njene pozicije.

Da li je dobro izabran primer?


Ne nije! DCT uvek tei da izrauna nule. Ovaj efekat je potpomognut kvantizacijom
koja svodi na nulu male vrednosti. Da bismo to razumeli, moramo spoznati sutinu
DCT. Da bismo to postigli poimo sa suprotne strane.
Primenimo IDCT na matricu koja sadri samo jednu vrednost, 700, u gornjem levom
uglu.
Tabela 22.5 Vrednosti lanova matrice.
700 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
Rezultat IDCT je dat u sledeoj tabeli.

Tabela 22.6 Vrednosti dobijene primenom IDCT na prethodnu matricu.


87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87
87 87 87 87 87 87 87 87

Stubiasti dijagram ima oblik prikazan na slici 22.21.

Slika 22.21 Stubiastim dijagramom predstavljene su vrednosti dobijene IDCT-om.

Naravno, slika je jedan sivo obojeni kvadrat. Vrednost u gornjem levom uglu naziva
se DC vrednost. To je skraenica engleskog naziva direct current i odnosi se na slian
fenomen u teoriji naizmeninih struja, gde naizmenina struja (engl. alternating
current - AC) moe imati jednosmernu (direct) komponentu. Kod DCT DC vrednost
odreuje srednju sjajnost u bloku. Sve ostale vrednosti opisuju varijaciju oko ove DC
vrednosti. Prema tome, one se ponekad oznaavaju kao AC vrednosti.
Dodajmo sada matrici jo jednu AC vrednost, 100.

Tabela 22.7 Matrica sa dva lana.


700 100 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

Rezultat IDCT dat je u sledeoj tabeli.


Tabela 22.8 Vrednosti dobijene primenom IDCT na prethodnu matricu.
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70
105 102 97 91 84 78 73 70

Slika 22.22 Stubiasti dijagram vrednosti iz prethodne tabele.

Slika 22.23 Rezultujua slika.

Kao to moete da vidite, vrednosti variraju oko DC vrednosti 87. Dalje, ako obratite
panju na oblik stubiastog dijagrama videete krivu slinu polovini kosinusoide. Na
osnovu toga moe se zakljuiti da slika ima frekvenciju 1 u pravcu X-ose.
Zamislimo kola koja idu konstantnom brzinom, sa leva u desno, du ulice
stubiastog dijagrama paralelno sa X-osom. Suprotno od DC primera, kola se tresu
sa izvesnom frekvencijom, ali samo ako prate X-osu. U Y pravcu ona se kreu du
iste visine u toku celog puta. Ovo ponaanje se dokumentuje u trnasformacionoj
matrici poto se samo AC vrednost 100 pojavljuje u X pravcu.
Razmotrimo ta se deava ako stavimo AC vrednost 100 na sledeu poziciju.

Tabela 22.9 Vrednosti matrice.


700 0 100 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

Tabela 22.10 Vrednosti dobijene primenom IDCT na prethodnu matricu.


104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104
104 94 81 71 71 81 94 104

Slika 22.24 Stubiasti dijagram.

Slika 22.25 Rezultujua slika.

Stubiasti dijagram ima oblik kosinusoide. Meutim, sada vidimo punu periodu, tj.
frekvencija je dva puta vea nego u prethodnom primeru. Ovakvo ponaanje e se
nastaviti ako pomeramo AC vrednost korak po korak u desno. U svakom koraku
poveava se frekvencija kosinusoide.

ta se deava ako postavimo dve AC vrednosti?

Tabela 22.11 Vrednosti matrice.


700 100 100 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

Tabela 22.12 Vrednosti dobijene primenom IDCT na prethodnu matricu.


121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86
121 109 91 75 68 71 80 86

Slika 22.26 Stubiasti dijagram.

Slika 22.27 Rezultujua slika.

Prema obliku stubiastog dijagrama zakljuujemo da je dolo do meanja prve i druge


kosinusoide. U stvari, rezultujua AC vrednost je prost zbir kosinusoida.

Dodajmo sada AC vrednost u drugom pravcu.

Tabela 22.13 Vrednosti matrice.


700 100 100 0 0 0 0 0
200 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

Tabela 22.14 Vrednosti dobijene primenom IDCT na prethodnu matricu.


156 144 125 109 102 106 114 121
151 138 120 104 97 100 109 116
141 129 110 94 87 91 99 106
128 116 97 82 75 78 86 93
114 102 84 68 61 64 73 80
102 89 71 55 48 51 60 67
92 80 61 45 38 42 50 57
86 74 56 40 33 36 45 52

Slika 22.28 Stubiasti dijagram.

Slika 22.29 Rezultujua slika.

Sada vrednosti variraju u pravcu Y-ose. Princip je: to je vei indeks AC vrednosti, to
je vea frekvencija.
Na kraju, postavimo AC vrednost dijagonalno u odnosu na DC vrednost. Ve znamo
ta to znai: najvia mogua frekvencija (8) primenjena je i na X i na Y pravac.

Tabela 22.15 Vrednosti matrice.


950 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 500
Tabela 22.16 Vrednosti dobijene primenom IDCT na prethodnu matricu.
124 105 139 95 143 98 132 114
105 157 61 187 51 176 80 132
139 61 205 17 221 32 176 98
95 187 17 239 0 221 51 143
143 51 221 0 239 17 187 95
98 176 32 221 17 205 61 139
132 80 176 51 187 61 157 105
114 132 98 143 95 139 105 124

Slika 22.30 Stubiasti dijagram.

Slika 22.31 Rezultujua slika.

Zbog visoke frekvencije susedne vrednosti se razlikuju znatno. Slika ima oblik
ahovske table. Imajte u vidu da ovo jezgro od 8x8 piksela moe biti uveanje dela
realne slike. Koliko se to esto moe pojaviti? Ja verujem da je takav sluaj veoma
redak (seldom). Zbog toga DCT izraunava u skoro svakom sluaju nule za vie
frekvencije.

Kodiranje kretanja
Najsloeniji zadatak MPEG kodera je procena kretanja. Pretraivanje i donoenje
odluke u ovom delu algoritma su vremenski veoma zahtevni za softversku aplikaciju.
Takoe, oni optereuju memoriju i raunske funkcije na svim, pa ak i na namenskim
hardverskim sistemima. Bez dobre procene kretanja koderu ostaje da kodira mnogo
vie podataka za P i B frejmove, a kompromis izmeu brzine i kvaliteta e biti mnogo
tee posii. Plivanje kroz mutne vode procene kretanja dae vam bolji uvid u rad
MPEG kodera i pomoi da odredite realistine parametre za svoju ciljnu aplikaciju.
MPEG enkoder deli svaki frejm u makroblokove, obino od po 16x16 piksela. Za
svaki makroblok estimator kretanja pokuava da odredi gde postoji u prethodnom
frejmu taj blok informacija ili neki slian njemu. To radi poreenjem informacija u
tekuem makrobloku sa informaijom iz makroblokova prethodnog frejma.
Kod potpunog pretraivanja svi makroblokovi iz prethodnog frejma se procenjuju.
Postoji vie algoritama sa ogranienim pretraivanjem koji se mogu koristiti da se
donesu inteligentna predvianja o kretanju i tako smanje zahtevi za procesiranjem.
Kada je pretraivanje uspeno uraeno, sistem definie vektor kretanja za makroblok i
kodira razliku izmeu dva makrobloka. Razmotrimo dva skupa makroblokova iz dva
razliita frejma prikazana na slici 22.32. Informacija u makrobloku 6 frejma 2 je
veoma slina sa informacijom u makrobloku 2 frejma 1. Vektor kretanja sa X-
komponentom jednakom 1 i Y-komponentom jednakom 1 treba da pokazuje na
odgovarajuu lokaciju za pretraivanje informacije za makroblok 6. Meutim, postoje
neke razlike izmeu ova dva makrobloka. Ove razlike e biti kodirane zajedno sa
vektorom kretanja tako da kompletna slika makrobloka 6 moe da se poalje MPEG
povorkom.

Slika 22.32 Kako se objekt pomera du vidnog polja tokom sekvene frejmova, MPEG
koder definie vektor kretanja sa obe (X i Y) komponente da bi opisao kako se objekat
pomerio sa prethodne lokacije.

Kada dekoder treba da rekonstruie makroblok 6 iz frejma 2, on e pretraiti


informaciju od makrobloka 2 iz frejma 1, a zatim dodati nazad rezidualnu informaciju
koja je bila specijalno kodirana za makroblok 6.
Ako algoritam za procenu kretanja ne moe da nae dobro podudaranje
makroblokova, blokovi e biti intrafrejm kodirani, kao to e biti opisano u sledeem
odeljku. To zahteva vie bitova, tako da bolji MPEG koder obavlja procenu kretanja i
daje bolji finalni MPEG video kvalitet pri datoj ciljnoj brzini prenosa binarnih
podataka (engl. bitrate).

Kodiranje
Pogledajmo par primera kako ove matematike manipulacije utiu na to kako MPEG
koder vidi video materijal. Prelazi predstavljaju poseban izazov za MPEG kodere.
Razmotrimo to na primeru pretapanja, kod koga svaki piksel svakog frejma moe biti
promenljiv. U zavisnosti od praga osetljivosti estimatora kretanja MPEG kodera,
moda nee moi da se nae valjan vektor kretanja. U ovom sluaju makroblokovi u
svim frejmovima moraju biti kodirani kao glomazni I frejmovi, a ne kao kompaktni P
frejmovi i B frejm razlike. Zahtevi za propusnim opsegom kod ovih frejmova e usled
toga se dramatino poveati.
Postoje dva pristupa problemima koji se javljaju kod kodiranja prelaza. Jedan pristup,
prostiji, je da se povea ciljna brzina prenosa binarnih podataka. Dobri MPEG-2
koderi nude promenljivu brzinu (engl. variable bitrate VBR) kodiranja koja doputa
da podeavate brzinu iz scene u scenu. Bez VBR-a morate da poveate konstantnu
brzinu kodera za ceo video. Mada kodiranje konstantnom brzinom moe savreno da
odgovara vaoj aplikaciji, lepo je da imate na raspolaganju VBR opciju.
Drugi metod koji obrauje prelaze obuhvata menjanje sadraja. Ako su va prostor ili
propusni opseg tesni kada pokuavate da sabijete vie od dva sata videa na
jednostrani DVD, morate da pravite kompromis izmeu kvaliteta i kvantiteta. Zato
pravite to je mogue krae prelaze i neka je sadraj uz prelaze jednostavan. Ako to
nije dovoljno, pokuajte sa jednostavnim brisanjem umesto pretapanja.
Kada vaa kamera zumira subjekt, pojavna veliina objekata menja se na takav nain
da estimator kretanja moe da detektuje velike razlike, ali nee moi da pokupi
valjan vektor kretanja. Ako se va MPEG video prekine dok kamera zumira, moraete
da pokuate komprimovanje ponovo. Ako elite da poveate brzinu, skratite snimak
(zum) ili ak preite na statian snimak ako ga imate.
Kada se neki objekat kree u slici, nova informacija o pozadini otkriva ono to nije
bilo vieno u prethodnim frejmovima. Estimator kretanja u P frejmovima nee moi
da nae vektore kretanja za ove novootkrivene makroblokove. Zato su B frejmovi
toliko vani za efikasnost MPEG-a. On gleda, kako ispred sebe, tako i iza sebe, da bi
utvrdio kretanje. Novootkrivene oblasti ne postoje u prethodnim frejmovima, ali e
postojati u narednom ili sledea dva frejma, tako da vektor kretanja moe da se
pridrui tim makroblokovima. Rezultatntni vektori razlike mogu biti veoma mali,a
efikasnost kodiranja se odrava.

Osnovni koncepti komprimovanja


Kao to je poznato, svaka slika se deli na makroblokove. Kada je odreen vektor
kretanja za makroblok u P ili B frejmu, razlika izmeu tekueg makrobloka i
makrobloka na osnovu koga je vektor odreen. Ako je estimator kretanja MPEG
kodera obavio svoj posao, tada e razlika biti veoma mala ili nula. Ako nije, fleg je
postavljen i makroblokovi se intrafrejm kodiraju.
Poto se obavi ovo procesiranje makroblokova, P i B frejmovi se dalje dele u blokove
od 8x8 piksela. I frejmovi se takoe dele na isti nain da bi se uradilo intrafrejm
procesiranje. Dijagram ovog blok po blok algoritma prikazan je na slici 22.33.

Slika 22.33 Posle procene kretanja za P i B frejmove, svaki makroblok frejma je


promenjen DCT-om u frekventni domen. Kvantizer zatim redukuje broj bitova koji se
koriste za opisivanje podataka u frekventnom domenu. Kodiranje entropije sortira
kvantizovane podatke da omogui bolje komprimovanje. Bafer dri parametre
kvantizacije tako da oni mogu da se ubace u zaglavlje finalnog MPEG bloka.

Jezgro MPEG kodera za procesiranje bloka je DCT koja transformie prostornu


informaciju o elementima slike u frekventni domen. Ovo omoguava koderu da
posmatra na koji nain se informacija slike menja, a ne kako je nae oi vide.
Numeriki koeficijenti se dodeljuju svakom bloku elementa slike koji predstavlja
stepen varijacije slike.
Ako je estimator kretanja uradio svoj posao, koeficijenti P i B frejmova predstavljaju
samo promene izmeu dva frejma. Nae oi su manje osetljive na detalje u slici koji
se kreu, tako da koeficijenti viih frekvencija mogu da se menjaju ili ak eliminiu,
bez uticaja na vizuelno opaanje. Na osnovu toga MPEG postie nie brzine prenosa
uz zadravanje visokog kvaliteta.
Koder menja DCT koeficijente u kvantizeru koji redukuju broj bitova kojima e
predstavljati te koeficijente koji nisu toliko bitni za sliku. Preteranom kvantizacijom
eliminiu se bitni detalji iz slike i stvaraju se vidljivi blokovi oko ivica objekata koji
se kreu. Malom kvantizacijom koder se dri iznad svoje ciljne brzine prenosa
binarnih podataka. Meutim, koderi imaju povratnu spregu po brzini koja omoguava
da kvantizer sam sebe podeava na osnovu ciljne brzine koju koder treba da ostvari.
Kodiranje entropije sortira kvantizovane koeficijente od vie ka manje estim tako da
algoritam moe biti ak efikasniji. Potom se koristi tabela kodiranja promenljivom
duinom da se dodele kodovi svakom elementu tako to se kodovi krae duine
dodeljuju eim elementima, a dui kodovi reim elementima u sekvenci.
Odakle potiu MPEG-ove utede na propusnom opsegu?
Gubici kod MPEG algoritma potiu od kvantizacionog procesa, koji moe da se
menja unutar frejma. DCT koeficijenti ne odbacuju podatke. Kao to je prikazano na
slici 22.33, kvantizacioni parametri se prosleuju u bafer tako da mogu da se alju kao
blok zaglavlja povorke. Podaci se dalje komprimuju korienjem razliitih algoritama
za kodiranje entropije, ali da naglasim, nema gubitka informacije u ovom koraku.
ak i non-lossy elementi procesa kodiranja utiu na to koliko e MPEG koder morati
da radi. Dubina bita (engl. bit depth) koristi se za izraunavanje DCT, podeavanje
brzine i fleksibilnosti kvantuzera, a sofisticiranost kodiranja entropije globalno utie
na efikasnost MPEG kodera.

Pretapanja, napliv i MPEG


Pogledajmo kako ove matematike manipulacije mogu da utiu na video. Razmotrimo
pretapanje primenjeno na dve mirne slike. Postojae razlike u svakom bloku slike
koja koristi pretapanje. Meutim, poto su obe slike mirne, estimator kretanja treba da
definie vektor kretanja (0,0). Zatim, promene za vreme prelaza znae da e se DCT
koeficijenti pojaviti za svaki piksel u bloku a kvantizacija moda mora biti grublja da
bi se odrala brzina. Verovatno ete videti blokovsku strukturu za vreme pretapanja,
pogotovo ako postoji dosta kontrastnih detalja u slici koja se nalazi ispod.
Razmotrimo sada horizontalni napliv. Bez kretanja postojae veliki delovi slike koji
ostaju konstantni u vie frejmova. Poto nema promene iz frejma u frejm, DCT
koeficijenti su nula a efikasnost kodiranja je veoma visoka. U taki na slici gde se
pojavljuje napliv DCT koeficijenti se javljaju ali samo za horizontalan pravac. Ne
postoje vertikalne komponente za DCT i stoga se manje podataka kodira nego u
sluaju pretapanja.
Otar rez e zahtevati da koder ubaci dodatni I frejm u sekvencu. U zavisnosti od
duime prelaza i sadraja koji se nalazi ispod, moda e biti sluajeva kada e otar
rez biti jednostavno bolji izbor. Meutim, imajte na umu da e mnogo otrih rezova
kod sloenih brzih scena zahtevati da se ubaci vie I frejmova i da to moe opteretiti
koder upravo kao pretapanje. Ako ogranienja za datu brzinu nisu suvie stroga,
sloeni prelazi i sadraj su sasvim prihvatljivi.
Kod snimaka sa mnogo kretanja, DCT se realno samo primenjuje na male razlike koje
se pojavljuju zbog zamuenja kamere, osvetljenja ili novih objekata koji se otkrivaju
iza objekata koji se kreu. Ako estimator kretanja radi svoj posao, to je sve. Neznatne
razlike od frejma do frejma pojavljuju se u DCT tabeli kao niskofrekventni
koeficijenti i visok stepen kvantizacije moe da se primeni. Ovo daje veoma efikasno
kodiranje.
Vano je imati na umu da se podaci gube samo za vreme faze kvantizacije. Koliko
dobro koder radi sve korake do kvantizacije i koliko dobro rade mehanizmi za
kontrolu brzine zajedniki odreuju koliko e biti vidljivi gubici usled kvantizacije.
Na kraju, vaa ciljna brzina odreuje koliko e biti teak posao kvantizera.

Promenljiva brzina
Neki MPEG koderi imaju ugraena svojstva koja pomau da postignete ciljnu brzinu.
Dva najvanija su promenljiva brzina (engl. variable bitrate VBR) i vieprolazno
kodiranje.
MPEG-1 je projektovan za konstantnu brzinu, to znai da se svakoj GOP dodeljuje
isti broj bitova da podeli izmeu tri tipa frejmova. MPEG-2 je takoe projektovan da
koristi konstantnu brzinu, ali standard takoe dozvoljava korienje VBR-a. Sa VBR-
om, razliiti delovi sekvence mogu se kodirati sa razliitom brzinom, slika VVV.
VBR doputa da delovi videa sa brzim kretanjem koriste vie bitova a spore sekvence
da dobiju manje bitova. Ukupni kvalitet e biti bolji poto se bitovi koriste tamo gde
su najpotrebniji. MPEG sistem kodiranja koji moe da radi VBR kodiranje ima
potencijal da dostigne visok kvalitet slike, za razliku od sistema koji ne moe da radi
takvo kodiranje.

Slika 22.34 Konstantna brzina (prava horizontalna linija) koristi istu koliinu
podataka da opie i sloene i jednostavne slike. Usled toga se dobija promenljiv
kvalitet slike. VBR (kriva linija) koristi razliite koliine podataka za razliite vrste
video sadraja, to daje bolji ukupni kvalitet slike.

Postoje dva naina na koje MPEG koderi postiu VBR. Jedan je da prate prethodne
performanse i dodeljuju bitove frejmovima i GOP-ovima kako pristiu. Drugi je neto
sloeniji metod i koristi dva prolaza kroz materijal.
Za vreme prvog prolaza koder analizira celokupnu video sekvencu, a zatim donosi
poetne odluke kako najbolje da dodeli bitove razliitim delovima videa. Drugi prolaz
koristi ove odluke da kodira GOP-ove. Mada su dvo-prolazni MPEG sistemi
kodiranja mnogo skuplji nego jedno-prolazni sistemi i zahtevaju vie vremena za
kodiranje, njihova strategija osmatranja moe da ostvari superiorni kvalitet slike.

Defekti
Ukoliko ste ikad radili sa 3D grafikom, ima anse da komprimovanja uradite dobro.
Klju za razumevanje matematike koja stoji iza sloenog MPEG algoritma je u tome
kako on procesira vremenske promene u slici.
Jedan od dosadnijih defekata koji se pojavljuje u MPEG videu je tzv. moskito um,
Nazvan je tako zato to opisuje male sporadine promene piksela koje se pojavljuju
oko ivica objekata koji se kreu, na primer, krupni planovi osoba koje govore. Poto
se tu ne radi o intenzivnom kretanju, dobar estimator kretanja moe precizno da
predvidi kretanje na principu frejm-po-frejm. Meutim, neznatne razlike u osvetljenju
i detalji u kosi mogu jo uvek biti kodirne diferencijalno u vektor kretanja.
Ove male razlike transformiu se u DCT koeficijente koji se obino sastoje uglavnom
od visokofrekventnih koeficijenata. Koder moe da promeni kvantizaciju ovih
koeficijenata na osnovu blok-po-blok i frejm-po-frejm principa. Frejm-po-frejm
promene pojavljuju se kao um (defekti) oko objekata koji se kreu i to se naziva
moskito.

Slika 22.35 Moskito um: ceo frejm.

Slika 22.36 Moskito um: detalj.

Osvetljenje, tehnike predprocesiranja i oprema utiu na kvalitet finalnog proizvoda.


Dobra stvar kod MPEG-a je to vam prua solidnu ansu da isporuite klijentima
komprimovani video dobrog kvaliteta. Mada MPEG koderi obino koriste jedan ili
nekoliko ipova za kodiranje, postoji jo uvek dosta parametara koji mogu da utiu na
kvalitet njihovog izlaza. Softversko kodiranje moe da da dobar kvalitet i ak
superiorne algoritme za procenu kretanja, ali zbog raunskih mogunosti dananjih
procesora kodiranje je due.
Na kraju, da vas podsetimo, MPEG komprimovanje videa je vetina koja se sporo ui.
Postii ete visok kvalitet MPEG videa korienjem znanja i iskustva iskusnih
strunjaka koji zaista znaju kako da iskoriste opremu. Ako ste vodili rauna kod
osvetljavanja i u postprodukciji izvornog materijala, onaj ko bude radio
komprimovanje nee imati oseaj da pliva uzvodno tokom sesije kodiranja.
Odgovori na esto postavljana pitanja

Koja su glavna svojstva MPEG-2?

MPEG-2 je projektovan za raznovrsne aplikacije koje zahtevaju brzine prenosa do


100 Mb/s. Televizija visoke definicije i kablovska televizija su primeri aplikacija. Vie
video formata moe da se koristi u MPEG-2 kodiranju da bi se podrale ove
raznovrsne aplikacije. MPEG-2 ima normalizaciju (skalabilnost) bistrima, tj. mogue
je izdvojiti ui bitstrim da bi se dobila nia razolucija ili manji broj frejmova u
sekundi. Dekodiranje MPEG-2 je vremenski veoma zahtevan proces, meutim,
normalizacija bitstrima dozvoljava fleksibilnost u pogledu procesorke snage potrebne
za dekodiranje. MPEG-2 je kompatibilan navie, nanie, unapred i unazad.
Kompatibilnost navie znai da dekoder moe da dekodira slike koje je generisao
koder nie rezolucije. Kompatibilnost nanie implicira da dekoder moe da dekodira
slike koje je generisao koder vie rezolucije. Kompatibilnost unapred znai da
dekoder nove generacije moe da dekodira slike koje je generisao koder starije
generacije. Kompatibilnost unazad znai da postojei dekoder moe da dekodira slike
koje generie koder nove generacije.
Kod MPEG-2 ulazni podaci su isprepleteni poto je on orijentisan ka televizijskim
aplikacijama. Slojevi video sekvence su slini slojevima kod MPEG-1, jedina
poboljanja su kompenzacija kretanja kod frejma/poluslike i normalizacija kod DCT
obrade. Makroblokovi kod MPEG-2 imaju dva dodatna hrominentna bloka kada se
koristi 4:2:2 ulazni format. Zadrani su blokovi iste veliine (8x8) kao kod MPEG-1,
ali mogu se normalizovati da budu 1x1, 2x2, 4x4 da bi se poboljala rezolucija. P i B
frejmovi imaju vektore kretanja frejma i vektore kretanja poluslike.
Dekodiranje u realnom vremenu MPEG-2 videa jo uvek nije mogue sa dananjim
procesorima.

ta je M-JPEG?

esto ete uti za termin Motion JPEG ili M-JPEG za video. Takav standard ne
postoji. Razni proizvoai primenjuju JPEG na pojedinane frejmove video sekvence
i to zovu M-JPEG. Naalost, zbog nepostojanja standarda, svako radi drugaije.
Usled toga dobijene datoteke obino nisu meusobno kompatibilne.
MPEG je standard za komnprimovanje pokretnih slika. On koristi uglavnom iste
tehnike kao JPEG, ali dodaje interfrejm komprimovanje da bi iskoristio slinosti koje
uobiajeno postoje izmeu sukcesivnih frejmova. Zbog toga MPEG obino
komprimuje video sekvencu sa faktorom koji je tri puta vei nego kod M-JPEG
metoda za slian kvalitet. Nedostataci MPEG-a su to to zahteva dosta izraunavanja
da bi stvorio komprimovanu sekvencu (poto raunar teko moe da utvrdi vizuelne
slinosti) i to je teko montirati MPEG sekvencu na principu frejm-po-frejm (poto je
svaki frejm blisko povezan sa susednim). Zbog ovog potonjeg nedostatka M-JPEG
metodi su popularniji kod montanih aplikacija.

Da li moe da se vri pretvaranje izmeu DV i M-JPEG?

Odgovor je moe. Zavisno od stepena primenjenog komprimovanja moda se nee


videti razlika.
U principu, moe da se prihvati da je JPEG komprimovanje od 3:1 priblino
ekvivalentno po kvalitetu DV-u sa komprimovanjem od 5:1. Takoe, valja podsetiti da
su i DV i JPEG DCT kodeci; oni imaju sline defekte i nuz efekte na slikama. (DV
dobija dodatnu efikasnost komprimovanja kroz optimizaciju na nivou bloka u
kvantizacionim tabelama, dok JPEG koristi fiksiranu kvantizacionu tabelu za celu
sliku.) Prema tome, neko e se moda usuditi da nagaa da li je neto komprimovano
preko 5:1 DV ili 3:1 JPEG, meutim, slina koliina oteenja se javlja na slici, i to
pretvaranje izmeu ova dva algoritma komprimovanja moe izazvati manju
degradaciju nego to je izazvalo inicijalno komprimovanje.
Imajte u vidu da je korieni nivo JPEG komprimovanja odluujui faktor uspenosti
pretvaranja. Ako koristite mali stepen komprimovanja od 3:1, 2:1 ili manji, i
pretvarate u digitalni domen (preko serijske digitalne veze ili softverski, a ne preko
analogne veze sa JPEG kodekom), dobiete izuzetno malu degradaciju slike. Ako
prebacite svoje DV podatke u JPEG svet preko analogne veze, ili ako koristite vei
stepen komprimovanja, dobiete progresivno veu koliinu degradacije. Ipak, uvek
postoji rizik da se jave gubici.

Ko je bolji za montau, DV ili M-JPEG?


DV je dobar zato to ako snimate u DV formatu i na disku imate DV format, tada nije
potrebno pretvaranje. DV je idealan za desktop montau zato to su brzine prenosa
viable on-too-exotic SCSI-2 ili Ultra-SCSI diskova i adaptera; moete da kompletirate
upotrebljiv montani sistem za manje od 4000 dolara, koji e stvarati materijal
odlinog tehnikog kvaliteta (za vau genijalnost softver i format nisu garanti).
Ako snimate u DV formatu, zato ne biste svo vreme imali materijal u tom formatu?
Reklamni slogan za ovaj format je bre, bolje, jeftinije, i ne moete dobiti M-JPEG
uporediv kvalitet po DV cenama, DV brzinama i DV zahtevima za smetajnim
prostorom. Sa druge strane, DV-ova fiksna brzina prenosa znai da je 25 Mb/s ono to
moete dobiti: ne moete koristiti DV kodek da presnimite sate materijala offline
kvaliteta (tj. niske rezolucije) na disk za grubu montau.
M-JPEG je zrela tehnologija koja se koristi u veini vrhunskih montanih sistema
(Avid, Accom, Discreet itd.). On nudi mogunost digitalizacije pri razliitim
uestanostima odmeravanja, tako da moete da utedite prostor na disku radei
offline, a zatim ponovo digitalizovati grube rezove za on-line montau. Pri manjim
nivoima komprimovanja on nudi potencijalno vii kvalitet; ako radite vieslojne ili
vieprolazne efekte, zavriete sa nekoliko nanizanih defekata komprimovanja kod
vrhunskih M-JPEG sistema.
Bez obzira da li e va program u ovom trenutku zavriti na VHS kaseti ili e se
emitovati u etar, jedno je sigurno, treba da sauvate to je mogue vie kvaliteta za
DVD ili buduu DTV upotrebu.
M-JPEG e kotati vie za isti nivo kvaliteta zato to zahteva bre diskove ili nizove
diskova, i vie od toga. Sistemi, kao to su Casablanca, DigiSuite ili ReelTime su u
sutini M-JPEG, ali imaju 1394 vezu, tako da mogu da prihvate ulazne DV podatke i
digitalno ih prevedu u M-JPEG. Ovo ne bi trebalo vizuelno da degradira sliku,
smatrajui da je odgovarajua brzina prenosa podataka dovoljno visoka tako da mogu
da se koriste niski nivoi komprimovanja. To je sigurno bolje nego analogna veza
izmeu DV izvora i M-JPEG podataka na disku; ovi sistemi moda izgledaju
neobino, ali sa tehnike take gledita imaju smisla.
Najzad, koji je bolji? To zavisi od vaih potreba, namera, vaeg naina distribucije
materijala i budeta.

ta je MPEG-2 montaa?
Sistemi za montau koji koriste Studio Profile MPEG-2, poznat i kao 4:2:2P@ML
MPEG-2, tek su poeli da se pojavljuju. To je u sutini isti algoritam za
komprimovanje koji koristi BetacamSX, varijanta MPEG-2 koji koristi 1- ili 2-
frejmovske GOP-ove (grupe slika). Tek se oekuju reakcije strune javnosti. Firma
Pinnacle je prikazala na NAB-u 99 svoj model DC1000. Prema trenutnom stanju,
predvianja su da e se samo dve varijante komprimovanja koristiti u montai: DV i
MPEG. Oba formata su prirodna capture formata (DV, DVCAM, DVCPRO za DV i
BetamaxSX za MPEG-2), a MPEG-2 je distribucioni format za ameriku DTV, poto
M-JPEG uvodi korak komprimovanja koji nije ni prirodan za akvizicioni format, niti
se koristi za distribuciju. EBU preporuuje da se DV familija i MPEG-2 4:2:2P@ML
familija algoritama za komprimovanje koriste za buduu televizijsku produkciju.

Tabela 22.17 MPEG-2 profili i nivoi.

Profil**
Nivo*** Simple Main 4:2:2 SNR* Spatial* High
4:2:2 4:2:2 4:2:2 4:2:0 4:2:0 4:2:0; 4:2:2
I, B I, B, P I, B, P I, B, P I, B, P I, B, P
High 1920x1152 1920x1152
80 Mb/s 100 Mb/s
High 1440x1152 1440x1152 1440x1152
1440 60 Mb/s 60 Mb/s 80 Mb/s
Main 720x570 720x576 720x608 720x576 720x576
15 Mb/s 15 Mb/s 50 Mb/s 15 Mb/s 20 Mb/s
Low 352x288 352x288
4 Mb/s 4 Mb/s
* Profili SNR i Spatial imaju mogunost normalizacije.
** Profil je kolekcija alata za komprimovanje koji sainjavaju sistem za kodiranje .
*** Nivo je format (rezolucija) izvorne slike koji je u rasponu od kvaliteta videorekordera do televizije
visoke definicije.

.
ta je GOP?

Na slici 22.37 prikazana je tipina GOP struktura za 30 fps video. I frejmovi su


razmaknuti 15 frejmova ili pola sekunde. U grupi ima dvostruko vie B frejmova nego
I i P frejmova zajedno. Sa slike moete stei uvid kako se radi predikcija P i B
frejmova. Prvi P frejm se izraunava na osnovu sebe samog i prvog I frejma. Prvi B
frejm analizira kretanje izmeu sebe samog i prethodnog I frejma, kao i sledeeg P
frejma, zatim donosi inteligentnu odluku o najboljem nainu kodiranja kretanja koje
je detektovao.

Slika 22.37 Tipina struktura grupe slika kod videa za 30 f/s sastoji se od
intrafrejmova (I), predvienih (P) frejmova i interpoloranih (B; bidirekcionih)
frejmova. Estimator kretanja odreuje koja kombinacija tipova frejmova je
odgovarajua za dati segment.

Kod MPEG-a uvek se pravi kompromis izmeu brzine prenosa (engl. bitrate) i
kvaliteta. Bez I frejmova enkoder moe da izgubi trag o kretanju u sekvenci i moe
doi do akumulacije greaka. Na primer, ako se pojavi greka za vreme kodiranja
frejma 4 sa slike 22.37, to e se odraziti sve do frejma 15. B frejm, 15-ti po redu,
koristie P frejm, 3-ti po redu, da proceni kretanje, ali frejm 13 se oslanja na frejm 10,
a on koristi frejm 7, koji jedobijen na osnovu frejma 4. To znai da greka ostaje u
slici i moda se dobije preko 11 loih frejmova, to je vie od treine sekunde. Ako I
frejm nije pozicioniran na intervalu od pola sekunde, propagacija greke moe biti i
dua.
Takoe, I frejmovi dozvoljavaju stohastiki pristup video sekvenci. Ako elite da se
zaustavite na B frejmu, 6-tom po redu, dekoder treba da dobije informaciju od 4-tog i
7-og P frejma. Meutim, dekodiranje frejma 4 takoe zahteva informaciju od frejma
1. Usled toga sistem treba da ima mogunost da memorie tri frejma istovremeno i
raunsku mo da dekodira ova tri frejma redom kako bi vratio B frejm.
Da bi se zaustavili na I frejmu, dekoder treba da ima podatak samo o tom jednom
frejmu. Iz ovoga je jasno zato je precizna montaa na osnovu I frejma danas toliko
rasprostranjena. Dobar MPEG enkoder doputa da postavite GOP strukturu na nain
na koji elite i doputa da ubacite I frejmove gde je potrebno da biste dobili bolje
kodiranje i stohastiki pristup sekvenci.

ta je MPEG-4?

U cilju proirivanja tekue Web paradigme na audio i video tehnologija potrebno je


ostvariti vie od onoga to danas mogu MPEG-1 i MPEG-2. U oba standarda slika je
sekvenca nizova piksela. Meutim, mi, ljudi, znamo kroz razliite nivoe obrade, da
slika, na primer, sadri osobu koja stoji, radni sto ispred nje itd., ali za algoritam
kodiranja pokretna slika nije nita drugo do sekvenca nizova piksela ureenih u
pravougaonik. Slino, audio komponenta se posmatra kao jednokanalni ili viekanalni
zvuk, ali zahvaljujui viim nivoima obrade koje ovek moe da obavi, moemo da
izdvojimo glas ene od muzike okruenja ili od muzike podloge multimedijalne
prezentacije.
Drugim reima, algoritam kodiranja mora da ima pristup semantikom znaenju
razliitih objekata, kako audio tako i video, koji komponuju scenu. ena koja stoji,
radni sto, bela tabla, glas ene, muzika podloga su individualni objekti koji moraju
da se kodiraju posebno. Pored toga, i za razliku od onoga to se danas deava na
televiziji, nije dovoljno da se kodiraju samo individualni objekti. Takoe je potrebno
da se kodira kako su razliiti objekti ukomponovani u kompletnu scenu.
Slika 22.38 a) Audio i video objekti scene

Slika 22.38 b) Logika struktura scene

MPEG-4 obezbeuje standardne naine za kodiranje audio objekata, video objekata,


opisa scena i interfejsa za distribucioni sistem. Poto se audio i video objekti moraju
da komponuju na strani dekodera, oni nisu ogranieni da budu priridnog porekla ve
mogu biti sintetiki.
U optem sluaju jedan ili vie distribucionih sistema prenose razliite povorke i
svaka od ovih povorki sadri jedan ili vie objekata. Stoga oni moraju prvo biti
demultipleksirani a zatim obraeni od strane odgovarajuih dekodera. Informacija o
kompoziciji se koristi da se audio-vizuelni objekti smeste na odgovarajue poloaje u
3D prostoru a zatim se projektuju na ravan za vizuelno prikazivanje i skup taaka za
audio informaciju. Generalno, korisnikova interakcija stvara povratni tok podataka.
Primena MPEG-4 standarda je raznovrsna od video telefonije, preko video
konferencija, udaljenih uionica, videa na zahtev, igara do multimedijalnih
prezentacija.
Da zakljuimo, standard MPEG-4 je jo u zaetku, a radi se o videu vrlo niske
rezolucije (176144 uz 10 slika u sekundi) uz odgovarajui kvalitetan audio. Pre
svega, namena MPEG-4 je prenoenje slike i zvuka kroz linije malih propusnih
opsega.

ta je MPEG-7?

Na Webu se nalazi mnotvo audio-vizuelnih informacija, ali ne postoje adekvatni alati


za pronalaenje tih informacija. Namena standarda MPEG-7 je da definie skup
deskriptora (kljunih parametara) koji mogu da opiu razliite oblike multimedije.
Takoe, on e standardizovati naine za definisanje drugih deskriptora kao i struktura
za deskriptore i njihove relacije. Ova informacija e biti pridruena sadraju da bi se
omoguilo brzo i efikasno pretraivanje. MPEG-7 e takoe standardizovati jezik za
definisanje ema opisa.
U narednoj tabeli dati su datumi objavljivanja pojedinih verzija MPEG standarda.

Tabela 22.18 Verzije MPEG standarda.


Standard Datum usvajanja
MPEG-1 Novembar 1992. g.
MPEG-2 Novembar 1994. g.
MPEG-4 verzija 1 Oktobar 1998. g.
MPEG-4 verzija 2 Decembar 1999. g.
MPEG-7 Juli 2001. g.

Zakljuak

Komprimovanje je ujedno i blagodat i prokletstvo digitalnog videa. Blagodat zato to


bez njega dananji raunari ne bi mogli da dre korak sa brzinama prenosa koje video
zahteva; prokletstvo zato to modifikuje video sliku na takve naine da je teko
predvideti gde e se pojaviti defekti, to zagorava ivot video profesionalcima.
Sutina je u razumevanju razlika izmeu pojedinih kodeka. Imajui u vidu te razlike,
zatim nivo komprimovanja koji je potreban za vau brzinu prenosa, nivo kvaliteta koji
elite i da li je potrebno komprimovanje u realnom vremenu, biraete odgovarajui
kodek, to u svakom sluaju nije lak zadatak.

Pripremio Dragan Markovi

You might also like