Professional Documents
Culture Documents
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.
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.
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.
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
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
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.
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
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.
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.
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.
Graphics
Photo-JPEG
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
Component Video
Cinepak
Indeo 3.2
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.
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.
Simbol Verovatnoa
A
B 1/3
C 1/3
D 1/3
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)
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
(22.5)
gde je f(x,y) sjajnost piksela na poziciji (x,y). Rezultat je matrica F, takoe dimenzija
8x8.
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)
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.
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.
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.
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.
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.
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.
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.
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.
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.
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?
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?
ta je MPEG-7?
Zakljuak