142
Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić ožujak 2012.

MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu

MULTIMEDIJSKI SUSTAVI

Hrvoje Dujmić

ožujak 2012.

Page 2: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

1

SADRŽAJ 1.  Povijest ................................................................................................................................ 3 2.  Osnovno o multimediji ....................................................................................................... 5 3.  Pregled multimedijskih softverskih alata ............................................................................ 8 4.  Dizajn multimedijskih aplikacija ...................................................................................... 13 5.  Signali ............................................................................................................................... 18 6.  Audio signal ...................................................................................................................... 21 7.  Kompresija audio signala .................................................................................................. 35 8.  boja u slikama i video signalima ....................................................................................... 51 9.  Slikovni signali (slike i grafika) ........................................................................................ 69 10.  Osnove videa i televizije ............................................................................................... 79 11.  Kompresija slikovnih signala ........................................................................................ 85 12.  Koncept kompresije video signala ................................................................................ 97 13.  Standardi za kompresiju video signala ........................................................................ 106 14.  Virtualna stvarnost ...................................................................................................... 134 

Page 3: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

2

MULTIMEDIJSKI SUSTAVI

Hrvoje Dujmić

Uvod Multimedijski sustavi izuzetno su značajni u svim aspektima informacijske tehnologije te bitno utječu na dizajn hardvera, softvera te raznih aplikacija i mreža. Proučavanje multimedijskih sustava zahtijeva interdisciplinarni pristup jer uključuje kako hardver i softver tako i mreže, ali i razne aspekte percepcije i teorije signala. To je područje gdje se sastaje nekoliko značajnih industrija: računarstvo, telekomunikacije, izdavaštvo, audio i video potrošačka elektronika, TV i filmska industrija. Naročito značajan rast multimedijski sustavi doživljavaju početkom 90tih godina i zajedno s Internetom predstavljaju jedan od najbrže rastućih, ali i ekonomski najznačajnijih aspekta informacijske i telekomunikacijske industrije te time i gospodarstva općenito.

U ovoj knjizi ukratko su prikazani temelji multimedijskih sustava uključujući i mrežne aspekte kao i upravljanje informacijama. Također se daje prikaz načina na koji su multimedijski sustavi implementirani kao i detalje o dizajnu raznih komponenti multimedijskih sustava. U ovoj knjizi su dani koncepti i objašnjenja koristeći onoliko matematike koliko je nužno za shvaćanje multimedijskih sustava i njihove uloge u širem informacijskom sustavu.

Čitajući ovu knjigu imajte na umu da su promjene u području kojim se ona bavi tako brze i velike da je praktično nemoguće napisati knjigu koja bi bila točan prikaz trenutno najpopularnijih i najboljih tehnologija. Tek što se neka tehnologija ili algoritam probije među korisnicima kao najbolji već se javlja drugi, bolji i zanimljiviji, i tako u neprestanoj spirali jedna tehnologija smjenjuje drugu.

Page 4: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

3

1. POVIJEST MULTIMEDIJE Razni aspekti koji tvore multimedijski sustav kao što su npr. slike, tekst i govor te njihova obrada poznati su već odavno. Prvi oblici smislenog zapisivanja informacija pojavili su se prije otprilike 6000 godina da bi još 2000 godina trebalo da se pojavi i prva abeceda. Veliki napredak predstavljao je izum tiskarskog stroja – u Kini u XI stoljeću, a u Europi 1451. godine kada Guttenberg tiska prvu europsku knjigu. Sredinom XIX st. izmišljen je način pohranjivanja slika – fotografski aparat, a zatim i način pohranjivanja zvuka. Razvitak koji je slijedio bio je strelovit, a kulminirao je današnjom digitalizacijom praktično svih medija. Ipak, to su bili tek segmenti koje je tek trebalo udružiti u jedan jedinstveni sustav – multimedijski sustav.

Prvi spomen ideje odnosno koncepta bliskog današnjem poimanju multimedije bio je u članku "As We May Think" [Bush 1945] koji je Vannevar Bush objavio 1945. u časopisu Atlantic Monthly. Naime, očito je da ljudski um ne radi na linearan način. Naprotiv, um uvijek teži stvoriti asocijacije – kada mislimo o nečemu redovito mislimo i o još nečemu povezanom s tim. Jednostavno skačemo s jedne teme na neku drugu, blisku temu. Slijedeći tu ideju, Vannevar je predložio foto-električno-mehanički uređaj koji bi bio u stanju slijediti veze između dokumenta pohranjenih na mikrofilmovima. Indeksiranje veza (linkova) kakve je on predložio u načelu su isti kao i koncept koji se danas koristi u World Wide Web linkovima. Taj svoj uređaj on je nazvao Memex i općenito se Vannevarov članak smatra početkom multimedije. Vannevar je bio puno ispred svog vremena – trebalo je proći nekoliko desetljeća da se koncept koji je on nazvao Memex široko prihvati. Dvadeset godina poslije Ted Nelson je za taj koncept predložio riječ hipertekst (engl. hypertext). U to vrijeme ljudsko znanje je već bilo toliko naraslo da ga linearna veza među podacima više nije mogla uspješno povezivati. Tada je sazrelo vrijeme za široku primjenu Vannevarove ideje sada nazvane hipertekst. Srećom, tada su se počeli masovnije koristiti uređaji koji su omogućili primjenu koncepta hiperteksta u praksi – to su bila računala.

Kratka povijest razvitka multimedijskih sustava odnosno raznih ideja, koncepata i aplikacija značajnih za razvitak multimedijskih sustava dana je nastavku [www.w3.org], [www.isc.org], [www.isoc.org].

4000 pne – pismo 2000 pne – abeceda 1000 – tiskarski stroj u Kini (1451 u Europi) 1835 – telegraf (Samuel Morse) 1839 – foto aparat 1872 – pisaći stroj 1876 – telefon (Alexandar Graham Bell) 1895 – film (braća Lumiere) 1919 – radio broadcasting (Kanada, Nizozemska) 1935 – TV broadcasting (Njemačka, Velika Britanija) 1945 – Vannevar Bush (1890-1974) predložio koncept veza među podacima pohranjenim na

mikročipove i nazvao ga Memex 1953 – TV u boji 1965 – Ted Nelson u članku "A File Structure for the Complex, the Changing, and the

Intermediate" [Nelson 1965] prvi put upotrijebio riječ "hyperteks" 1969 – u okviru ARPA projekta (ARPANET mreža) spojena četiri čvora (UCLA, Standford

Research University, University of California Santa Barbara i University of Utah) i to s računalima Honeywell DDP-516 s 12K memorije – smatra se početkom ARPANET/Interneta

Page 5: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

4

1972 – Ray Tomlinson modificirao e-mail program za ARPANET i odabrao znak @ za značenje "at" (tj. u, na); prvi e-mail program nastao je 1971., telnet 1972., FTP 1973.

1977 – broj hostova prešao 100 1979 – Kevin MacKenzie predložio da se u suhoparni tekst dodaju "emocije" kao npr. :). Iako u

početku ismijan, posebni karakteri koji odražavaju emocije postali su kasnije opće prihvaćeni.

1984 – broj hostova prešao 1000 1986 – stvoren NSFNET (koji formira backbone onoga što danas zovemo Internet) omogućivši

eksploziju hostova na Internetu – posebice sveučilišnih (backbone je u početku bio 56Kbit/s); ARPANET je ugašen 1990.

1987 – Apple predstavio prvi hipertekstualni sustav za editiranje dostupan širokom krugu korisnika – HyperCard koji se isporučivao besplatno uz svaki Macintosh

1990 – Tim Berners-Lee na CERNu završio razvitak hipertekstualnog GUI browser/editora. Tim još od 1980. radi na razvoju hipertekstualnih sustava i u Internetu je vidio priliku da se koncept hiperteksta prihvati na široj razini. Taj svoj program Tim je nazvao WorldWideWeb1. Prvi web server nxoc01.cern.ch.

1992 – Jean Armour Polly stvorio izraz "Surfati Internetom" (Surfing the Internet) 1992 – broj hostova prešao 1000000 1993 – prvi grafički browser za WWW – Mosaic razvijen od National Center for

Supercomputing Applications. Te godine WWW promet čini 1% ukupnog prometa na NSFNET. Nakon završetka studija, studenti koji su radili na razvitku Mosaica osnivaju Netscape Communications Corporation te 1994. razvijaju browsers koji će godinama dominirat tržištem.

1994 – prvi put moguće naručiti (pizzu) preko Interneta 2001 – broj hostova prešao 100 milijuna [33]

1 U dokumentu [Barners-Lee 1989] kojim je Barners-Lee pokušao uvjeriti upravu CERNA da prihvati rad na tom projektu, za ideju koristi naziv Mesh. Kasnije će, u tijeku izrade programa, promijeniti naziv u World Wide Web,

Page 6: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

5

2. OSNOVNO O MULTIMEDIJI Što je to zapravo multimedija? U čemu je razlika između hiperteksta, hipermedije i multimedije? Multimedija bi se mogla definirati kao bilo koja aplikacija koja osim standardnih uključuje i druge tipove medija. Pri tome pod standardnim medijima smatramo tekst, crteže i slike, a pod drugim tipovima medija smatramo tzv. kontinuirane medije kao što su video, audio i animacije. Multimedija bi se dakle mogla definirati kao integracija kontinuiranih medija (video, zvuk, animacija) i diskretnih medija (tekst, grafika, slike) tako da se informacija na prikladan način prezentira korisniku. Po ovoj definiciji tekst procesor koji bi obrađivao tekst i slike ne bi bio multimedija. Da bi se radilo o multimediji trebao bi biti uključen barem jedan kontinuirani medij, npr. video.

Riječ multimedija sastavljena je od dviju riječi: multi i medij. Prefiks multi dolazi od latinske riječi multus (brojan). Medij dolazi također od latinske riječi media što je množina od medium (sredina, centar), ali ima i značenje radne tvari koja je nosilac energije u nekom procesu, kao i značenje sredstva prenošenja informacija.

Multimedija je pojam koji se danas koristi kod raznih sustava, proizvoda, koncepata, i sl., a može imati bitno šire i drugačije značenje nego je to ovdje definirano. I pojam medij koji ovdje koristimo u smislu percepcije (video, slika, audio, tekst, itd.) može se puno šire promatrati. Tako postoji medij za pohranu, medij za prijenos, medij za prezentaciju, itd. Guojun Lu "Multimedia is system capable of handling at least one type of continuous media in digital form as well as static media." Franklin Kuo: "Multimedia concerns the representation of mixed modes of information – text, data, image, audio and video – as digital signals. Multimedia Communications concerns the technology required to manipulate, transmit, and control these audiovisual signals across a communications channel." Lawrence A. Rowe "U stvarnosti je pojam multimedije toliko često, nepotrebno i neodgovarajuće upotrebljavan; praktično zloupotrijebljen do te mjere da danas pojam multimedija ne znači gotovo ništa."

Hipertekst je tekst koji sadrži veze (linkove) na druge tekstove i općenito je nelinearan. Koncept hipermedije je sličan konceptu hiperteksta, ali bez ograničenja na tekst. Hipermedija može dakle uključiti i duge medije kao što su slike, crteži, audio, video. Tipičan primjer hipermedijske aplikacije je World Wide Web (WWW).

Očito je da se hipertekst/hipermedija može smatrati jednom od multimedijskih aplikacija pa se u tom smislu ta dva izraza moraju i razlikovati. Slika 2.1 ilustrira razliku između običnog teksta, hiperteksta i hipermedije. Multimedijski sustavi nužno imaju neka svojstva kao što su:

• istodobno korištenje diskretnih i kontinuiranih medija, • integracija, • neovisnost medija, • računalno upravljanje.

Osim toga, većina multimedijski aplikacija su interaktivne (slika 2.2).

Page 7: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

6

obični tekst hipertekst hipermedija

Slika 2.1 Koncept hiperteksta i hipermedije

tekst

interakcija

slika/grafika

video/animacija

audio/govor

Slika 2.2 Multimedijski dokumenti/aplikacije su redovito interaktivne Primjeri multimedijskih aplikacija:

• audio/video konferencija, • video na zahtjev (Video on Demand – VoD), • sadržaj na zahtjev (Content on Demand), • interaktivna TV, • virtualna stvarnost, • igre, • web, • digitalne knjižnice, • editiranje digitalnog audio/videa i postprodukcija, • multimedijsko stvaranje (Multimedia Authoring), • elektroničke novine, • kupovanje putem Interneta.

Zašto je multimedija tako zanimljiva?

• Rad na daljinu i slične aplikacije koje uključuju komunikaciju ljudi na udaljenim mjestima sve su zanimljivije kako zbog sigurnosnih tako i zbog financijskih aspekata.

• Konvergencija računala i komunikacija, ali i TV, integrira različite tipove podataka pa je tako bliska ljudskom načinu razmišljanja.

Page 8: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

7

• Veliki potencijal razvitka raznih aplikacija (učenje, zabava, rad, ...). • Tehnički/inženjerski je jako zanimljiva. • Zabavna je (igre, umjetnost, ...).

Što je omogućilo tako nagli razvitak multimedijskih aplikacija?

• Digitalizacija praktično svih medija. • Digitalizacija praktično svih uređaja. • Razvitak podatkovnih i komunikacijski mreža. • Povećanje pojasne širine (naročito pojasne širine na zahtjev). • Brzi procesori naročito audio/video specijalizirani. • Veliki kapaciteti uređaja za pohranjivanje. • Novi algoritmi i strukture podataka. • Objektno orijentirane paradigme i objektno orijentirano modeliranje. • Bolji softver (operativni sustavi, koderi/dekoderi).

Hardver i softver potreban za multimedijske sustave:

• Uređaji za skupljanje podataka (Capture devices) - video kamera, video rekorder, mikrofon, tipkovnica, miš, grafička ploča (graphical

tablet), 3D ulazni uređaji, uređaji virtualne stvarnosti (miris, dodir), uređaji za digitalizaciju/uzorkovanje;

• Uređaji za pohranu - čvrsti disk, CD, DVD, disketa, brza memorija, DAT, memorijske kartice;

• Komunikacijske mreže - Ethernet, Token Ring, FDDI, ATM, Intranet, Internet;

• Računalni sustavi - multimedijski PC, Radna stanica, MPEG/VIDEO/DSP hardver;

• Uređaji za prikazivanje (Display Devices) - zvučnici, TV, HDTV, monitor, LCD, printer, projektor.

Područja koja obuhvaćaju multimedijski sustavi prikazani su na slici 2.3, a mogu se podijelit u četiri

skupine: osnove, sustavi, usluge i primjene. Osjenčani su oni aspekti koji će se proučavati u ovoj knjizi.

Slika 2.3 Najznačajnija područja koja obuhvaćaju multimedijski sustavi

Page 9: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

8

3. PREGLED MULTIMEDIJSKIH SOFTVERSKIH ALATA Multimedijske softverske alate možemo podijeliti u dvije skupine:

• alati za obradu pojedinih multimedijskih objekata, • alati za izradu multimedijskih dokumenata.

Multimedijski objekt možemo definirati kao jedinstven skup (cjelinu) informacija, a fizički je to najčešće datoteka u memoriji računala. Osnovni tipovi multimedijskih objekata su tekst, slike, grafika, audio, video i animacija.

Izrada multimedijskih dokumenata (engl. Multimedia Authoring) je u načelu povezivanje multimedijskih objekata. Mnogi od alata za izradu multimedijskih dokumenata u sebi sadrže i dijelove kojima se mogu obrađivati neki ili svi multimedijski elementi (objekti), ali tipično s bitno manjim mogućnostima od za to specijaliziranih alata. Alati za izradu multimedijskih objekata i multimedijskog materijala ne smiju se miješati s programima za vizualizaciju tj. prikazivanje multimedijskih objekata tzv. preglednicima (engl. viewers). Tako postoji preglednici koji prikazuju slike, preglednici koji prikazuju video, itd. (slika 3.1).

Slika 3.1 Različiti preglednici za različite medije 3.1. ALATI ZA IZRADU/OBRADU MULTIMEDIJSKIH OBJEKATA Alati za izradu/obradu multimedijskih objekata nazivaju se još i editori. U ovu skupinu spadaju alati kojima se izrađuje/obrađuje:

• tekst (npr. Microsoft Word), • digitalni audio (npr. Steinberg Wavelab), • glazba (npr. Steinberg Cubase), • animacija (npr. Avid SoftImage), • grafika (npr. Adobe Illustrator), • slike (npr. Adobe Photoshop), • video (npr. Adobe Premiere).

Page 10: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

9

Izrada/obrada multimedijskih objekata nije jednostavan zadatak te je praktično nemoguće

napraviti takav editor kojim bi se mogli obrađivati svi ili većina multimedijskih objekata. Stoga se najčešće različiti multimedijski objekti obrađuju različitim editorima (slika 3.2). Dakle, ovakvi programi ne služe za izradu multimedijskih sustava već samo pojedinih elemenata pa se neće detaljnije razmatrati.

Slika 3.2 Različiti editori za različite medije 3.2. IZRADA MULTIMEDIJSKIH DOKUMENATA Multimedijski dokument se sastoji od više različitih multimedijskih objekata. Svaki multimedijski dokument ima internu strukturu koja definira na koji način su multimedijski objekti povezani. Ti multimedijski objekti obično se stvaraju i editiraju neovisno o samoj izradi multimedijskog dokumenta. Objekti sadržani u multimedijskom dokumentu mogu biti

• fizički uključeni u dokument (engl. embedding), • pridruženi dokumentu preko veza (engl. linking).

Kako multimedijski dokument često ima i elemente interakcije i praktično ulogu aplikacije, to

se često umjesto izraza dokument koristi s nešto proširenim značenjem i izraz aplikacija pa se govori o multimedijskoj aplikaciji. Izrada multimedijskih aplikacija (engl. Multimedia Authoring) je postupak kojim se udružuju multimedijski objekti te se kombinira i kontrolira njihov tok. Drugim riječima Multimedia Authoring je postupak kojim se stvaraju multimedijske aplikacije/dokumenti, a programi (razvojni alati, sustavi) kojima se to radi nazivaju se Multimedia Authoring Tools ili Multimedia Authoring Systems. Proces izrade multimedijske aplikacije/dokumenta ilustriran je na slici 3.3.

Page 11: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

10

Multimedia Authoringsustavi

Editori

- tekst - audio - glazba - animacija - grafika - slike - video

Slika 3.3 Izrada multimedijskog dokumenta/aplikacije

Postoji više metodologija (tzv. metafora, paradigmi – engl. metaphor, paradigm) koje se koriste u postupku izrade multimedijskih aplikacija. Pojedini od alata za izradu multimedijskih aplikacija se temelje na jednoj ili više tih metodologija, odnosno same multimedijske aplikacije mogu biti izrađene slijedeći jednu ili više metodologija. Općenito, upotrebom alata za izradu multimedijskih aplikacija (engl. Multimedia Authoring Tools) izrada multimedijskih aplikacija je značajno brža u odnosu na standardno programiranje. Tipično se smatra da je vremenski odnos 1:8.

1. Skripting paradigma – kod ovog pristupa koriste se specijalni, tzv. skripni jezici za stvaranje pojedinih multimedijskih komponenti kao što je npr. kontrola miša, interaktivnost i sl. Takvi jezici imaju i razne elemente programiranja kao što su petlje, uvjeti, skokovi, funkcije i sl. i od svih metodologija za izradu multimedijskog materijala najsličniji su standardnom programiranju (slika 3.4). Izrada ovakvim alatima je relativno spora, ali su mogućnosti velike. /AfterGRASP (besplatan za nekomercijalne primjene)/

Multimedijski objekti

Objekt 2

Objekt 4

Objekt 3

Objekt 1

Interna struktura(script)

Operacija 1Operacija 2Operacija 3Operacija 4Operacija 5Operacija 6Operacija 7Operacija 8Operacija 9

Slika 3.4 Skripting paradigma

Page 12: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

11

2. Card/Scripting paradigma – kod ovog pristupa skriptni jezik pruža velike mogućnosti, ali je ograničenje index-card struktura. Idealna za hipertekst/hipermedija aplikacije i posebice one aplikacije kod kojih je intezivno korištenje navigacije. Kod većine zabavnih aplikacije prototipovi su napravljeni u card/scripting sustavima pa su onda kodirani u nekom programskom jeziku. /MetaCard (MetaCard)/

3. Cast/Score/Scripting paradigma – koristi se "notni" (score) pristup na način da su svi elementi

koje treba sinkronizirati poredani u različitim vodoravnim trakama s time da se vremenska os prati po vertikali. Snaga ovog pristupa je u sposobnosti da se programira skripnim jezikom (scripting) svaki od združenih (cast) članova (slika 3.5). Ovaj je pristup najbolji za aplikacije s puno animacija i intenzivnom potrebom za sinkronizacijom. Cast/Score/Scripting paradigma poznata je i kao paradigma vremenske skale (engl. timeline). /Director (Macromedia-Adobe); Flash (Macromedia-Adobe)/

Multimedijski objekti(cast)

Objekt 2

Objekt 4

Objekt 3

Objekt 1

(score + scripting)

t

audio

video

animacija

animacija

Operacija 1Operacija 2Operacija 3Operacija 4Operacija 5Operacija 6Operacija 7Operacija 8Operacija 9

Interna struktura

Slika 3.5 Cast/Score/Skripting paradigma

4. Iconic/Flow Control paradigma – vremenski brza izrada multimedijskih aplikacija koja se često koristi za izradu sustava za treniranje (učenje). Osnova je paleta ikona (koje sadrže moguće funkcije/interakcije programa) i dijagram toka (Flow Control) koji pokazuje veze među ikonama. Ovakav pristup rezultira aplikacijom čije je izvršenje relativno sporo. /Authorware (Macromedia)/

5. Frame paradigma – slična Iconic/Flow Control paradigmi jer uključuje paletu ikona. Međutim

linkovi između ikona su konceptualni i ne odgovaraju uvijek stvarnom toku programa. Stoga je ispravljanje grešaka kod ovakvih sustava otežano, ali je s druge strane multimedijsku aplikaciju moguće izraditi izuzetno brzo. /iShell (Tribeworks); QuarImmedia (Quark)/

6. Hierarchical Object paradigma – multimedijski objekti i njihova svojstva predstavljeni su

stablastom strukturom. Obično se koristi kod aplikacija koje se temelje na upotrebi izbornika. /Katabounga (Abvent), Dazzler (Dazzlersoft)/

7. Hypermedia Linkage paradigma – slična Frame paradigmi jer pokazuje konceptualne veze

među elementima, ali za razliku od Frame paradigme nema vizualno povezivanje. /Formula Graphics Multimedia System (Formula Software Pty Ltd)/

Page 13: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

12

8. Tagging paradigma – koristi tagove u tekstualnim fajlovima (npr. HTML, VRML i sl.) kako bi povezali stranice, te tako omogućava interaktivnost i uključivanje multimedijskih elemenata (slika 3.6). /Lexicographer (Abiogenesis Software)/

Tag 3

Tag 2

Tag 1

Tag 3

Tag 2

Tag 1

Slika 3.6 Tagging paradigma

9. Slide Show paradigma – u osnovi je to linearna prezentacija. /Power Point (Microsoft)/

Page 14: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

13

4. DIZAJN MULTIMEDIJSKIH APLIKACIJA Izrada multimedijskih objekata, a posebice njihova integracija u multimedijsku aplikaciju nije jednostavan i lagan zadatak. Iako je snaga multimedije u integraciji različitih medija (objekta) uspjeh nije zagarantiran pukim uključivanjem velikog broja različitih objekata. Tako npr. korisnik može jednostavno biti izritiran ili će u najboljem slučaju izgubiti interes ako se zvučni efekti prečesto koriste, ako animacije predugo traju, itd. Uspjeh više ovisi o pažljivom odabiru objekata i uspješnosti njihovog povezivanja nego o njihovom broju. Multimedijska aplikacija trebala bi biti takva da je:

• korisna (da korisniku pruži ono što on želi), • jednostavna (da ne zahtjeva previše napora prilikom korištenja), • zanimljiva (da rezultira pozitivnim osjećajem i željom za ponovnim korištenjem).

Postoje standardi kojima se definiraju neki od elemenata koji su potrebni kod dizajniranja

multimedijskih elemenata kao što je npr. standard ISO 9241: Ergonomic requirements for office work with visual display terminals. Tim se standardom definiraju temeljna načela vezana uz ljudsko doživljavanje multimedijskih objekata (npr. propisuje minimalnu i maksimalnu snagu zvuka) ali i detalji vezani uz dizajn standardnih sučelja i formi kao što su npr. izbornici, struktura navigacije, odnos prema ljudima sa specijalnim potrebama i sl. Ipak, takav općeniti standard, ali i neki drugi koji su specifični, imaju samo ograničenu primjenu. Općeniti standardi daju samo temeljna načela i apstraktne modele koje tek treba razraditi u stvarnoj primjeni. S druge strane specifični (detaljni) standardi imaju previše iznimaka pa je njihova primjena složena.

Izrada multimedijskih aplikacija bitno ovisi o potrebama korisnika, cilju, općem kontekstu u kojem će se koristiti, razini znanja, starosti i edukaciji korisnika, razini interaktivnosti, načinu distribucije i o nizu drugih faktora. Ipak neke temeljna načela, ali i specifične detalje, definirane standardima, korisno je poznavati i primjenjivati što je moguće više, jer su uspješne multimedijske aplikacije temeljene upravo na takvim zahtjevima. U nastavku poglavlja bit će prikazani neki od tih zahtjeva koje bi trebalo zadovoljit kako bi multimedijska aplikacija bila uspješna. Tri su elementa o kojima treba voditi računa prilikom dizajniranja multimedijskih aplikacija

• dizajn sadržaja, • vizualni dizajn, • tehnički detalji.

4.1. DIZAJN SADRŽAJA Prilikom dizajna (kreiranja) sadržaja najprije se susrećemo s izborom vrste medija. Možemo kazati da postoji pet vrsta medija koje možemo koristiti:

• tekst, • grafika/slike, • animacija/video, • audio/govor, • interakcija.

Page 15: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

14

Izbor medija ovisi o znanju i iskustvu korisnika, tipu aplikacije i sl. Najčešće se postavlja pitanje izbora između audio i vizualnih medija pri čemu pod vizualne medije možemo smatrati tekst, video i grafiku. U tablici 4.1 dane su preporuke vezane uz izbor audio odnosno vizualnog medija.

audio medij je prikladan vizualni medij je prikladan

ako je poruka kratka i jednostavna ako je poruka složena i/ili dugačka ako se neće ponavljati ako će se ponavljati ako zahtijeva trenutnu reakciju posebno ako je reakcija govorna

ako zahtijeva reakciju mišom, tipkovnicom i sl.

Tablica 4.1 Preporuke za izbor između audio i vizualnog medija

4.1.1. Tekst Najveći broj multimedijskih aplikacija uključuje tekst, čak i ako se grafika intenzivno koristi. Tekst je najfleksibilniji način prezentiranja informacija na zaslonu. Često je korisnije razmotriti kako tekst prezentirati na odgovarajući način nego ga pokušati zamijeniti s govorom ili slikom. Treba voditi računa da:

• Tekst mora biti što je moguće jednostavniji. • Rečenice trebaju biti kratke i precizne. Često je korisno napisati cjelovitu poruku/poruke

pa ih onda skraćivati. • Svaka sistemska poruka treba biti takva da je napisana sa stajališta korisnika, a ne

programera. Korisniku se ne smije kazati da je napravio nešto pogrešno – treba mu kazati kako da napravi ispravno.

• Skraćenice treba upotrebljavati što je moguće manje i samo ako su opće poznate te njihova upotreba treba biti konzistentna u cijelom tekstu.

Tekst ima prednost jer se s njim:

• lako manipulira (zahtijeva malo vremena za izradu), • lako pohranjuje (zahtijeva malo memorije), • lako prenosi (zahtijeva malu pojasnu širinu).

S druge strane sami tekst najčešće nije dovoljan (treba puno teksta da bi se objasnio

jednostavni koncept). 4.1.2. Grafika/slike Slikom se može vrlo efikasno prenijeti informacija ("Jedna slika vrijedi tisuću riječi"). Temeljna razlika između slike i grafike je što se slika snima, a grafika kreira. Obično je puno lakše generirati sliku (snimanje) nego grafiku (kreiranje). 4.1.3. Animacija/video Animirati treba samo kada to ima jasno određeni cilj. Treba se pažljivo koristiti raznim efektima koje omogućavaju alati za izradu multimedijskih aplikacija. Npr. tekst koji se miče po zaslonu izuzetno je

Page 16: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

15

teško čitljiv i treba ga izbjegavati odnosno barem, nakon što se zaustavi, ostaviti dovoljno vremena korisniku da ga pročita. Animacija služi za:

• naglašavanje (pokretni tekst, pojavljivanje karaktera u ritmu kako se i piše, tekst koji pulsira, tekst koji mijenja boju, itd.),

• "humaniziranje" objekta, • objašnjenje koncepta ili radnje.

Video je, u odnosu na animaciju, obično puno lakše napraviti, ali je redovito i manje efikasan (koristan). Trajanje video/animacije (zbog zadržavanja pažnje) treba kod većine aplikacija biti ograničen na:

• video – ne duže od 60 sekundi, • animacija – ne duže od 30 sekundi.

4.1.4. Audio/govor Audio (glazba) se koristi kao pozadina, najčešće nekom video zapisu i u tom smislu predstavlja cjelinu s video zapisom.

Zvučni efekti najčešće se koriste da korisniku pruže informaciju o stanju sustava (npr. "beep" za grešku) ili da pruže dodatnu informaciju o objektu koji se vizualno prikazuje (npr. šum potoka). I glazba i zvučni efekti imaju relativno malu informacijsku vrijednost, ali mogu značajno pridonijeti ugodnosti rada.

Govor može poslužiti kako za unos informacija (npr. prepoznavanje govora u funkciji upravljanja aplikacijom) tako i za izlaz iz multimedijske aplikacije (npr. opis slike koja se prikazuje). Pri tome je potrebno voditi računa da je slušanje govora sporije od čitanja, pa korisnik u istom vremenu može prihvatiti manje informacija slušajući nego čitajući. 4.1.5. Interaktivnost Multimedijska aplikacije gotovo uvijek uključuje neke elemente interaktivnosti. Interaktivnost se tipično realizira putem:

• izbornika, • linkova (hipermedija), • simulacija (igre, simulatori leta), • glasa (upravljanje glasom).

4.2. VIZUALNI DIZAJN Uspješnost vizualnog dizajna najviše ovisi o spretnosti i iskustvu dizajnera/programera. U nastavku poglavlja dan je skup osnovnih pravila i zapažanja koji mogu biti od koristi prilikom stvaranja vizualnog identiteta multimedijskog objekta/aplikacije.

Page 17: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

16

4.2.1. Teme i stilovi Multimedijske aplikacije (odnosno prezentacije) trebale bi imati konzistentnu temu/stil koja odgovara tipu aplikacije. Većina alata za izradu multimedijskih aplikacija ima set predodređenih stilova i tema koji mogu značajno ubrzati vizualni dizajn. Isto tako korisnik može i sam kreirati vlastite teme i stilove. 4.2.2. Font Korisno je obratiti pažnju da:

• Font ne smije biti premali niti prevelik. Tipična greška je premali font. Za gledanje na zaslonima ekrana minimalni font koji bi se trebao koristiti je 12pt, a za gledanje preko projektora 14pt.

• Sans serif fontovi (npr. Times) obično se koriste za labele i kratke poruke. Ravni fontovi (npr. Helvetica) puno su čitljiviji pa su pogodniji za duže tekstove, iako su vizualno manje atraktivni.

• Bolje je koristiti mala slova jer se puno brže i lakše čitaju u odnosu na velika slova. Velika slova koristiti samo kad želimo privući pažnju i to za relativno kratki tekst.

• Najviše jedna trećina zaslona treba biti ispunjena tekstom. • U jednom redu bi trebalo biti oko 10 riječi (60 karaktera) kako bi se postigla optimalna

brzina čitanja. • Razmak između linija bi trebao biti oko 1:2 do 1:2.7, tj. prazni prostor između linija teksta

trebao bi biti jednak ili nešto veći od visine samih karaktera. 4.2.3. Boje Upotreba boja u grafičkim prikazima omogućuje brže i lakše razumijevanje nego korištenje samo kontura. Međutim boje nije lako ispravno upotrebljavati. Tako npr. ambijent može utjecati na način percepcije boja, a ponekad treba voditi računa da relativno veliki broj ljudi ne razlikuje boje (npr. 8% muškaraca je slabovidno na boje – najčešće se ne razlikuju nijanse crvene i zelene). Stoga je, ako je moguće, korisno uz boje upotrebljavati i druge redundantne elemente kao što je npr. uzorak, šrafura, oblik i sl. Prednosti upotrebe boja:

• dijele prostor na područja, • pokazuju odnos među funkcionalno povezanim objektima, • naglašavaju pojedini objekt u odnosu na pozadinu te tako smanjuju vrijeme pretraživanja, • privlače pažnju korisnika (alarm i sl.), • omogućavaju kodiranje (bojom) različitih logičkih elemenata u slici.

Nedostatci upotrebe boja:

• boja nije pogodna za male elemente, • korisnička percepcija boja ovisi o uvjetima okoline (npr. osvjetljenje), • kodiranje teksta različitim bojama treba koristiti vrlo ograničeno i samo za kratke

tekstualne elemente, • boje treba birati pažljivo tako da se izbjegnu neželjeni efekti, te da po mogućnosti ne

stvaraju probleme ljudima s ograničenim vidom za boje.

Page 18: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

17

Ne bi se smjelo koristiti više od 5 različitih boja ili nijansi iste boje ako se želi da korisnici svakoj boji/nijansi pridruže odgovarajuće značenje. Pri tome upotreba boja treba biti konzistentna (ujednačena) u cijeloj aplikaciji.

Treba voditi računa da ljudi nekoj boji već unaprijed pridružuju odgovarajuće značenje i tu činjenicu treba koristiti (npr. crvena boja znači opasnost ili upozorenje). Ako boje nemaju funkcionalnu ulogu, nego samo dekorativnu, to treba biti sasvim jasno jer će u protivnom korisnici tražit razlog zašto su boje odabrane upravo tako.

Karakteristike kao i općeniti savjeti vezani uz upotrebu boja dani su u tablici 4.2 (Odnosi se na tzv. zapadnu kulturu. Neke kulture i narodi bojama pridjeljuju drugačije značenje).

boja značenje privlačenje pažnje dobro je koristiti s izbjegavati

upotrebu s

crvena opasnost, toplina, stop, alarm, financijski gubitak dobro bijela zelena

žuta opasnost, upozorenje, rizik, nestandardno stanje dobro crna, tamno plava,

zelena bijela

zelena sigurnost, normalno stanje, idi, zadovoljstvo slabo bijela crvena

svjetlo plava savjet, hladnoća jako slabo crna žuta tamno plava savjet slabo bijela žuta magenta alarm dobro bijela

bijela savjet slabo zelena, crna, crvena, tamno modra, magenta

svjetlo plava, žuta

crna slabo bijela, svjetlo plava, žuta

Tablica 4.2 Način korištenja boja – preporuke i karakteristike 4.3. TEHNIČKE KARAKTERISTIKE Razni tehnički aspekti ciljane korisničke platforme bitno utječu na razvitak i konačni izgled aplikacije. Tako vizualni izgled može bitno ovisiti o:

• video modu, rezoluciji i broju boja korisničke platforme, • operacijskom sustavu (Windows, Macintosh, Unix, ...), • raspoloživoj memoriji i prostoru na disku, • načinu distribucije aplikacije (CD, DVD, diskete, Internet, ...).

Treba voditi računa i o uređajima koji će korisniku služiti za unos podataka i interakciju s

aplikacijom kao što su npr.: tipkovnica, miš, Trackball/Rollerball, zaslon osjetljiv na dodir (Touch Screen), Touch Pad, grafička ploča (Graphics Tablet), upravljačka ručica (Joystick), svjetlosna olovka (Light Pen).

Trajanje aplikacije ne smije biti predugo jer korisnik gubi koncentraciju i pažnju. Poželjno je da aplikacija, ovisno o vrsti traje:

• self-running aplikacija – 2-3 min, • ograničena interakcija – 5-6 min, • kompleti demo <15 min, • uz diskusiju i pitanja >30 min.

Page 19: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

18

5. SIGNALI Signali kojima opisujemo realni svijet su promjene u nekom mediju (npr. tlak zraka, udarac fotona i sl.). Možemo kazati da su signali vremenski ovisne fluktuacije u nekom mediju. Gotovo svi signali realnog svijeta su kontinuirani veličine (dakle realni, a ne cijeli brojevi) pa za takve signale kažemo da su ANALOGNI.

Računala koriste DIGITALNI zapis (temelje se na cijelim brojevima odnosno nulama i jedinicama) pa da bi u računalu mogli obrađivati signale realnog svijeta, analogne signale moramo pretvoriti u digitalne. To je postupak koji se zove analogno/digitalna (A/D) pretvorba. Obrnuti postupak, tj. pretvorba digitalnih signala u analogne, naziva se digitalno/analogna (D/A) pretvorba. Shematski prikaz postupka analogno/digitalne i digitalno/analogne pretvorbe dan je na slici 5.1. Analogno/digitalna pretvorba sastoji se od:

• uzorkovanja, • kvantiziranja, • kodiranja.

Digitalno/analogna pretvorba sastoji se od dekodiranja i niskopropusnog filtriranje kojim se

od digitalnog signala dobije analogni.

uzorkovanje kvantiziranje kodiranje

pohrana

dekodiranje

prijenos

nisko propusnofiltriranje

analognisignal

analognisignal

digitalnisignal

Slika 5.1 Analogno/digitalna (A/D) i digitalno/analogna (D/A) pretvorba Uzorkovanje Uzorkovanje signala vrši se mjerenjem vrijednost signala u određenim, vremenski jednako razmaknutim, trenucima, pa uzorkovanje predstavlja diskretizaciju u vremenu. Da bi sačuvali cjelokupnu informaciju frekvencija uzorkovanja mora biti više nego dvostruko veća od gornje granične frekvencije. To je poznati teorem uzorkovanja:

cs f2f > gdje je fs frekvencija uzorkovanja, a fc gornja granična frekvencija. Na slici 5.2 ilustrirano je uzorkovanje signala.

Page 20: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

19

t

A

trenutciuzorkovanja

Slika 5.2 Uzorkovanje signala

Kvantiziranje Kvantiziranjem se stvarnoj vrijednosti pridruži jedna od vrijednost iz konačnog diskretnog skupa vrijednosti (kvantizacijskih razina). Ako se uzorkovanje vrši u skladu s teoremom uzorkovanja onda se uzorkovanjem ne unosi nikakva greška pa se s niskopropusnim filtrom signal može u potpunosti rekonstruirati. Međutim kvantizacija (diskretizacija po amplitudi) u svakom slučaju unosi grešku. To je greška kvantizacije i jednaka je razlici stvarne vrijednosti i pridružene diskretne vrijednosti. Mjera greške kvantizacije je signal/šum omjer (SNR) odnosno u ovom konkretnom slučaju signal/šum omjer kvantizacije (QSNR)

QNSlog10QSNR =

gdje je S snaga signala, a NQ šum kvantizacije. Neka je broj bita po svakom uzorku jednak m što znači da je ukupno moguće definirati m2

različitih razina signala. Može se pokazati da je u tom slučaju najgori mogući signal/šum omjer kvantizacije jednak

[ ]dBm02.6QSNR ⋅= Drugim riječima, svaki bit u kvantizatoru znači 6 dB veći signal/šum omjer kvantizacije. Tako

npr., za 8 bita QSNR = 48 dB, a za 16 bita QSNR = 96 dB. Kvantizacija osim linearne može biti i nelinearna. Tako se za kodiranje govornog signala

koristi logaritamska kvantizacija (A-zakon u Europi i μ-zakon u SAD). Logaritamska kvantizacija aproksimira percepcijsku nelinearnost i efektivno znači povećanje broja kvantizacijskih razina.

Osim greške kvantizacije može se kod postupka kvantizacije javiti i greška preopterećenja kada stvarni signal prelazi izvan područja kvantizacije pa se kvantizira s najvišom odnosno najmanjom kvantizacijskom razinom. Greška kvantizacije i greška preopterećenja ilustrirane su na slici 5.3.

Page 21: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

20

000

101

010

011

111

110

001

100

kvantizacijskerazine

t

Agreška

preopterećenja greškakvantizacije

kod

Slika 5.3 Kvantiziranje i kodiranje signala Kodiranje Kodiranjem se svakoj diskretnoj vrijednosti (kvantizacijskoj razini) pridruži jedinstveni zapis – KOD. Kod je najčešće niz nula i jedinica. Kodiranje i kvantiziranje signala prikazano je na slici 5.3. Transformacija signala Realni signali mogu se matematički analizirati rastavljanjem na osnovne valove odnosno prebacivanjem iz vremenske u neku drugu domenu. Taj se postupak zove TRANSFORMACIJA. Transformacijom se signal prebacuje u takvu domenu (npr. frekvencijsko područje) u kojoj je bitno olakšana analiza i obrada signala. Obično je transformacija takva da se koriste periodičke funkcije, npr. sinusna funkcija kod Fourierove transformacije.

Na slici 5.4 prikazano je rastavljanje signala na osnovne valove (sinusoide) kod Fourierove transformacije. Dodatna pogodnost kod Fourierove transformacije je što transformirano (frekvencijsko) područje ima i fizikalno značenje.

+ +=

Slika 5.4 Rastavljanje signala na osnovne valove (Fourierova transformacija)

Page 22: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

21

6. AUDIO SIGNAL 6.1. OSNOVE AUDIO SIGNALA Zvuk je kontinuirani (longitudinalni) val koji putuje kroz neko sredstvo, a nastaje uslijed razlike tlakova. Npr., udarac palicom u bubanj rezultira pomicanjem molekula zraka zbog razlike tlaka prouzročenog tim udarcem. Bilo koji vibrirajući objekt može proizvesti zvuk. Kad se objekt pomiče naprijed stvara područje visokog tlaka i suprotno, kad se pomiče natrag, područje niskog tlaka.

Zvuk ima uobičajena valna svojstva (difrakcija, refleksija, refrakcija, interferencija, itd.). Tako npr., valovi koji nisu u fazi mogu prouzročiti interferenciju. Nadalje, zvuk se reflektira od zida ako ima malu valnu duljinu, a ovija oko zida ako je valne duljina velika. Na slici 6.1 prikazan je vremenski odnos direktnog zvuka, rane refleksije i jeke. Da bi osjetili efekt jeke, potrebno je barem 100 ms razlike između dolaska direktnog i reflektiranog vala do uha.

Slika 6.1 Direktni zvuk, rana refleksija i jeka

Grana tehnike koja proučava zvuk odnosno generiranje, prijenos i prijem zvučnih valova naziva se AKUSTIKA. Najvažniji aspekti akustike su psihoakustika, glazba, analiza i sinteza govora, MIDI standard, itd. Psihoakustika se bavi ljudskim čujnim sustavom te se na rezultatima psihoakustike temelje moderni sustavi za kompresiju audio signala.

Audio signal (zvučni val) može biti periodički ili neperiodički. Tipično su periodički signali samoglasnici i drugi "čisti" tonovi dok su neperiodički signali razni praskavi zvukovi ("p", "t" i sl.) te šumovi. Prirodni zvukovi su najčešće neperiodički. Periodičke zvukove generiraju glazbeni instrumenti ili npr. pjev ptice pa se kod periodičkih zvukova najčešće radi o glazbi. Na slikama 6.3 i 6.5 prikazani su neperiodički i periodički zvučni val (govor).

Page 23: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

22

6.2. AUDIO SIGNAL U VREMENSKOM I FREKVENCIJSKOM PODRUČJU Općenito se smatra da čovjek može čuti zvučne valove s frekvencijom od 20 Hz do 20 kHz koje onda zovemo audiosonični valovi odnosno skraćeno audio valovi/signali. U skladu s tim uređaji za snimanje i reprodukciju zvuka rade maksimalno u tom frekvencijskom opsegu2. Ipak nisu sve frekvencije jednako značajne za ljudsku percepciju. Percepciji puno više doprinose niske frekvencije nego visoke i to najviše na frekvencijama od približno 700 Hz do 6600 Hz. To je i frekvencijsko područje koje je blisko frekvenciji ljudskog glasa. Tako frekvencijski spektar prirodnog ljudskog glasa, koji zovemo govorni signal, varira u rasponu od 80 Hz do 3400 Hz. Za usporedbu gornja nota klavira je na frekvenciji3 4186 Hz. Zvučne valove po frekvencijskom području možemo podijeliti na slijedeća područja:

• infrasonični valovi: od 0 Hz do 20 Hz, • audiosonični valovi: od 20 Hz do 20 kHz, • ultrasonični valovi: od 20 kHz do 1 GHz, • hipersonični valovi: od 1 GHz do 10 THz.

Neke životinje mogu čuti i zvučne valove koje čovjek ne može, npr.:

• tuna: 50 – 1,100 Hz • kanarinac: 250 – 8,000 Hz • krava: 23 – 35,000 Hz • pas: 67 – 45,000 Hz • mačka: 45 - 64,000 Hz • miš: 1,000 – 91,000 Hz • šišmiš: 2,000 – 110,000 Hz • bijeli kit: 1,000 – 123,000 Hz • dupin (obična pliskavica): 75 – 150,000 Hz

Brzina zvuka ovisi o sredstvu kroz koji se prostire, a u zraku na standardnoj temperaturi i

tlaku iznosi 343 m/s. U skladu s tom brzinom valna bi duljina za audio signal frekvencije 20 Hz bila 17.2 metra, a za signal frekvencije 20 kHz 1.72 centimetra.

Na slici 6.2 prikazan je govorni signal u vremenskom području za riječ SPEKTAR te su na slikama 6.3, 6.4 i 6.5 prikazani uvećani detalji za karakteristična slova S (bezvučni glas), T (praskavi glas) i A (zvučni glas). Na slici 6.6 dan je frekvencijski spektar gore navedenih signala.

2 Novija istraživanja pokazuju da, iako čovjek ne čuje izvan tog frekvencijskog područja, on ipak osjeća vibracije pa i druge frekvencije doprinose ukupnom osjećaju glazbe. 3 Treba napomenuti da je to samo osnovna frekvencija, a da se osim te frekvencije u ukupnom spektru zvučnog signala nalaze i viši harmonici osnovne frekvencije (8372 Hz, 12558 Hz, ...) koji mogu bitno utjecati na percepcijski doživljaj zvuka.

Page 24: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

23

ampl

ituda

0.05

0

-0.1

-0.05

00

5000.0625

10000.125

20000.25

15000.1875

25000.3125

30000.375

35000.4375

40000.5

uzorcivrijeme [s]

0.1

0.1

45000.5625

50000.625

S P E K T A R

Slika 6.2 Govorni signal (8 kHz, 16 bita/uzorku, riječ SPEKTAR)

ampl

ituda

0

-0.015350 400

0.05450 550500

0.0625600

0.075650 700

0.0875750 uzorci

vrijeme [s]

0.015S

Slika 6.3 Govorni signal (8 kHz, 16 bita/uzorku, bezvučni glas S iz riječi SPEKTAR)

ampl

ituda

0

-0.043550 3600

0.453650 37503700

0.462538000.475

3850 39000.4875

3950 uzorcivrijeme [s]

0.04T

Slika 6.4 Govorni signal (8 kHz, 16 bita/uzorku, praskavi glas T iz riječi SPEKTAR)

Page 25: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

24

ampl

ituda

0

-0.0438000.475

3850 39000.4875

40000.5

3950 4050 41000.5125

4150 42000.525

uzorcivrijeme [s]

0.04A

Slika 6.5 Govorni signal (8 kHz, 16 bita/uzorku, zvučni glas A iz riječi SPEKTAR)

ampl

ituda

0

0 500 1000 20001500 2500 3000 3500 4000f [Hz]

0.3S

ampl

ituda

0

0 500 1000 20001500 2500 3000 3500 4000

4SPEKTAR

ampl

ituda

0

0 500 1000 20001500 2500 3000 3500 4000

1.2T

ampl

ituda

0

0 500 1000 20001500 2500 3000 3500 4000f [Hz]

2.5A

Slika 6.6 Spektar govornog signala (8 kHz, 16 bita/uzorku, riječ SPEKTAR te glasovi S, T i A)

6.3. DETEKCIJA I MJERENJE RAZINE ZVUKA Zvuk se detektira (prijemnik) mjerenjem razine tlaka što radi npr. mikrofon u zvučnom polju čija se membrana giba u skladu s tlakom. Nakon toga se u mikrofonu energija gibanja membrane pretvara u električnu energiju.

Page 26: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

25

Generator zvuka (predajnik) je zvučnik koji radi suprotnu operaciju. Pretvara električni signal u pomicanje membrane čime se stvara razlika tlaka odnosno zvuk. Kada je početkom XX stoljeća izmišljen zvučnik predstavljao je revoluciju i pravi početak glazbene industrije. Poslije je, nakon niza eksperimenata ustanovljeno da za većinu ljudi dvokanalni sustav (stereo) generira bitno bolji zvuk pa se stereo zvuk i danas najčešće koristi. Poslije su razvijeni i višekanalni sustavi, npr. 6 kanalni sustav kod kućnog kina. To je tzv. surround zvuk koji omogućuje još potpuniji doživljaj zvuka.

Budući da pužnica, smještena u unutrašnjem uhu, na stimulaciju zvučnim valom reagira logaritamski to je i skala za mjerenje razine zvuka u decibelima. Razina zvuka nekih karakterističnih zvukova dana je u tablici 6.14. Prag čujnosti ispod kojeg čovjek ne može čuti je, u apsolutnom iznosu, 20 μPa (mikroPaskala) na 1000 Hz. To je manje od 10-9 atmosferskog tlaka. Razina zvuka od 0 dB odnosi se upravo na taj tlak od 20 μPa. Prag bola je oko 105 puta veći, ali još uvijek manje od 1/1000 atmosferskog tlaka. Razina zvuka (engl. sound level) naziva se još i razina tlaka zvuka (engl. sound pressure level – SPL).

Zvukovi iste razine ali različitih frekvencija ne moraju nužnu zvučati jednako glasno. Ljudska percepcija glasnoće složena je i osim o razini zvuka (razlici tlakova) ovisi i o ljudskoj slušnom aparatu.

izvor zvuka razina zvuka

ne čuje se zvuk 0 dB šuškanje papira 20 dB tihi dom 35 dB bučna ulica 70 dB orkestar (najglasnije) 80 dB rock koncert 120 dB granica čujnosti - bolno 130 dB

Tablica 6.1 Primjeri različitih zvukova i pripadnih razina

6.4. KAKO ČOVJEK ČUJE ? Ljudsko se uho (slika 6.7) sastoji od tri dijela: vanjskog, srednjeg i unutrašnjeg uha. Zvukovod, čiji početak vidimo u uški, završava bubnjićem (membrana tympani) koji je granica prema srednjem uhu. Bubnjić svojim pomicanjem prenosi zvučni val (tj. promjene u tlaku zraka) na sustav koščica (malleus-čekić, incus-nakovanj, stapes-stremen) koje pripadaju srednjem uhu. Te koščice provode dalje zvučni val do unutrašnjeg uha. Ono se sastoji od dva funkcionalno različita dijela. To su tri polukružna kanala (canales semicirculares) koji sudjeluju u formiranju osjeta ravnoteže i pužnica (cochlea) s osjetnim stanicama koje imaju sposobnost "prevesti" zvučne valove u električne impulse. Te impulse slušni živac (nervus statoacusticus) prenosi do mozga, a mi ih u krajnjem ishodu doživljavamo kao zvuk.

4 Vrijednosti ovise o frekvenciji. Primjerice prag bola za frekvenciju od 50 Hz je oko 140dB, dok za frekvenciju od 3000 Hz iznosi 125dB.

Page 27: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

26

Slika 6.7 Ljudsko uho

Zvukovi koje naše uho čuje različitih su visina (frekvencija). Pojedine frekvencije zvučnog

vala podražavaju samo one osjetilne stanice koje se nalaze na specifičnim mjestima unutar pužnice (slika 6.8) što znači da uho praktično radi spektralnu analizu, pri čemu se amplituda doživljava kao glasnoća.

Slika 6.8 Spektralna analiza ljudskog uha (pužnice)

Prostorni položaj izvora zvuka (lijevo/desno) određuje se na temelju različitih signala koji dolaze do lijevog i desnog uha (slika 6.9). Maksimalna vremenska razlika u dolasku zvuka do lijevog i desnog uha je 0.7 do 0.8 ms. To je slučaj kada se izvor zvuka nalazi pod kutom od 90° (ili 270°) u odnosu na slušača. Položaj ispred/iza možemo odrediti zahvaljujući obliku i položaju ušnih školjki.

Page 28: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

27

Slika 6.9 Osjećaj prostornosti temelji se na različitim vremenima dolaska signala u lijevo

i desno uho 6.5. KAKO ČOVJEK GOVORI ? Na slici 6.10 prikazan je ljudski govorni sustav (engl. vocal tract). Da bi se generirao govor, pluća kroz dušnik pumpaju zrak koji zatim prolazi kroz govorni sustav i to od glasnica do usta. Dio zraka dolazi i u nosnu šupljinu.

Slika 6.10 Ljudski govorni sustav [Wolfe 1995]

Govorni sustav ima osobinu rezonatora čije se karakteristike mijenjaju promjenom oblika (npr. pomicanje jezika). Te rezonantne karakteristike mijenjaju toka zraka iz glasnica kako bi kreirale specifičan zvuk. Rezonantne frekvencije zovu se formanti.

Postoje tri vrste zvukova koje čovjek može generirati. Svi zvukovi pripadaju ili nekom od tih zvukova ili njihovoj mješavini:

Page 29: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

28

• Zvučni glasovi – stvaraju se kada glasnice vibriraju, otvaraju i zatvaraju. Time iz glasnica izlaze periodički impulsi zraka. Brzina kojom se glasnice otvaraju i zatvaraju određuje osnovnu frekvenciju, tzv. pitch period glasa (u prosjeku muškarci 125Hz/8ms, žene 200Hz/5ms, djeca 300Hz/3.3ms).

• Bezvučni glasovi – stvaraju se kada su glasnice otvorene, ali ne vibriraju. Zrak prolazi slobodno kroz glasnice, a oblikuje ga samo govorni sustav.

• Praskavi glasovi – nastaju zadržavanjem zraka iza govornog sustava i njegovim naglim otpuštanjem.

Možemo kazati da je govor određen oblikom vokalnog trakta (formantima) i tipom uzbude

(pitch period). Važna činjenica je da se oblik vokalnog trakta i tip uzbude (tok zraka iz glasnica) relativno sporo mijenjaju. Tako se govorni signal može smatrati praktično stacionarnim za intervale do 20 ms. Osim toga govorni signal ima veliku autokorelaciju pa se može relativno lako predviđati. 6.6. PSIHOAKUSTIKA Audio specifični algoritmi temelje se na specifičnostima ljudske percepcije zvuka i mogu se koristiti isključivo za kodiranje audio signala. Neke od činjenica na kojima se temelje audio specifični algoritmi su:

• frekvencijski raspon čujnosti od 20 Hz do 20 kHz, • najosjetljivije područje 700 Hz do 6600 Hz, • dinamičko područje (najtiši do najglasniji) 120 dB, • čovjek je manje osjetljiv na promjene u "glasnom" zvuku nego na promjene u "tihom"

zvuku, • rezolucija čovjekova čujnog sustava je ograničena i frekvencijski ovisna, • prag čujnosti, • frekvencijsko maskiranje, • vremensko maskiranje.

Rezolucija čovjekovog čujnog sustava

Rezolucija čovjekovog čujnog sustava je ograničena, a uz to i frekvencijski ovisna. Već smo vidjeli da se u pužnici nalaze osjetilne stanice koje reagiraju na audio valove. Pužnica pri tome funkcionira kao banka filtara (frekvencijskih) i to tako da filtri bliže početku pužnice imaju najveći odziv na najviše frekvencije, a filtri bliže kraju imaju najveći odziv na najniže frekvencije.

To znači da čovjek ima ograničenu sposobnost razlikovati različite frekvencije pri čemu sposobnost razlikovanja različitih frekvencija ovisi upravo o našim audio filtrima. Pojasna širina tih filtara je različita za različite frekvencije, a može se odrediti eksperimentalno. Širine audio filtara nazivaju se Kritični pojasevi (engl. Critical Band). Pri tome treba voditi računa da naši audio filtri nemaju oštru granicu nego se jako preklapaju, pa je podjela na Kritične pojaseve samo aproksimacija stvarnosti.

Kritični pojas širok je 100 Hz za niske frekvencije, odnosno više od 4 kHz za najviše frekvencije, pa je cijeli pojas audio frekvencija podijeljen je na 25 kritičnih pojaseva. Jedinica za mjeru kritičnog pojasa je Bark (od Barkhausen). Skala Bark je linearna do frekvencije od 500 Hz, a približno logaritamska na višim frekvencijama. U tablici 6.2 dana je podjela spektra audio frekvencija na kritične pojaseve.

Page 30: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

29

Dva zvuka jednake glasnoće a male razlike u frekvenciji, zvučat će gotovo jednako glasno kao i pojedinačni zvukovi. Razlog je u činjenici da se oba nalaze unutar jednog kritičnog pojasa pa uzbuđuju iste osjetilne stanice što ne doprinosi značajnom povećanju glasnoće. S druge strane, ako dva zvuka upadaju u različite kritične pojaseve, njihovo istodobno slušanje rezultirat će značajnim povećanjem glasnoće. Stoga širokopojasni zvukovi iste razine zvuče glasnije nego uskopojasni zvukovi (oni koji upadaju u jedan kritični pojas).

Kritični pojasevi igraju značajnu ulogu i kod mogućnosti frekvencijskog razlikovanja dvaju zvukova. Minimalna primjetna razlika između dvije uzbude (dva tona) naziva se tek zamjetljiva razlika (just noticeable difference - jnd). Tek zamjetljiva razlika (jnd) za pitch (frekvenciju) ovisi o frekvenciji, razini, trajanju i vrsti zvuka. Unutar jednog kritičnog pojasa nalazi se oko 30 tek zamjetljivih razlika (jnd). To znači da smo za niske frekvencije u stanju razlikovati tonove razmaknute za oko 3 Hz, ali je za visoke frekvencije to značajno više. Tek zamjetljiva razlika (jnd) postoji i za razine zvuka. I kada je u pitanju razina zvuka jnd značajno ovisi karakteristikama zvuka, a načelno možemo kazati da je jnd oko 1 dB. Vidimo da je uistinu rezolucija čovjekovog čujnog sustava ograničena, a uz to i ovisna i to ne samo o frekvenciji nego i o drugim karakteristikama zvuka.

Kritični pojas je mjera koja je bliska mjeri mel (od melody). Mel je percepcijska skala (definirana od slušača) takva da razlika u distanci između pojedinih jedinica percepcijski ima uvijek isto povećanje frekvencije. To znači da povećanje frekvencije od Barka 3 do Barka 4 (od 250 Hz do 350 Hz) percepcijski doživljavamo isto kao i povećanje frekvencije od Barka 14 do Baka 15 (od 2150 Hz do 2500 Hz).

Bark donja granica [Hz] sredina [Hz] gornja

granica [Hz] Bark donja granica [Hz] sredina [Hz] gornja

granica [Hz]

1 0 50 100 14 2000 2150 2320 2 100 150 200 15 2320 2500 2700 3 200 250 300 16 2700 2900 3150 4 300 350 400 17 3150 3400 3700 5 400 450 510 18 3700 4000 4400 6 510 570 630 19 4400 4800 5300 7 630 700 770 20 5300 5800 6400 8 770 840 920 21 6400 7000 7700 9 920 1000 1080 22 7700 8500 9500 10 1080 1170 1270 23 9500 10500 12000 11 1270 1370 1480 24 12000 13500 15500 12 1480 1600 1720 25 15500 19500 13 1720 1850 2000

Tablica 6.2 Podjela spektra audio frekvencija na kritične pojaseve

Prag čujnosti Zamislimo slijedeći eksperiment. Nalazimo se u tihoj prostoriji. Generirajmo zvučni val na nekoj frekvenciji (npr. 1 kHz) vrlo male razine (npr. 0.1 dB). Na toj frekvenciji i s tom razinom nećemo čuti zvuk. Povećajmo razinu dok ne čujemo zvuk, što će na toj frekvenciji biti oko 10 dB. Ponovimo eksperiment za sve frekvencije. Time smo dobili osjetljivost ljudske percepcije zvuka u ovisnosti o frekvenciji (prag čujnosti) što je prikazano na slici 6.11. To je zapravo prag čujnosti (na tišini) koji kaže kolika je razina zvuka potrebna na pojedinim frekvencijama da bi zvučni val uopće čuli.

Page 31: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

30

razi

na [d

B]60

40

0

20

80

100

0.02 0.05 0.1 0.50.2 1 2 5 10 20

frekvencija[kHz]

čujno

nečujno

Slika 6.11 Prag čujnosti (na tišini) Dakle, signal na određenoj frekvenciji treba biti iznad praga kako bi ga mogli čuti. Naravno,

ako je signal ispod praga čujnosti nema niti potrebe da ga prenosimo. Ovu karakteristiku koriste mnogi koderi kako bi učinkovitije komprimirali audio signal. Frekvencijsko maskiranje Frekvencijsko maskiranje je percepcijska pojava kod koje signal manje razine (maskirani signal) može postati nečujan (maskiran) ako istovremeno postoji i signal veće razine (maskirajući signal). Frekvencijsko maskiranje je najveće u kritičnom pojasu u kojem je maskirajući signal lociran, dok je utjecaj u susjednim kritičnim pojasevima manji.

Zamislimo slijedeći eksperiment. Generirajmo zvučni val na nekoj frekvenciji (npr. 1000 Hz) s razinom koja je iznad praga čujnosti (npr. 80 dB). Paralelno s tim tonom generirajmo još jedan zvučni val bliske frekvencije (npr. 1050 Hz) malo iznad praga čujnosti. Bez obzira što je drugi ton iznad praga čujnosti nećemo ga čuti jer je frekvencijski maskiran zbog prisustva glasnijeg tona bliske frekvencije. Dakle, prag čujnosti se mijenja u ovisnosti o razini frekvencijski bliskih signala.

Prag čujnosti kod frekvencijskog maskiranja za signal frekvencije 1 kHz razine 80 dB prikazan je na slici 6.12. Krivulja praga čujnosti je manja strma prema višim frekvencijama što znači da se više frekvencije lakše frekvencijski maskiraju.

Slika 6.12 Frekvencijsko maskiranje audio signala u ovisnosti o amplitudi

Page 32: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

31

Na slici 6.13 prikazano je frekvencijsko maskiranje za slučaj iste razine, ali različitih frekvencija. Očito je da je na većim frekvencijama efekt maskiranja (pojasna širina) veći nego na nižim frekvencijama što je u skladu i sa širinom kritičnih pojaseva. Tako će većina ljudi primijetiti razliku između tonova od 1kHz i 3kHz dok je samo manji broj ljudi u stanju primijetiti razliku između tonova od 14kHz i 17kHz.

Ovdje je opisano samo maskiranje uslijed jednog maskirajućeg signala. Ako istovremeno postoji više maskirajućih signala, svaki od njih ima svoj prag maskiranja, te je u tom slučaju potrebno izračunati globalni prag maskiranja.

Efekt frekvencijskog maskiranja može se iskoristiti za kompresiju audio signala tako da se ne kodiraju oni signali koji su frekvencijski maskirani tj. oni koji su ispod praga čujnosti. Ali, efekt frekvencijskog maskiranja može se iskoristiti i tako da se za prijenos signala koji nisu maskirani potroši manje bita nego što bi to bio slučaj bez maskiranja. Distorzija (koja se može čuti) u danom podpojasu je NMR (slika 6.14) i mjeri se kao:

( ) ( ) [ ]dBmSNRSMRmNMR −= gdje je

( )mNMR - Omjer šuma i maskiranja za m-bitni kvantizator (engl. noise-to-mask ratio), SMR - Omjer signala i maskiranja (engl. signal-to-mask ratio) - maksimalna vrijednost je na

lijevoj granici kritičnog pojasa a minimalna je na frekvenciji maskirajućeg signala i iznosi oko 6dB, ( )mSNR - Omjer signala i šuma za m-bitni kvantizator (engl. signal-to-noise ratio).

razi

na [d

B]

60

40

0

20

80

100

0.02 0.05 0.1 0.50.2 1 2 5 10 20

frekvencija[kHz]

čujno

nečujno

fm=0.25 fm=1 fm=4B=0.1 B=0.16 B=0.7

Slika 6.13 Frekvencijsko maskiranje audio signala – pojasna širina u ovisnosti o frekvenciji

Šum zbog greške kvantizacije neće se čuti sve dok je ispod praga čujnosti. To znači da se distorzija, unutar kritičnog pojasa, neće čuti sve dok je ( )mSNR veći od SMR, odnosno dok je

( )mNMR negativan. Što je efekt maskiranja veći, to je manje bita potrebno da bi razina šuma bila ispod praga čujnosti. Šum zbog greške kvantizacije će u susjednim pojasevima također biti maskiran ali u manjoj mjeri nego unutar kritičnog pojasa.

Opisali smo slučaj samo jednog maskirajućeg signala. Kao što smo već rekli, ako se signal sastoji od više maskirajućih signala potrebno je odrediti globalni prag maskiranja.

Page 33: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

32

Slika 6.14 Frekvencijsko maskiranje i šum kvantizacije Vremensko maskiranje Vremensko maskiranje je percepcijska pojava u vremenskom području koja se javlja kada u kratkom vremenskom razmaku postoje dva zvučna signala.

Zamislimo slijedeći eksperiment. Generirajmo neki zvučni val (ton) koji je iznad praga čujnosti te paralelno s tim tonom generirajmo još jedan na bliskoj frekvenciji koji je također iznad praga čujnosti (za slučaj tišine), ali koji se u ovom slučaju ne čuje jer je frekvencijski maskiran. Zatim prekinimo generiranje tona kojeg čujemo. Signal koji je do tada bio maskiran nećemo odmah čuti nego tek nakon nekog vremena. Ta pojava se zove vremensko maskiranje što je prikazano na slici 6.15.

U ovisnosti o razinama signala, jači zvuk može maskirati slabiji čak i ako maskirani signal prethodi maskirajućem (pre-maskiranje). Efekt post-maskiranja traje od oko 50 ms do oko 200 ms, dok je efekt pre-maskiranja značajno kraći, oko jedne desetine post-maskiranja. Vremensko maskiranje se, kao i frekvencijsko, može iskoristiti za kompresiju audio signala.

Slika 6.15 Vremensko maskiranje audio signala (maskirajući signal 1 kHz, 60 dB;

maskirani signal 1.1 kHz)

Page 34: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

33

Zajednički utjecaj vremenskog i frekvencijskog maskiranja Na slici 6.16 prikazan je zajednički efekt vremenskog i frekvencijskog maskiranja. Bilo koji zvučni val koji je ispod praga (3D površine) ne možemo čuti.

Slika 6.16 Zajednički efekt vremenskog i frekvencijskog maskiranja 6.7. DIGITALIZACIJA AUDIO SIGNALA Audio signal je potrebno digitalizirati da bi se mogao koristiti u računalima. Za to je potrebno definirati frekvenciju uzorkovanja i broj bita po uzorku. U tablici 6.3 dane su, za nekoliko tipičnih audio signala, frekvencije uzorkovanja i broj bita po uzorku kao i neke druge karakteristike koje proizlaze iz tih vrijednosti.

Kvaliteta/ format

frekv. uzorkovanja

(Hz)

frekvencijski pojas (Hz)

mono/stereo

bita po uzorku

dinamičko područje

(dB)

brzina prijenosa

(kb/s)

memorija za 1 min

(MB/min)

Telefonija 8000 300-3400 mono 8 48 64 0.48 AM radio 11025 mono 8 48 88.2 0.6615 FM radio 22050 stereo 16 96 705.6 5.292 Telekonferencija 16000 50-7000 stereo 16 96 512 3.840

CD 44100 20-20000 stereo 16 96 1411.2 10.584 DAT 48000 20-20000 stereo 16 96 1536 11.520

Tablica 6.3 Osnovne karakteristike za neke tipične audio signale

Page 35: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

34

6.8. FORMATI ZA POHRANU AUDIO SIGNALA Datoteka koja sadrži podatke iz kojih se generira audio signal naziva se audio datoteka. Postoji niz različitih formata u kojima se audio signal može pohraniti. Slično kao i kod formata slika, audio datoteka može sadržavati dva tipa podataka i to:

• uzorke audio signala (zvučna datoteka - slično rasterskom formatu kod slika), • digitalni kod tipa, oblika i redoslijeda upotrijebljenih nota (glazbena datoteka - slično

vektorskom formatu kod slika). U tablici 6.4 dan je prikaz nekih najčešćih formata za pohranu audio signala.

naziv ekstenzija koder/dekoder

AIFF - Audio Interchange File Format (Mac) .aif, .aiff PCM AU - audio (Sun/Next) .au μ-law CDDA - CD audio - Compact Disc Digital Audio - PCM MP3 .mp3 MPEG Audio Layer-III WMA - Windows Media Audio .wma Proprietary (Microsoft) QT - QuickTime .qt Proprietary (Apple Computer) RA - RealAudio .ra, ram Proprietary (Real Networks) MIDI - Musical Instrument Digital Interface .mid, .rmi glazbena datoteka MOD - modules .mod glazbena datoteka WAV – wave (Microsoft) .wav PCM

Tablica 6.4 Najčešći formati za pohranu audio signala

Page 36: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

35

7. KOMPRESIJA AUDIO SIGNALA Komprimiranje (sažimanje) je postupak kojim se smanjuje broj bita potreban za prijenos i pohranu, u ovom slučaju audio signala. Tip kompresije ili kompresijski algoritam često se naziva codec (compressing/decompressing). Sažimanje može biti

• s gubicima (engl. lossy) kod kojeg se dio informacije nepovratno gubi, • bez gubitaka (engl. lossless) kod kojeg se informacija nakon kodiranja može u potpunosti

vratiti na originalni oblik.

Kodiranje bez percepcijskog gubitka (engl. perceptually lossless) je cilj kojim teži većina kodera audio signala. Kod tog pristupa postoji gubitak informacije, dakle spada u lossy kodiranje, ali slušatelj ne može čuti razliku između originalnog i komprimiranog zvuka. MP3 je primjer takvog tipa kompresije.

Sažimanje bez gubitaka uključuje algoritme poput Shannon-Fano, Huffman, Lempel-Ziv-Welch, aritmetičko, run length i sl. Takvi se algoritmi uglavnom koriste za kompresiju podataka. Kad se radi o elementima multimedije onda su takvi algoritmi zanimljivi gotovo isključivo za kodiranje slika. Općenito su u multimediji puno zanimljiviji algoritmi s gubicima, naročito oni kod kojih nema percepcijskog gubitka (engl. perceptually lossless) pa će u nastavku biti riječ uglavnom o takvim algoritmima. Algoritme (tehnike) za kodiranje audio signala možemo podijeliti na:

• Generičke tehnike - diferencijalno kodiranje (DPCM, ADPCM, DM, ADM), - vektorska kvantizacija;

• Audio-specifične tehnike - transformacijski i percepcijski temeljeno kodiranje;

• Govor-specifične tehnike - sinteza govora.

Generičke tehnike mogu se koristiti za komprimiranje bilo kojeg drugog signala, a ne samo za

audio signal. Za razliku od generičkih tehnika, audio-specifične tehnike mogu se koristiti isključivo za kodiranje audio signala jer koriste neka njegova specifična svojstva. Pod audio signalom podrazumijevamo zvučni signal iz cijelog čujnog frekvencijskog spektra (20 Hz do 20 kHz). Govor-specifične tehnike mogu se koristiti isključivo za kodiranje govornog signala gdje pod govornim signalom podrazumijevamo zvuk koji čovjek može generirati svojim govornim sustavom tj. ono što je čovjek u stanju izgovoriti. U praksi se to uglavnom odnosi na onaj dio audio signala koji se prenosi u fiksnoj telefoniji (300 Hz-3400 Hz). 7.1. GENERIČKE TEHNIKE 7.1.1. Diferencijalna pulsno kodirana modulacija (DPCM) Diferencijalna PCM iskorištava redundanciju među uzorcima kako bi smanjila brzinu prijenosa. Kako je autokorelacija zvučnog, a naročito govornog signala jako velika (0.9 za pomak od jednog uzorka),

Page 37: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

36

to znači da se razlika između dva susjedna uzorka može kodirati sa značajno manje bita nego originalni uzorci. Dakle kod DPCM-a se prenosi razlika uzoraka, a ne uzorci signala. DPCM omogućuje da se 8-bitni audio signal (8 kHz, 64 kb/s) uz percepcijski istu kvalitetu kodira s 7 bita/uzorku što daje ukupno 56 kb/s. Na slici 7.1 prikazana je shema DPCM kodera i dekodera. U najjednostavnijem slučaju prediktor je element za kašnjenje.

7-bitni DPCM

(razlika)++

+

-

8-bitni PCM(uzorak) kvantiziranje

razlike

+prediktor (L)+

+

prediktor (L)

+

+

koder dekoder

7-bitni DPCM(razlika)

8-bitni PCM(uzorak)

Slika 7.1 Shema DPCM kodera i dekodera

Problem kod DPCM-a je što se signal razlike za visoke frekvencije ne može predstaviti s malo bita. To je problem preopterećenja koji vodi do neugodnih distorzija na visokim frekvencijama. Problem preopterećenja kod DPCM-a ilustriran je na slici 7.2.

000

101

010

011

111

110

001

100 t

A greška preopterećenja

t00.125ms

!!

t

!!korak kvantizacije

korak kvantizacije

Slika 7.2 Problem greške preopterećenja kod DPCMa

Page 38: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

37

7.1.2. Adaptivna diferencijalna PCM (ADPCM) ADPCM koristi veće kvantizacijske korake za kodiranje razlike među uzorcima na visokim frekvencijama i manje korake kvantizacije za kodiranje razlika među uzorcima na nižim frekvencijama. Shema ADPCM kodera dana je na slici 7.3. Temeljem prethodnih uzoraka, predviđaju se slijedeći uzorci i adaptivno mijenja korak kvantizacije te se potom kodiraju razlike između stvarne i predviđene vrijednosti. Time se uspješno rješava problem greške preopterećenja prisutan kod DPCM što je ilustrirano na slici 7.4.

x-bitni ADPCM(razlika)

++

+

-

8-bitni PCM(uzorak) kvantiziranje

razlike

+prediktor (L)+

podešavanjekoraka

dekvantiziranje

Slika 7.3 Shema ADPCM kodera

razl

ika

t

korakkvantizacije

Slika 7.4 ADPCM - rješavanje problema greške preopterećenja

Primjer ADPCMa je sustav definiran standardom ITU-T G.726 koji podržava brzine prijenosa od 40 kb/s, 32 kb/s, 24 kb/s i 16 kb/s. 7.1.3. Delta modulacija i Adaptivna delta modulacija Delta modulacija (DM) koristi jedan bit za kodiranje razlike između susjednih uzoraka pa je to zapravo jednobitni PCM. Koder DM sustava prikazan je na slici 7.5. Ovakav pristup pretpostavlja da se susjedni uzorci nikada ne mijenjaju za više od jednog koraka kvantizacije. Ako taj uvjet nije

Page 39: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

38

ispunjen javlja se greška preopterećenja. Osim greške preopterećenja koja se javlja na brzo promjenjivim dijelovima signala, javlja se i greška granulacije na dijelovima signala koji se ne mijenjaju, odnosno koji se sporo mijenjaju. Greška granulacije i greška preopterećenja ilustrirani su na slici 7.6. Da bi ukupna greška DM sustava bila relativno mala potrebno je bitno povećati frekvenciju uzorkovanja. Osim toga, korak kvantizacije se može adaptivno mijenjati što vodi na adaptivne DM sustave (ADM).

DM signal++

-ulazkvantiziranje

integriranje

e

Slika 7.5 Koder DM sustava

t

A greškapreopterećenja

greškagranulacije

razl

ika

t

Slika 7.6 Greška granulacije i greška preopterećenja kod DM sustava 7.1.4. Vektorska kvantizacija (VQ) Kod vektorske kvantizacije (VQ) sažimanje signala se vrši na temelju usporedbe (po pravilu najbližeg susjeda) ulaznog vektora s nizom unaprijed definiranih vektora koji tvore kodnu knjigu. Za to je potrebno podijeliti ulazni signal na niz vektora. Potom se, uz odgovarajuću mjeru distorzije, pronađe u kodnoj knjizi vektor najbliži ulaznom vektoru. U kanal se šalje indeks vektora kodne knjige za čije je prenošenje potrebno manje bita nego za prenošenje vektora čime je izvršena kompresija. Dekodiranje je jednostavno pretraživanje kodne knjige gdje se za dani indeks pronađe odgovarajući vektor. Shema kodera i dekodera vektorskog kvantizatora prikazana je na slici 7.7.

Page 40: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

39

Najveći problem kod vektorske kvantizacije je formirati odgovarajuću kodnu knjigu koja će na najbolji mogući način (s najmanjom greškom) reprezentirati sve moguće ulazne vektore.

pravilo najbližegsusjeda

[x1,x2,...,xn]

[a1,a2,...,an][b1,b2,...,bn][c1,c2,...,cn]

[z1,z2,...,zn]

... ... ...

koder

kodna knjiga

index pretraživanje

[a1,a2,...,an][b1,b2,...,bn][c1,c2,...,cn]

[z1,z2,...,zn]

... ... ...

dekoder

kodna knjiga

index [x1,x2,...,xn]

Slika 7.7 Koder i dekoder vektorskog kvantizatora 7.1.5. Usporedba generičkih tehnika za kodiranje govora U tablici 7.1 dana je usporedba kodera govora koji koriste generičke tehnike kodiranja. Usporedba je za različite metode kodiranja dana sa stajališta brzine uzorkovanja, broja bita po uzorku i brzine prijenosa.

Metoda kodiranja Brzina uzorkovanja (kHz) Bita po uzorku Brzina (kb/s)

PCM 8 7-8 56-64 DPCM 8 4-6 32-48 ADPCM 8 2-5 16-40 DM 64-128 1 64-128 ADM 48-64 1 48-64

Tablica 7.1 Usporedba kodera govora (generičke tehnike)

7.2. AUDIO SPECIFIČNI ALGORITMI TEMELJENI NA NELINEARNOM

KVANTIZIRANJU Nelinearno kvantiziranje temelji se na činjenici da je čovjek manje osjetljiv na promjene u "glasnom" zvuku nego na promjene u "tihom" zvuku. Stoga se uzorci s malom amplitudom kvantiziraju s većom točnošću (više bita) nego uzorci s velikom amplitudom i to tako da se korak kvantizacije logaritamski smanjuje s razinom signala. Nelinearno kvantiziranje omogućuje percepcijski 14(13)-bitnu kvalitetu (dinamičko područje) uz 8-bitno kodiranje za govorni signal uzorkovan s 8 kHz. Na slici 7.8 ilustrirano je nelinearno kvantiziranje.

Page 41: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

40

t

A

kodiran s6 bita

kodiran s10 bita

kodiran s14 bita

Slika 7.8 Nelinearno kvantiziranje

Nelinearno kvantiziranje za govorni signal definirano je standardom ITU-T G.711. Standard G.711 kvantizira s brzinom 64 kb/s, a definirana su dva oblika: A-zakon (Europa) i μ- zakon (SAD, Japan) koji komprimiraju linearni PCM u 8 bitni komprimirani PCM. Na slici 7.9 prikazana je karakteristična krivulja nelinearnog kvantizatora za A-zakon.

Slika 7.9 Karakteristična krivulja nelinearnog kvantizatora (A-zakon)

Page 42: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

41

7.3. AUDIO SPECIFIČNI ALGORITMI KOD MPEG-A 7.3.1. MPEG-1/2 audio kompresija Danas praktično svako kodiranje audio signala počinje od CD audio formata. Podsjetimo se, to je standard koji je još 1982. godine definirao osnovne karakteristike digitaliziranog audio signala, a to su: frekvencija uzorkovanja od 44.1 kHz, 16 bita po uzorku (dvostruko više za stereo) koji su ravnomjerno kvantizirani. Tako kodirani audio signal treba za pohranu ili prijenos oko 10MB/min.

Brojni algoritmi koriste sve ili većinu svojstava psihoakustičkog modela ljudskog slušnog sustava kako bi što je moguće više komprimirali audio signal. Najpoznatiji među njima su skupina audio kodera nastalih u okviru MPEG standardizacijske organizacije.

MPEG (Motion Picture Expert Group) je radna skupina koja radi u okviru ISO (International Organization for Standardization) i IEC (International Electrotechnical Commision). Ta skupina radi na razvoju standarda za kodiranje pokretnih slika i audio signala [www.chiariglione.org]. Do sada je završen ili je još uvijek u tijeku rad na standardima MPEG-1, MPEG-2, MPEG-4, MPEG-7 i MPEG-21. O video aspektu MPEG standarda bit će više riječi u drugim poglavljima. Kada je u pitanju audio kompresija prvenstveno je zanimljiv MPEG-1/2 jer se kod njega koristi danas najpopularniji audio standard za sažimanje – MP3.

Povijest MP3 standarda počinje 1987. kada je Fraunhofer Institut zajedno sa Sveučilištem u Erlangenu (Njemačka) počeo rad na audio koderu i to u okviru EUREKA projekta. Taj rad rezultirao je algoritmom koji je standardiziran kao ISO-MPEG Audio Layer 3 – popularni MP3 (www.iis.fhg.de/amm/techinf/layer3/index.html). Dakle, MP3 nikako nije MPEG-3, štoviše MPEG-3 i ne postoji. MPEG Audio Layer 3 standard ISO i IEC prihvatili su krajem 1992. godine5. Rad na nekim drugim projektima rezultirao je s MPEG Audio Layer 1 i Layer 2. Osnovne tehničke karakteristike MPEG-1/2 audio kodera MPEG-1/2 koriste sličnu audio kompresiju6. Algoritam je definiran kroz tri sloja (layer I, II, III) uz neke dodatne mogućnosti kod MPEG-2 (npr. surround zvuk). MPEG-1 audio podržava frekvencije uzorkovanja od 32 kHz, 44.1 kHz (CD) i 48 kHz (DAT) te četiri moda:

1. Monophonic – jedan audio kanal, 2. Dual-monophonic – dva neovisna kanala, npr. za engleski i hrvatski jezik, 3. Stereo – za stereo kanale, 4. Joint-stereo – za stereo kanale koji koriste korelaciju kako bi komprimirali signal.

MPEG-2 je, u odnosu na MPEG-1, proširio frekvencije uzorkovanja još i na 16 kHz, 22.05

kHz i 24 kHz te je još dodao i mogućnost višekanalnog moda (5+1 kanala – surround zvuk). Algoritam kompresije koji se koristi u MPEG-1/2 ima slijedeće korake:

5 Vrlo brzo je MP3 standard postao iznimno popularan, pa je Fraunhofer Institut 1998. godine počeo tražiti licencna prava od kompanija koje su koristile njihove algoritme u okviru MP3 standarda (danas to rade preko kompanije Thomson - www.mp3licensing.com). Kako je time korištenje Fraunhoferovih algoritama prestalo biti besplatno, počeli su se razvijati i drugi algoritmi kao alternativa njihovima. To je rezultiralo koderima kao što su Ogg Vorbis, Windows Media Audio, TwinVQ. Osim toga, nastavljen je rad i na poboljšanju audio kodera unutar MPEG grupe, što je također rezultiralo novim koderima kao što je MPEG AAC. 6 MPEG-2 podržava praktično isti audio koder kao i MPEG-1. Međutim, MPEG-2 podržava još jedan koder, MPEG AAC, koji ima značajna poboljšanja u odnosu na MPEG-1 audio koder.

Page 43: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

42

1. Audio signal transformirati u frekvencijsko područje, te dobiveni spektar podijeliti u 32 frekvencijska podpojasa koja se međusobno ne preklapaju – to je podpojasno filtriranje (engl. subband filtering).

2. Odrediti, upotrebom psihoakustičnog modela, iznos maskiranja koje uzrokuje susjedni pojas. 3. Ako je snaga u trenutnom pojasu manja od praga maskiranja, pojas se ne kodira. 4. U protivnom, odrediti broj bita potreban za prijenos koeficijenta koristeći psihoakustički

model i to tako da je šum kvantizacije manji od efekta maskiranja (jedan bit manje u kvantizatoru povećava šum za 6 dB). Ako je greška kvantiziranja manja od praga maskiranja tada se komprimirani audio signal neće (percepcijski) razlikovati od originalnog signala.

5. Formirati tok bitova (engl. bitstream).

MPEG-1/2 definiraju 3 različita sloja (metode kompresije) za audio signal. Temeljni model je isti, ali složenost raste sa svakim slojem. Na slici 7.10 dana je pojednostavljena shema MPEG-1/2 audio kodera i dekodera. U nastavku su dane detaljnije sheme za MPEG sloj I/II te III.

Slika 7.10 Pojednostavljena shema MPEG-1/2 audio kodera i dekodera

MPEG-1/2 audio algoritmom podaci se dijele u okvire od kojih svaki sadržava 384 uzorka (12 uzoraka za svaki od 32 podpojasa), što je prikazano na slici 7.11. Ekvivalent 384 uzorka, uz frekvenciju uzorkovanja od 44100 Hz, je 8.71 msec.

Page 44: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

43

Slika 7.11 MPEG-1/2 audio: podjela na okvire Osnovna svojstva MPEG-1/2 kodera/dekodera po pojedinim slojevima su: Sloj I: Za podpojasno filtriranje koristi se Filter bank. Koristi se samo jedan okvir. Psihoakustični

model koristi samo frekvencijsko maskiranje. Sloj II: Kao i Sloj 1 koristi Filter bank za podpojasno filtriranje. Koristi tri okvira u filtru (prethodni,

trenutni i slijedeći – ukupno 3x384=1152 uzorka). Koristi osim frekvencijskog maskiranja i jedan dio vremenskog maskiranja.

Sloj III: Koristi bolji filtar za podpojasno filtriranje (filter bank + MDCT (Modified DCT)), koristi tri okvira, psihoakustički model koristi osim frekvencijskog maskiranja i vremensko maskiranje, može uzeti u obzir i stereo redundanciju. Koristi Huffmanovo kodiranje.

U tablici 7.2 dane su osnovne karakteristike pojedinih slojeva MPEG-1/2 audio algoritma.

sloj podržane brzine (kb/s)

Ciljana bitska brzina

(kb/s) Omjer

Kvaliteta na 64kb/s (MOS)

Kvaliteta na 128kb/s (MOS)

Teoretsko minimalno

kašnjenje7 (ms)

Pohrana (MB/min)

1 32-448 192x2 4:1 - - 19 2.88 2 32-384 128x2 6:1 2.1 do 2.6 >4 35 1.92 3 32-320 64x2 11:1 3.6 do 3.8 >4 59 0.96

Tablica 7.2 MPEG audio kodiranje: karakteristike slojeva 1, 2 i 3

Sloj 1 je bio ciljano napravljen za DCC (Digital Compact Cassette). Sloj 3 je imao cilj komprimirati audio signal što je moguće bolje (više) bez obzira na složenost algoritma. Sloj 2 je napravljen kao kompromis između složenosti sloja 3 i performansi sloja 1.

Ciljana brzina je ona koja praktično osigurava CD kvalitetu. Iskorištavajući stereo efekt, može se postići i manja brzina (to može samo sloj 3). Tipične brzine i pripadajuće kvalitete (stereo signala) za MP3 su:

192-256 CD kvaliteta, 160 uglavnom CD kvaliteta, 96-128 skoro CD kvaliteta, 36-64 skoro FM kvaliteta.

Uz brzinu prijenosa od 2x128 kb/s niti ekspert ne može razlikovati originalni i kodirani audio.

Podsjetimo, originalni CD audio ima brzinu 1.411 Mb/s pa je to kompresija od skoro 6 puta. To znači da glazbeni CD koji inače može sadržavati oko 1 sat glazbe (točnije 650MB=74 min) sada može sadržavati skoro 6 sati glazbe CD kvalitete ili 12 sati glazbe skoro CD kvalitete.

7 Stvarno kašnjenje je oko 3 puta veće od teoretskog.

Page 45: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

44

MPEG-1/2 audio koder sloj I i II MPEG-1/2 sloj I i II imaju sličnu strukturu (slika 7.12). Najveća razlika je nešto boljoj (finijoj) kvantizaciji koja se koristi kod sloja II u odnosu na sloj I te što sloj II koristi dio vremenskog maskiranja.

Slika 7.12 Shema MPEG-1/2 audio sloja I i II

Sloj I i II koristi banku filtara (pojasne filtre) da bi podijelio ulazni signal na 32 jednako razmaknuta podpojasa. Primjerice, za frekvenciju uzorkovanja od 44.1 kHz, širina podpojaseva je 689 Hz. Jednako razmaknuti podpojasevi ne odgovaraju kritičnim pojasevima. Dapače, na nižim frekvencijama jedan podpojas obuhvaća nekoliko kritičnih pojaseva što predstavlja nedostatak ovog pristupa.

Psihoakustički model za određivanje praga maskiranja ne koristi banku filtara nego posebno i neovisno prebacivanje iz vremenskog u frekvencijsko područje jer za izračun praga maskiranja treba puno preciznija frekvencijska rezolucija. Za to se koristi Fourierova transformacija. Sloj I koristi FFT (Fast Fourier Transform) s analizom 512 uzoraka, a Sloj II i Sloj III FFT s analizom 1024 uzorka.

Prije kvantiziranja se na bloku od 12 uzoraka izvrši skaliranje i to tako da se vrijednosti uzoraka podijele s faktorom skaliranja tako da je vrijednost najvećeg uzorka jednaka jedan. Potom se potreban broj bita za svaku spektralnu komponentu određuje dinamičkim alociranjem bita na temelju psihoakustičkog modela. Pri tome algoritam za alociranje bita, osim psihoakustičkog modela uzima u obzir i raspoloživu (željenu) brzinu. Iterativna procedura minimizira NMR (noise-to-mask ratio) u svakom podpojasu. Alociranjem bita definira se broj bita kojim će se kodirati svaki uzorak. Ukoliko je taj broj bita različit od nula, dekoderu se šalje još i faktor skaliranja. Faktor skaliranja je broj kojim će dekoder pomnožiti kvantiziranu vrijednost da bi dobio stvarnu vrijednost uzorka. Kombinacijom alociranja bita i faktora skaliranja može se dobiti dinamičko područje i veće od 120dB (ali ne za sve podpojaseve).

Sloj II, za razliku od Sloja I, koristi blokove od 3x12 uzoraka, pri čemu faktor skaliranja može biti isti za sva tri bloka od 12 uzoraka, isti samo za dva ili različit za sva tri bloka uzoraka, u ovisnosti o njihovim stvarnim vrijednostima. Ako to neće prouzročiti distorzije, koristi se isti faktor skaliranja za sva tri bloka. Ovim pristupom se smanji potreban broj bita za prijenos faktora skaliranja u odnosu na Sloj I i to je jedna od većih razlika sloja I i II. U konačnici se do dekodera prenose skalirane i kvantizirane spektralne vrijednosti, faktor skaliranja i informacija o broju alociranih bita.

Page 46: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

45

MPEG-1/2 audio koder sloj III Shema MPEG-1/2 audio sloja III dana je na slici 7.13. Najznačajnije razlike MPEG-1/2 sloja III u odnosu na slojeve I i II su:

• MDCT. Kako bi postigao bolju frekvencijsku rezoluciju bližu podjeli na kritične pojaseve, Sloj III dodatno u frekvencijskom području dijeli svaki od 32 podpojasa i to pomoću modificirane diskretne kosinusne transformacije (MDCT - Modified Dicrete Cosine Transform).

• Faktor skaliranja u pojasevima. Za razliku od Sloja I i II koji svakom podpojasu pridijele posebni faktor skaliranja, Sloj III koristi isti faktor skaliranja za više MDCT koeficijenata formirajući tako pojasnu širinu otprilike jednaku kritičnim pojasevima.

• Entropijsko kodiranje podataka. Zbog boljeg sažimanja, Sloj III koristi Huffmanovo kodiranje.

• Korištenje rezervoara bitova (engl. bit reservoir). Svaka skupina od 1152 (384x3) uzorka ne mora se kodirati istim brojem bitova. Koder može za pojedinu skupinu uzoraka koji su zahtjevni za kodirati „posuditi“ bitove od skupine manje zahtjevnih uzoraka. Time se praktično koristi kodiranja s promjenjivom brzinom prijenosa (engl. Variable bit rate coding)

• Korištenje vremenskog maskiranja. Sloj III koristi nešto bolji psihoakustički model od Slojeva I i II jer uključuje i vremensko maskiranje.

Slika 7.13 Shema MPEG-1/2 audio sloja III 7.3.2. MPEG-4 audio kompresija MPEG-4 specificira široki spektar audio/govornih kodera od kojih će neki u nastavku biti detaljnije objašnjeni:

Page 47: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

46

Audio kodiranje na niskim brzinama8 – kodiranje temeljeno na parametarskoj reprezentaciji (Parametric Representation – PARA) te Code Excited Linear Prediction (CELP).

Visokokvalitetno audio kodiranje – AAC (Advanced Audio Coding) te TwinVQ. Sintetički audio – govor-u-tekst (text-to-speech – TST) te strukturirani audio (Structured

Audio – SA). MPEG-4 Advanced Audio Coding (MPEG-4 AAC) Osim poznatog MPEG Audio Layer 3 kodera (MP3) razvijen je i 1997. godine standardiziran MPEG Advanced Audio Coding (MPEG AAC) koder koji je poboljšana verzija u odnosu na MPEG Audio Layer 39.

MPEG-4 AAC koder (slika 7.14) ima istu temeljnu ideju kao i MPEG-1/2 koder (percepcijsko podpojasno kodiranje), ali uz neka poboljšanja od koji je dio naveden:

• Širi opseg frekvencija uzorkovanja (od 8 kHz do 96 kHz) u odnosu na MPEG-1/2 (16 kHz do 48 kHz).

• Podržava do 48 kanala (MPEG-1/2 audio koder podržava 2 kanala u MPEG-1 modu, te maksimalno 5+1 kanala u MPEG-2 modu).

• Poboljšano i pojednostavljeno pojasno filtriranje jer je napušten hibridni model pa se koristi samo MDCT.

• Korištenje predviđanja (koristi činjenicu da su neki uzorci zvuka jednostavni za predviđanje, prediktor gleda prethodna dva uzorka kako bi analizirao zvučni uzorak).

• Temporal Noise Shapening (TNS) – vremenski ovisna kvantizacija koja koristi činjenicu da tonalni signal u vremenskom području ima tranzijentne vrhove u frekvencijskoj domeni i obrnuto, tj. signal koji je tranzijentan u vremenu je „tonalan“ u frekvencijskom području (tonalni signal je periodičko ponavljanje zvuka dok je tranzijentni signal kratkotrajni zvuk koji se jako brzo mijenja od malih do velikih amplituda ili obrnuto). Primjenom TNS moguće je u vremenskoj domeni raspršiti šum kvantizacije.

• Dinamičko mijenjanje veličine MDCT bloka (jedan blok od 1024 točaka ili 8 blokova od 128 točaka – ako se signal mijenja ili postoje tranzijenti koristi se 8 kraćih prozora od 128 točaka, u suprotnom se koristi prozor od 1024 točke jer se većim prozorom postiže bolja frekvencijska rezolucija pa time i mogućnost primjene složenijeg i boljeg psihoakustičkog modela).

8 Zapravo se radi se o koderima za sažimanje govornog signala, dakle govor specifičnim algoritmima koji će biti obrađeni u slijedećem poglavlju. 9 Advanced Audio Coding je standardiziran kao dio MPEG-2 standarda (MPEG-2 Part 7) ali, uz manje izmjene, i kao dio MPEG-4 standarda (MPEG-4 Part 3). Najčešće se označava kao MPEG-4 AAC ili samo AAC.

Page 48: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

47

Slika 7.14 Shema AAC kodera – neki blokovi su opcionalni

MPEG-4 AAC ima prednost u odnosu na MP3 kod niskih brzina (manje od 128 kb/s). Kod

većih brzina ta prednost nije toliko izražena. MPEG-4 AAC definira nekoliko kompresijskih shema (profila) za različite primjene. MPEG-4 strukturirani audio (MPEG-4 Structured Audio) MPEG-4 strukturirani audio (MPEG-4 Structured Audio – MP4-SA) je ISO/IEC standard koji specificira zvuk ne kao niz uzoraka, nego kao računalni program koji generira audio. MP4-SA je kombinacija dva jezika

• SAOL (Structured Audio Orchestra Language) (izgovara se "sail") – za obradu audio signala,

• SASL (Structured Audio Score Language) (izgovara se "sassil") – za obradu nota s podrškom za MIDI format.

MP4-SA također definira i kodiranje svih elemenata u binarnu datoteku kako bi bilo pogodno

za prijenos i pohranu. MP4-SA se razlikuje od standarda poput MIDI formata, jer ne uključuje samo note koje će se izvoditi nego i metodu kako pretvoriti note u zvuk. MP4-SA zvuči potpuno isto bez obzira na kojem se dekoderu izvodio. 7.3.3. Svijet izvan MP3/MPEG MP3 nije jedini format za snimanje glazbe koji se temelji na psihoakustičkom modelu i ima veliki faktor kompresije. Postoji puno drugih, a najpopularniji su:

Vorbis (www.vorbis.com). Vorbis je što se tiče autorski prava potpuno slobodan i to bez ikakvih ograda. To je potpuno otvoren algoritam i zato u tom segmentu ima prednost u odnosu na

Page 49: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

48

novu generaciju proprietary kodova (AAC i TwinVQ). Često je u kombinaciji s kontejnerom ogg pa se obično i naziva Ogg Vorbis

TwinVQ poznat i kao VQF (www.vqf.com) po ekstenziji u koju je TwinVQ najčešće upakiran. TwinVQ je skraćenica od Transform domain Weighted INterleave Vector Quantization. VQF datoteke su 25-35% manje od MP3 uz istu percepcijsku kvalitetu. TwinVQ standardiziran je kao dio MPEG-4 standarda.

Windows Media Audio (www.microsoft.com/windows/windowsmedia/WM8/default.asp). To je Microsoftov vlasnički (engl. proprietary) format popularan kod glazbenih tvrtki jer ima dobro riješenu tehnologiju zaštite autorskih prava (engl. copyright). WMA format može sadržavati jednu od 4 kodeka: WMA, WMA Pro, WMA Lossless i WMA Voice. Najuobičajeniji je WMA, pa se u tom slučaju izraz WMA odnosi i na format i na kodek. Ispitivanja kvalitete pokazuju različite rezultate, ali moglo bi se kazati da WMA generira nešto kvalitetniji audio od MP3 (posebno na manjim brzinama), ali i manje kvalitetni od modernih kodeka kao što je AAC ili Vorbis.

AC-3 (poznat i kao Dolby Digital 5.1). Osnovi cilj je višekanalno kodiranje uz relativno malu složenost, uglavnom za potrebe filmske industrije. AAC, u odnosu na AC-3, postiže veću kompresiju na svim brzinama, ali uz veću složenost. 7.4. GOVOR SPECIFIČNI ALGORITMI Kodiranje valnog oblika kao npr. kod DPCM, ADPCM, DM i sl. ima cilj prenijeti (kodirati) valni oblik što je moguće vjernije. MP3 i slični algoritmi koji koriste psihoakustični model također prenose valni oblik. Istina, to je valni oblik koji nije jednak originalnom jer je cilj prenijeti informaciju, a ne sami valni oblik, ali ipak ono što se prenosi još uvijek ima formu valnog oblika. Kada je u pitanju govorni signal, može se umjesto valnog oblika prenijeti informacija o tome kako čovjekov govorni sustav generira (stvara) govorni signal. Koderi koji koriste takav pristup (sintezu govora) zovu se vokoderi (voice+coder). Vokoderom se može kodirati govor s brzinom ispod 4.8 kb/s. Iako je na toj brzini govor razumljiv ipak zvuči umjetno, a prepoznavanje govornika je otežano. Podsjetimo da se standardni govorni signal (8 kHz, 8 bita/uzorku) prenosi s brzinom od 64 kb/s, te da algoritmi koji kodiraju valni oblik ne mogu uspješno kodirati s brzinom manjom od 16 kb/s.

Da bi se razumio postupak vokodiranja potrebno je znati mehanizam generiranja (stvaranja) govora što je ukratko opisano u poglavlju 6.5. Možemo kazati da govor karakterizira tip uzbude (zvučni ili bezvučni) te vokalni trakt (formanti i jakost). Shematski prikaz vokodera ilustriran je na slici 7.15. Prvi vokoder (analogni) predstavljen je još 1939. godine.

Slika 7.15 Shematski prikaz vokodera

Page 50: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

49

Linear Predictive Coding (LPC) Prvi šire korišteni vokoderi (digitalni) temelje se na linearnoj predikciji a intenzivnije se razvijaju od kraja 70-tih godina prošlog stoljeća. Linearno prediktivno kodiranje (LPC) temelji se na modeliranju segmenata govora. Najprije se za dani segment govora izračunaju parametri linearnog filtra (LPC koeficijenti) koji definiraju govorni sustav. LPC algoritam parametre filtra određuje tako što nalazi formante signala. Potom se govorni signal filtrira inverznim filtrom - rezultat koji se dobije zove se rezidual. Rezidual u osnovi određuje uzbudu, pa je iz reziduala relativno lako odrediti da li je signal zvučan ili nije, te odrediti pitch period ukoliko je zvučan. Kod LPC vokodera, za razliku od kasnijih složenijih vokodera, uzbuda je jednostavna: to je niz impulsa iste amplitude i istog razmaka. Ovako dobiveni govor zvuči umjetno, a brzina koja se postiže je 2.4 kb/s.

Primjer vokodera koji se temelji na linearnoj predikciji je US Fedaral Standard 1015 (LPC-10e standard). To je standard, predstavljen 1984. godine, koji definira prijenos govornog signala s 2.4 kb/s uz slijedeće parametre:

brzina uzorkovanja 8 kHz, dužina okvira 180 uzoraka = 22.5 ms, 10 LPC koeficijenata = 42 bita, pitch i voicing 7 bita, jakost 5 bita.

Residual Excited Linear Prediction (RELP) RELP radi slično kao i LPC. Razlika je što se iz reziduala ne traži pitch period već se rezidual kao takav koristi za uzbudu. To znači da se rezidual prenosi do dekodera pri čemu se kodira kao valni oblik. RELP postiže dobru govornu kvalitetu na 9.6 kb/s. Code Excited Linear Prediction (CELP) Za razliku od LPC, CELP dozvoljava široki izbor različitih uzbuda koja su sve pohranjene u kodnu knjigu. Najbolja uzbuda pronađe se tako da se za svaku moguću uzbudu generira govorni signal i usporedi ga se s originalnim. Izabere se ona uzbuda koja je rezultirala najmanjom razlikom sintetiziranog i originalnog signala. Dakle, ovaj koder koristi vektorsku kvantizaciju da bi kodirao rezidual. CELP postiže brzinu od 4.8 kb/s. Primjeri CELP standarda su US Federal Standard 1016 (CELP 3.2) s brzinom od 4.8 kb/s te G.728 LD-CELP (Low-Delay Code-Excited Linear Prediction). Multipulse Excited Coding (MPE) i Regular Pulse Excited Coding (RPE) Kao i kod prethodnih metoda, MPE i RPE poboljšavaju kvalitetu govora (u odnosu na LPC) boljim izborom uzbude. MPE kao uzbudu koristi niz impulsa koji za razliku od LPC mogu biti različite amplitude i razmaka. Razmak i položaj odrede se kao i kod CELP metodom pokušaja (tzv. analysis-by-synthesis tj. analiza sintezom).

RPE radi na sličan način osim što su, kao što i ime sugerira, impulsi jednako razmaknuti. GSM mobilni telefoni koriste varijantu RPE kodera koja radi na 13kb/s. To je Regular Pulse Excited Long Term Prediction (RPE-LTP) definiran u GSM standardu 06.10 s brzinom od 13kb/s.

Page 51: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

50

7.5. STANDARDI ZA KODIRANJE AUDIO I GOVORNOG SIGNALA U Tablici 7.3 dan je pregled nekih od standarda za kodiranje govora.

standard kodiranje kb/s MOS upotreba

ITU-T G.711 PCM (Pulse Code Modulation) 64 4.4 telefonija (μ-zakon, A-zakon)

ITU-T G.723.1

MP-MLQ (Multipulse Maximum Likelihood Quantization) ACELP (Algebraic CELP)

6.3/5.3 4.1/3.8 videotelefonija, multimedija

ITU-T G.726 ADPCM (Adaptive Differential PCM) 16,24,32,40 2.0-4.3 telefonija

ITU-T G.728 LD-CELP (Low Delay CELP) 16.0 3.8 VoIP, usluge s malim kašnjenjem

ITU-T G.729 CS-ACELP (Conjugate Structure Algebraic CELP) 8.0 (6.4, 11.8) 4.0 (3.7,

4.1)

VoIP, istovremeni prijenos govora i podataka

ITU-T G.722 SB-ADPCM (Subband ADPCM) 64 (56,48) >4.5 širokopojasni govor

(7KHz) FS 1015 (LPC-10e) LPC 2.4 2.3 robotika, sigurnosna

telefonija FS 1016 (CELP 3.2) CELP 4.8 3.2 sigurnosna telefonija

TIA/EIA IS 641 ACELP (Algebraic CELP) 7.4 4.0 TDMA mobilna

telefonija (SAD)

ETSI GSM 06.10

RPE-LTP (Regular Pulse Excition – Long Term Prediction); Full Rate (FR)

13.0 3.7 GSM mobilna telefonija (Europa)

ETSI GSM 06.20

VSELP (Vector Sum Excited Linear Prediction); Half Rate (HR); Enhance Full Rate (EFR)

5.6 3.4 GSM mobilna telefonija (Europa

ETSI GSM 06.60 ACELP (Algebraic CELP) 12.2 4.0 GSM mobilna

telefonija (Europa MPEG Layer 3 psihoakustički model 128.0 nije

usporedivo CD stereo

Tablica 7.3 Pregled nekih od standarda za kodiranje govora

Page 52: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

51

8. BOJA U SLIKAMA I VIDEO SIGNALIMA Vidljiva svjetlost je elektromagnetski val u području od oko 400 nm do 700 nm. Elektromagnetski spektar s istaknutim vidljivim dijelom prikazan je na slici 8.1. Napomenimo da atmosfera Zemlje propušta elektromagnetske valove čija je valna duljina veća od 280 nm, tj. od ultraljubičastog (UV) zračenja.

0.01 1041001 106 108 1010

400 nm 700 nm500 nm 600 nm

valna duljina [nm]

Gamazrake X-zrake UV infracrvene

zrake radio valovi

Slika 8.1 Elektromagnetski spektar

Većina svjetla koje vidimo nije jedna valna duljina, nego kombinacija više valnih duljina. Na slici 8.2 prikazana je spektralna distribucija snage (E(λ)) vidljivog spektra za sunce, voštanu svijeću i žarulju s niti od volframa.

rela

tivna

sna

ga

400 500 600 700[nm]

valna duljina

sunce

žarulja (nitvolframa)

voštanasvijeća

E

Slika 8.2 Spektralna distribucija snage vidljivog spektra za sunce, voštanu svijeću i žarulju s niti od volframa

Page 53: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

52

8.1. PERCEPCIJA BOJA Za razumijevanje ljudske percepcije elektromagnetskih valova u vidljivom području (dakle za razumijevanje boja) potrebno je razumjeti slijedeća tri svojstva:

• fiziologiju oka, • fiziku pretvaranja svjetlosnog spektra u LMS (long, medium, short) signal, • percepciju LMS signala kao nijanse, zasićenja i sjajnosti.

Fiziologija oka Na slici 8.3 prikazano je kako izgleda ljudsko oko. U promjeru ima oko 20 mm. Na vanjskom dijelu je rožnica koja štiti vanjski dio oka. Oko cijelog oka je raspoređena žilnica, mreža krvnih žilica koja hrani oko. Žilnica je pigmentirana crnom tvari (melanin) kako bi se smanjilo raspršenje svjetla unutar oka. Zjenica kontrolira količinu svjetla koje se propušta u oko (što je više svjetla to je uža i obrnuto, što je manje svjetla to je šira). Mišići koji povezuju leću s vanjskim rubom oka (bjeloočnicom) pomiču leću mijenjajući njen oblik i položaj te tako praktično mijenjaju dioptriju. Najveći dio oka ispunjen je prozračnom staklastom tvari (vitreous humor i aqueous humor). Svjetlost se kroz leću lomi tako da se usmjerava na stražnji dio oka, na mrežnicu (retinu). Mrežnica sadrži dva tipa fotosenzora: čunjiće (osjetljive na boju) i štapiće (neosjetljive na boju).

Čunjići (engl. cones) i štapići (engl. rods) nisu ravnomjerno raspoređeni po mrežnici. Štapići su gusto pakirani u blizini žute mrlje (fovee) dok su čunjići raspršeni oko žute mrlje. Promjer žute mrlje je oko 0.4 mm. Fotosenzori su povezani na optički živac putem kojeg se šalju informacije u mozak koji ih obrađuje te generira sliku.

Slika 8.3 Ljudsko oko

Čunjića ima oko 7-8 milijuna. Omogućavaju oštru i detaljnu sliku kada je intenzitet svjetla dovoljno velik (npr. pri dnevnom svjetlu) jer je svaki čunjić povezan na svoj živac. Osjetljivi su na valnu duljinu te postoje tri tipa čunjića u ovisnosti o valnoj duljini na koju su osjetljivi:

Page 54: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

53

• crveni (long) – najosjetljiviji na svjetlost valne duljine 575 nm (žuto-zelena boja), ima ih oko 65% od ukupnog broja čunjića,

• zeleni (medium) – najosjetljiviji na svjetlost valne duljine 535 nm (plavo-zelena boja), ima ih oko 33% od ukupnog broja čunjića,

• plavi (short) – najosjetljiviji na svjetlost valne duljine 445 nm (ljubičasta boja), ima ih oko 2% od ukupnog broja čunjića.

Kada intenzitet svjetla toliko padne da se više ne mogu vidjeti boje jer čunjići ne reagiraju,

koriste se štapići. Dakle, štapići su odgovorni za noćni vid (vid pri slabom svjetlu) dok pri jakom svjetlu uopće ne reagiraju jer se nalaze u zasićenom stanju. Ima ih između 100 i 120 milijuna. Izuzetno su osjetljivi na svjetlost; mogu detektirati svjetlost sto puta manjeg intenziteta nego čunjići. Susjedni štapići se mogu udružiti zajedno (na jedan živac) te tako povećati osjetljivost do te mjere da mogu detektirati svjetlost koja se sastoji od jednog jedinog fotona. Time se smanjuje oštrina vida pa štapići daju generalnu sliku većeg područja, bez finih detalja. Štapići su najosjetljiviji na svjetlost valne duljine od 498 nm.

Slika 8.4 Raspon osvjetljenja i pridružene osobine vida

Raspon osvjetljenja na koju se ljudsko oko može prilagoditi je jako velik 1010, ali je raspon osvjetljenja koje se mogu istodobno razlikovati relativno malen. Raspon osvjetljenja na koje se ljudsko oko može prilagoditi i pridružene osobine vida prikazani su na slici 8.4. Kapacitet vizualne informacije (maksimalni broj slika koje je čovjek u stanju razlikovati u jedinici vremena) je između 10 i 24 slike u sekundi.

Kao i svaki optički sustav, i oko ima neku konačnu prostornu rezoluciju jer objekte manje od određenog limita nismo u stanju razlikovati. Mjerenja su pokaza da je ta rezolucija (zove se i oštrina vida) oko 30 sekundi vidnog polja. Fizika pretvaranja svjetlosnog spektra u LMS (long, medium, short) signal Čunjići10, koji se najčešće označavaju s LMS (engl. long, medium, short), reagiraju različito na različite valne duljine svjetla. Na slici 8.5 prikazan je odziv (osjetljivost) čunjića na svjetlost odgovarajućih valnih duljina. Odziv čunjića prikazan na slici 8.5 prvi put je izmjeren 1959. godine.

10 Za tipove čunjića se, uglavnom iz povijesnih razloga, još uvijek često koriste crveni, zeleni i plavi (engl. red, green, blue (RGB)). Ipak, bolje je i danas uobičajenije koristiti oznake LMS. To bolje odgovara valnim duljinama na koje su čunjići najosjetljiviji. U svakom slučaju, ovako definirani LMS signali (odzivi čunjića na elektromagnetsko zračenje) ne smiju se poistovjetiti s RGB primarnim bojama.

Page 55: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

54

Uočite da postoji značajno preklapanje područja osjetljivosti što znači da će na neku uzbudu (elektromagnetsko zračenje) reagirati više tipova čunjića.

Slika 8.5 Odziv čunjića (osjetljivost) na elektromagnetsko zračenje

Kolor signal koji dolazi do optičkog živca sastoji se od odziva 3 tipa čunjića na uzbudu (elektromagnetsko zračenje) pa je to trodimenzionalni vektor čije su komponente L, M i S jednake

( ) ( )( ) ( )( ) ( )∫

∫∫

=

=

=

λλλ

λλλ

λλλ

dSES

dSEM

dSEL

S

M

L

gdje je E(λ) relativna snaga spektra (slika 8.2), a SL, SM i SS su odzivi odgovarajućih čunjića na elektromagnetsko zračenje (slika 8.5).

Napomenimo da LMS signal koji dolazi do optičkog živaca ovisi ne samo o izvoru svjetla (boja!) nego i o refleksijskom svojstvu objekta (boja!). Vidimo one valne duljine koje se reflektiraju, ostale se apsorbiraju. Na primjer, objekt koji reflektira crvenu i zelenu boju ćemo vidjet kao zeleni ako ga osvjetljava svjetlo koje ne sadrži crvenu boju, a kao crveni ako ga osvjetljava svjetlo koje ne sadrži zelenu boju. Ako ga osvjetljava čista bijela svjetlost (sadrži sve boje) tada ćemo ga vidjeti kao žuti (crveni+zeleni=žuti). Percepcija LMS signala kao nijanse, zasićenja i sjajnosti LMS signal je odziv fotosenzora na elektromagnetsko zračenje u oku. Kako se LMS signal odnosi prema našem stvarnom doživljaju elektromagnetskog zračenja? Dakle, kako se LMS signal odnosi prema bojama, jer boje su naš doživljaj elektromagnetskog zračenja iz vidljivog dijela spektra? Kao što postoje tri veličine (LMS) kojima definiramo elektromagnetsko zračenje, tako postoje i tri veličine kojima definiramo percepciju elektromagnetskog zračenja, odnosno boje. To su:

• nijansa (engl. hue), • zasićenje (engl. saturation), • sjajnost (engl. brightness).

Page 56: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

55

Što je to nijansa? Nijansa (ili ton) je atribut vizualne percepcije koji je određen dominantnom valnom duljinom. Pojednostavljeno gledano, ako se pomiče dominantna valna duljina vidljivog spektra (slika 8.2) onda se pomiče (mijenja) i nijansa promatrane boje. Što je to zasićenje? Zasićenje je atribut vizualne percepcije koji je određen čistoćom boje i ovisi o količini bijelog svjetla (drugih boja) pomiješanog s nijansom. Zasićenje se može kretati od sive boje, preko pastelnih boja do potpuno zasićene boje. Čista nijansa (100% zasićenja) je potpuno zasićena, tj. nema pomiješane niti jedne druge boje. S druge strane 0% zasićenja je siva boja. Nijansu i zasićenje za danu boju zajedničkim imenom zovemo kroma (engl. chrominance, chroma). Što je to sjajnost? Kako ga definira CIE (Commission Internationale de L'Eclairage - International Commission on Illumination) [CIE No 17.4][ www.cie.co.at], sjajnost je atribut vizualne percepcije prema kojem neko područje izgleda da emitira više ili manje svjetla.

Kako je percepcija sjajnosti jako kompleksna, CIE je definirao osvjetljenje (engl. luminance) i

svjetloću (engl. lightness), dvije veličine koje je puno lakše analitički pratiti (računati). Osvjetljenje i svjetloća su dijelom atributi vizualne percepcije, a dijelom fizikalne veličine. Osim toga definirat ćemo i jednu čisto fizikalnu veličinu vezanu uz percepciju boja; to je intenzitet (engl. intensity). Što je to intenzitet? Intenzitet (engl. intensity) je mjera toka snage koja je izračena s nekog objekta odnosno koja upada na neki objekt. To je dakle fizikalna veličina; veća snaga odgovara većem intenzitetu. Intenzitet se mjeri u jedinicama Watt/m2. Što je to osvjetljenje? Osvjetljenje (engl. luminance) je tok snage (dakle intenzitet) otežan s funkcijom luminancijske efikasnosti. Funkcija luminancijske efikasnosti za tzv. standardnog promatrača, kako je definira CIE, jednaka je sumi svih triju krivulja sa slike 8.5. Kada se spektralna distribucija snage (slika 8.2) oteža funkcijom luminancijske efikasnosti i integrira u cijelom vidljivom području dobije se osvjetljenje. Dakle, osvjetljenje osim o intenzitetu ovisi i o ljudskom vizualnom sustavu i to preko funkcije luminancijske efikasnosti. Osvjetljenje se označava s Y. Strogo gledano, osvjetljenje bi se trebalo računati u candelima po metru kvadratnom, ali se obično normalizira na vrijednost od 1 do 100 u odnosu na osvjetljenje bijelog. Tako danas kvalitetni monitori imaju osvjetljenje bijele referentne točke od 80 cd/m2, pa se normalizirano osvjetljenje Y=1 uzme da je jednako toj vrijednosti. Što je to svjetloća? Ljudski vizualni sustav ima nelinearni doživljaj osvjetljenja. Izvor koji ima osvjetljenje samo 18% referentnog osvjetljenja vidjet ćemo kao upola sjajan . Ili npr., promjena normaliziranog osvjetljenja s 0.1 na 0.11 i promjena s 0.5 na 0.55 percepcijski se vidi kao ista promjena sjajnosti [Foley et all. 1990]. Stoga je CIE definirao percepcijski odziv na osvjetljenje koji se zove svjetloća (engl. lightness) i označava s L*. L* je prema CIE definiran kao modificirani treći korijen osvjetljenja.

31

n

*YY11616L ⎟

⎟⎠

⎞⎜⎜⎝

⎛+−=

Page 57: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

56

gdje je Yn osvjetljenje referentne bijele boje. Ako je Y već normaliziran onda nije potrebno dijeliti s Yn. L* poprima vrijednosti od 1 do 100. Slijedi da je percepcija osvjetljenja, koju nazivamo svjetloća, približno logaritamska. Napomenimo da čovjek ne može razlikovati promjenu svjetloće manju od 1% što odgovara promjeni L* za jedan; to je rezolucija čovjekovog vizualnog sustava s obzirom na svjetloću. Svjetloća je dakle percepcijsko/fizikalna veličina koja bi trebala što je moguće više odgovarati percepcijskoj veličini sjajnosti. Ipak sjajnost je puno kompleksnija veličina i ovisi o još nizu drugih faktora kao što je npr. boja pozadine.

Elektromagnetsko zračenje samo po sebi ne sadrži nikakve boje. Ne postoji ništa crveno u većim valnim duljinama niti plavo u manjim. Percepcija boja je u potpunosti kreacija mozga i ni na koji drugi način nije sadržana u zračenju. U tom smislu niti gore spomenuti signali LMS nisu boje. To je jednostavno signal odziva fotosenzora na elektromagnetsko zračenje. Tek se u mozgu na temelju tih signala dobije odgovarajuća nijansa, zasićenje i sjajnost. Tako npr. različite spektralne razdiobe mogu rezultirati percepcijski istim bojama. Taj fenomen zove se metamerizam. 8.2. TEORIJA BOJA (MIJEŠANJE BOJA) Isaac Newton je 1704. godine otkrio11 da se bijelo svjetlo sastoji od različitih boja (duga). Umjetnici su već davno prije toga znali da se bilo koja boja može dobiti miješanjem triju boja. Te boje zovu se primarne boje. Thomas Young je 1802. godine povezao te dvije činjenice. Otkrio je da oko ima tri senzora koji približno odgovaraju crvenoj, zelenoj i plavoj boji te da se gotovo sve boje, koje je Newton uočio, mogu dobiti miješanjem primarnih boja, kako su to radili umjetnici12. Young je dakle prvi pokazao da su crvena, zelena i plava boja dobre primarne boje jer se široki spektar drugih boja može dobiti njihovim aditivnim miješanjem.

400 500 600 700[nm]

valna duljina

zelena

crvenaplava

rela

tivni

dop

rinos

Slika 8.6 Miješanje primarnih RGB boja

11 Newton je tu činjenicu otkrio još 1666. godine, ali je svoje otkriće službeno objavio tek 1704. godine nakon smrti nekolicine poznatih fizičara tog doba koji su se u javnim debatama oštro protivili i ismijavali neke Newtonove ideje vezane uz optiku. 12 Umjetnici kao trojku primarnih boja koriste crvenu, žutu i plavu, a ne crvenu, zelenu i plavu. Kako ćemo u nastavku vidjeti, trojki primarnih boja ima puno, a koju ćemo koristiti ovisi o primjeni.

Page 58: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

57

Teorija boja kaže da se bilo koja boja može dobiti miješanjem tri primarne boje. Na slici 8.6 su prikazani iznosi crvene, zelene i plave (RGB) primarne boje potrebni da bi se dobila bilo koja od boja vidljivog spektra. Negativne vrijednosti pokazuju da se neke boje ne mogu dobiti aditivnim miješanjem pozitivnih doprinosa primarnih RGB boja13. Stoga je 1931. godine CIE definirao tri primarne boje, nazvane X, Y i Z, pomoću kojih se zbrajanjem pozitivnih doprinosa može dobiti bilo koja druga boja (slika 8.7). CIE XYZ su imaginarne primarne boje dobivene kao statistički rezultat niza eksperimenata s velikim brojem ljudi. To znači da su krivulje na slici 8.7, kao i sve duge CIE vrijednost i modeli, točni za prosječnog, tzv. standardnog promatrača. Primarna boja Y odabrana je tako da odgovara luminancijskoj efikasnosti oka, koja je jednaka sumi svih triju krivulja prikazanih na slici 8.5.

400 500 600 700[nm]

valna duljina

Y X

Z

rela

tivni

dop

rinos

Slika 8.7 Miješanje primarnih XYZ boja

CIE XYZ model boja je poboljšan 1942. godine i taj model nazvan je CIE Lab. Daljnje poboljšanje uslijedilo je 1976. godine kada je definiran model boja CIE L*a*b*. CIE L*a*b* model boja temelji se na novim činjenicama o ljudskom vizualnom sustavu koje su znanstvenici otkrili sredinom 1960-tih godina. Naime, tada je utvrđeno da se negdje između optičkog živca i mozga trodimenzionalni RGB signal pretvori također u trodimenzionalni signal, koji nosi informacije o razlici između svjetlijeg i tamnijeg, crvenog i zelenog te plavog i žutog14. Stoga L*a*b* model boja (slika 8.8) ima slijedeće komponente:

L*- osvjetljenje koje se mijenja od bijelog do crnog, a* - mijenja se od zelene do crvene, b* - mijenja se od plave do žute.

L*a*b* model boja odgovara ljudskoj percepciji boja te je percepcijski uniforman. Osim toga

kao i svi CIE modeli boja neovisan je o uređaju (engl. device independent). Koristi se npr. kod Adobe PostScript (level 2 i level 3).

13 Ako su primarne boje realne boje, onda će sigurno barem jedna biti negativna za neke valne duljine. Time se ne krše zakoni prirode, to samo znači da za dobiti neke boje treba „oduzimati“ primarnu boju. Što znači „oduzimanje“ boja, vidjet ćemo u nastavku. 14 To znači da boja ne može biti istovremeno tamna i svijetla, crvena i zelena odnosno plava i žuta.

Page 59: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

58

Slika 8.8 CIE L*a*b* model boja

CIE sustavi boja (CIE XYZ, CIE xyY, CIE L*u*v*, CIE L*a*b*) se koriste za specificiranje boja i pomoću njih se može definirati bilo koja boja. Svi drugi modeli boja moraju imati definiran odnos prema CIE modelima. Tipično drugi modeli boja ne trebaju pokrivati sve nego samo jedan dio mogućih boja. Stoga se za praktične primjene kodiranja slika i videa koriste drugi, prikladniji modeli boja, a ne CIE specifikacije. 8.3. MODELI BOJA Modeli boja15 omogućavaju da se svaka boja, koja se može dobiti u danom modelu, jednoznačno definira u 3D koordinatnom sustavu. Osim CIE modela postoji i puno drugih modela boja orijentiranih prema konkretnim uređajima i aplikacijama. Tako modele boja možemo podijeliti s obzirom na namjenu na:

• hardverski orijentirane modele boja (RGB, CMY, CMYK, Y'UV, Y'IQ, Y'CbCr, Y'PbPr, ...),

• softverski orijentirane modele boja (HSI, HSV, HSB, HLS, ...).

Nadalje, hardverski orijentirane modele boja možemo podijeliti na modele namijenjene slikama (RGB, CMY, CMYK) i modele namijenjene videu (Y'UV, Y'IQ, Y'CbCr, Y'PbPr).

15 Ovdje je potrebno istaknuti razliku između modela boja (engl. color model) i prostora boja (engl. color space). Model boja je apstraktni matematički model koji opisuje način na koji se boje mogu predstaviti putem komponenti, najčešće tri, koje zovemo primarne boje. Ako tom apstraktnom modelu još dodamo i način na koji se komponente interpretiraju (npr. pod kojim uvjetima se gleda, što je bijela točka i sl.) dobivamo prostor(e) boja. Primjerice, RGB model boja je aditivni model boja u kojem se crvena, zelena i plava miješaju kako bi se dobio široki spektar boja. Na temelju te ideje, dakle na temelju RGB modela boja, postoje brojni konkretni RGB prostori boja. Mi ćemo ovdje uglavnom govoriti o modelima boja, a rjeđe o prostorima boja. Stoga ćemo u pravilu koristiti izraz model boja, iako će ponekad biti i u značenju prostor boja.

Page 60: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

59

8.3.1. Modeli boja za slike RGB model boja Primarne boje kod RGB modela su crvena, zelena i plava (engl. red, green, blue). Definirati određenu boju u RGB sustavu znači odrediti količinu primarnih boja (crvene, zelene i plave) potrebnu da se njihovim aditivnim miješanjem dobije tražena boja. CIE je 1931. godine odredila standardne valne duljine tih primarnih boja

• crvena 700 nm, • zelena 546.1 nm, • plava 435.8 nm.

Na slici 8.9 prikazana je RGB kocka, tj. RGB model boja u Cartesianovom koordinatnom

sustavu. Svaka točka unutar kocke predstavlja jednu jedinstvenu boju određenu iznosom primarnih boja. Sive boje, dakle one s jednakim iznosom svih triju primarnih boja nalaze se na spojnici crne i bijele boje (slika 8.9).

zelena

crvenacrna

(0,0,0)

bijela(1,1,1)

plava

cijan

žuta

magentazelena

crvena

bijela(0,0,0)

crna(1,1,1)plavacijan

žuta

magenta

RGB kocaka boja CMY kocka boja

Slika 8.9 RGB i CMY kocke boja

Na slici 8.10 prikazano je aditivno miješanje primarnih boja (crvene, zelene i plave) čime se dobivaju sekundarne boje: žuta (crvena+zelena), cijan (plava+zelena) i magenta (crvena+plava) te bijela boja (crvena+zelena+plava).

Page 61: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

60

RGB model boja CMY model boja

Slika 8.10 Miješanje primarnih boja za RGB i CMY modele boja

RGB model je aditivni model jer se boje dobivaju dodavanjem primarnih boja. RGB model boja koristi se za CRT (Cathode Ray Tube) monitore i TV prijemnike te općenito sve uređaje koji projiciraju boje. CRT monitori i TV prijemnici imaju tri fosforna elementa R, G i B (slika 8.11) koji na elektronsku uzbudu reagiraju elektromagnetskim zračenjem u vidljivom dijelu spektra tj. reagiraju generiranjem crvene, zelene i plave boje. Dovoljno gust raspored fosfornih elemenata osigurava da te tri boje vidimo kao jednu.

Slika 8.11 Raspored fosfornih elemenata kod CRT monitora

Postoji više različitih setova RGB primarnih boja ovisno o definiciji triju primarnih boja i referentne bijele boje (bijele točke – engl. white point). Naime, RGB sustav boja prvenstveno je namijenjen upotrebi na LCD, CRT i plazma prikaznim uređajima, tipično su to monitori i TV prijemnici. Kako su se prikazni uređaji godinama razvijali i mijenjali (poboljšavali) tako se javljala i potreba za novim setovima RGB boja koji bi pratili promjene u CRT tehnologiji. Time smo zapravo, na temelju RGB modela boja, dobili niz različitih (ali ipak sličnih) RGB prostora boja.

Jedan primjer RGB prostora boja je preporuku ITU-R BT.709 koja definira prostor boja za potrebe HDTV, a odgovara i suvremenim monitorima. Primarne boje (R, G, B) kod BT.709 definirane su kao

BBBBB

GGGGG

RRRRR

YXZYXYXZYXYXZYX

−−===−−===−−===

1,06.0,15.01,60.0,30.01,33.0,64.0

.

Odnos RGB i XYZ koordinata kod BT.709 dan je s

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−

−−=

⎥⎥⎥

⎢⎢⎢

ZYX

057.1204.0056.0042.0876.1969.0499.0537.1240.3

BGR

709

709

709.

Page 62: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

61

Često se uz BT.709 primarne boje koristi bijela točka D6516. Time se, uz neke dodatne karakteristike, dobije sRGB – još jedan popularni RGB prostor boja. Bijela točka (W) je kod D65 definirana kao

WWWWW YXZYX −−=== 1,3290.0,3127.0 . CMY i CMYK modeli boja Primarne boje kod CMY modela boja su cijan, magenta i žuta (engl. cyan, magenta, yellow). To su sekundarne boje RGB bojama koje nastaju miješanjem crvene, zelene i plave. Na slici 8.9 prikazana je CMY kocka boja, a na slici 8.10 miješanje primarnih CMY boja. Miješanjem primarnih CMY boja dobiju se sekundarne boje koje su jednake primarnim RGB bojama (dakle crvena, zelena i plava).

CMY model se koristi u tiskarskoj industriji kod uređaja za printanje/tiskanje gdje kolor pigmenti na papiru apsorbiraju pojedine boje. Ako na papir isprintamo toner/tintu žute boje to ne znači da ćemo vidjeti žutu boju, nego da nećemo vidjeti plavu. Stoga se CMY nazivaju subtraktivne boje. Subtraktivnost CMY (CMYK) modela boja ilustrirana je na slici 8.12.

Teoretski, ako prilikom printanja koristimo 100% cijana, magente i žute boje, dobit ćemo crnu boju (cjelokupna svjetlost tj. sve boje se apsorbiraju). Međutim, u praksi se CMY boje ne mogu koristiti same. Zbog nesavršenosti tinte i drugih ograničenja u tiskarskom procesu potpuna apsorpcija svjetla nije moguća, stoga se puna crna odnosno siva boja u praksi ne mogu dobiti miješanjem CMY tinte u jednakim omjerima. Stvarni rezultat je manje ili više tamno smeđa boja. Kako bi se mogla dobiti prava crna (i siva) boja, printeri imaju i dodatnu, crnu tintu, označenu s K. Drugi razlog uvođenja crne tinte je cijena. Naime, tinta u boji je skuplja od crne tinte (crna tinta je u osnovi ugljen). I treći razlog je što je printanje samo jedne tinte puno brže od printanja tri različite tinte što pogotovo dolazi do izražaja jer većina isprintanog materijala treba samo crnu boju.

Slika 8.12 Subtraktivnost CMYK modela boja

16 D65 je jedna od standardnih iluminacija koje je definirala CIE (International Commission on Illumination). Otprilike odgovara sredini sunčanog dana u Zapadnoj i Sjevernoj Europi.

Page 63: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

62

Tako se CMY model boja u praksi koristi kao CMYK model i nezamjenjiv u tiskarskoj industriji. Bilo koji model boja koristili, kada želimo nešto isprintati, uvijek će se u konačnici taj model konvertirati u CMYK model. Slično je i kod monitora, koji god model koristili, kad nešto želimo prikazati na zaslonu monitora, uvijek će se napraviti pretvorba u RGB model boja. Konverzija CMY modela boja u CMYK dana je slijedećim izrazima

( )

KY:YKM:M

KC:CY,M,Cmin:K

−=−=−=

=

Konverzija između CMY i RGB modela dana je izrazima

⎥⎥⎥

⎢⎢⎢

⎡−

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

BGR

111

YMC

⎥⎥⎥

⎢⎢⎢

⎡−

⎥⎥⎥

⎢⎢⎢

⎡=

⎥⎥⎥

⎢⎢⎢

YMC

111

BGR

Usporedba opsega boja za L*a*b*, RGB i CMYK modele boja Opseg boja (engl. color gamut) je skup svih boja koje se, za dani model boja, mogu dobiti koristeći primarne boje. Na slici 8.13 dana je usporedba opsega boja za L*a*b*, RGB i CMYK modele boja. L*a*b* opseg boja je najveći i on obuhvaća sve moguće boje, dakle sve vidljive valne duljine i njihove kombinacije. RGB opseg ja manji što znači da neke vidljive boje ne možemo dobiti dodavanjem RGB komponenti. Npr. čista cijan ili čista žuta boja ne mogu se prikazati na zaslonu monitora. CMYK opseg je najmanji (ali obuhvaća i neke boje koje RGB ne obuhvaća). To znači da neke od boja koje možemo vidjeti pa čak i neke od boja koje možemo prikazati na zaslonu monitora, ne možemo isprintati na printeru. To je problem s kojim se susreće tiskarska industrija i općenito problem koji se javlja prilikom bilo kakvog printanja u boji o čemu treba voditi računa.

Slika 8.13 Usporedba opsega boja za L*a*b*, RGB i CMYK modele boja

Page 64: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

63

Stvarni RGB opseg boja ovisi o kvaliteti zaslona (fosfornih elementa, uzbude i sl.). Isto tako stvarni CMYK opseg boja ovisi o kvaliteti tinte i papira te o primijenjenoj tehnologiji pa svi monitori (kao i svi printeri) nemaju isti opseg boja bez obzira što svi koriste isti, osnovni model boja (CMYK odnosno RGB). Naravno, cilj proizvođača, a želja kupaca monitora i printera, uvijek je što veći opseg boja. 8.3.2. Modeli boja za video signal Modeli boja za video signal temelje se na osvjetljenju i razlici boja. Dakle, jedna komponenta je uvijek osvjetljenje dok je informacija o boji sadržana u druge dvije komponente, tzv. razlike boja. Komponenta osvjetljenja predstavlja crno/bijeli dio signala i odgovara CIE Y primarnoj boji, ali joj nije u potpunosti jednaka. Naime CIE Y je suma linearnih RGB komponenti dok je u praktičnim primjenama, kod modela boja namijenjenih video signalu, Y komponenta uvijek suma nelinearnih, gama korigiranih, RGB komponenti (vidjeti poglavlje Gama korekcija). Ta se razlika ponekad javlja u imenu i oznaci pa se Y komponenta kod CIE XYZ sustava zove osvjetljenje (engl. luminance), a gama korigirano osvjetljenje luma (engl. luma) i označava se s Y'. Crtica (') označava da se radi o gama korigiranim vrijednostima te se osim Y' koristi i R', G', B' i sl.

Dakle, Y' sadrži informacije o osvjetljenju pojedinih boja, te je uz to i gama korigirana. Osvjetljenje je vezanu uz funkciju luminancijske efikasnosti. Tako npr., uz isti intenzitet u cijelom spektru percepcijski vidimo zelenu boju puno svjetliju nego crvenu, a crvenu svjetliju nego plavu. To je iskazano u odgovarajućim težinskim faktorima (preporuka ITU-R BT.601-2 definira 0.587 za zelenu, 0.299 za crvenu i 0.114 za plavu) koji se koriste prilikom računanja Y'. To su ujedno i težinski faktori koje bi trebali koristiti kada pretvaramo sliku u boji u sivu sliku kako bi osjećaj sjajnosti bio isti za obje slike. Ako crvena, zelena i plava komponenta nisu gama korigirane onda su težinski faktori (preporuka ITU-R BT.709) jednaki 0.715 za zelenu, 0.213 za crvenu i 0.072 za plavu boju.

Informacija o boji, sadržana u druge dvije komponente dobije se izbacivanjem informacije o osvjetljenju što je najlakše napraviti oduzimanjem. Kako osvjetljenje već sadrži veliki udio zelene boje (58.7%) to se druge dvije komponente dobiju oduzimanjem lume od nelinearne plave (B'-Y'), odnosno oduzimanjem lume od nelinearne crvene (R'-Y'). Te dvije komponente definiraju boju pa se poput nijanse i zasićenja zajedno zovu kroma.

Različiti faktori skaliranja se primjenjuju na komponente razlike boja za različite aplikacije. Y'UV skaliranje (model boja) optimizirano je s obzirom na kompozitni NTSC/SECAM/PAL TV signal. Y'IQ se opcionalno koristi za kompozitni NTSC TV signal, dakle ima istu namjenu kao Y'UV. Y'PbPr skaliranje (model boja) optimizirano je za komponentni analogni video. Y'CbCr koristi se za komponentni digitalni video, npr. kod MPEG-a. Kodakov PhotoYCC koristi faktor skaliranja optimiziran tako da opseg boja odgovara filmu u boji.

Iako su komponente razlike boja (UV, IQ, PbPr, ...) nelinearne, dakle gama korigirane, obično se kod njih ne koristi crtica kako bi se istakla nelinearnost. Naime te komponente su uvijek nelinearne pa se ta činjenica uglavnom posebno niti ne ističe (za razliku od Y', R', G', B' komponenti koje mogu biti i linearne i nelinearne).

Page 65: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

64

Y'UV model boja Y'UV model boja inicijalno je napravljen za kompozitni PAL TV kolor signal ali se sada koristi i za kompozitni SECAM i NTSC TV signal. Informacija o boji sadržana je u komponentama razlike boja koje se ovdje nazivaju U i V. Na slici 8.14 prikazano je rastavljanje slike u boji na Y', U i V komponentu. Y' sadrži informaciju o osvjetljenju, pa bi, isprintane na crno-bijelom printeru, originalna slika i slika komponente Y' trebale biti iste. Informacija o osvjetljenju (luma) dobije se, kao i za sve druge modele, na temelju izraza Y' = 0.299R' + 0.587G' + 0.114B' (8.1) Kod PAL sustava za razlike boja koristi se slijedeće skaliranje

U = 0.492(B'-Y') V = 0.877(R'-Y')

To znači da je odnos između R'G'B' i Y'UV modela boja dan s

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−−−=

⎥⎥⎥

⎢⎢⎢

'B'G'R

100.0515.0615.0436.0289.0147.0114.0587.0299.0

VU

'Y

Za sivu sliku vrijedi U=V=0, tj. nema kroma komponenti - postoji samo Y' komponenta.

Y'UV model omogućava gledanje slike i na crno/bijelom TV prijemniku koji u tom slučaju koristi samo Y' komponentu, a U i V komponente jednostavno zanemari.

Ljudski vizualni sustav je najosjetljiviji na Y' komponentu. Stoga je u PAL sustavu od ukupno raspoloživog frekvencijskog pojasa 5 MHz alocirano za Y', 1.3 MHz za U i 1.3 MHz za V komponentu. Time je video signal praktično kodiran (komprimiran) koristeći se činjenicom da čovjekov vizualni sustav daje nekim informacijama veći prioritet. To nije moguće napraviti s RGB modelom boja jer je kod RGB modela boja svaka komponenta percepcijski jednako važna.

original

Page 66: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

65

Y' U V

Slika 8.14 Rastavljanje slike u boji na Y', U i V komponente

Y'IQ model boja Y'IQ model boja se opcionalno upotrebljava u NTSC televizijskom sustavu. Y' komponenta je ista kao i kod Y'UV modela boja, a umjesto U i V komponenti koriste se I i Q (I - In-phase; Q - quadrature-phase). I i Q su rotirane osi U i V (za 33°) te vrijedi

I = Vcos33 – Usin33 Q = Vsin33 + Ucos33

tj. I = 0.596R' – 0.275G' – 0.321B' Q = 0.212R' – 0.523G' + 0.311B'

Dakle transformacija R'G'B' u Y'IQ je dana s

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−−=

⎥⎥⎥

⎢⎢⎢

'B'G'R

311.0523.0212.0321.0275.0596.0

114.0587.0299.0

QI

'Y

Slično kao i kod Y'IQ modela boja, ljudski vizualni sustav je najosjetljiviji na Y' komponentu.

Potom je najosjetljivije na I i na kraju na Q. Stoga je u NTSC sustavu alocirano 4.2 MHz za Y', 1.5 MHz za I i 0.55 MHz za Q komponentu. Y'PbPr model boja Y'PbPr je model boja koji ima istu Y' komponentu kao i Y'UV model. Druge dvije komponente (razlike boja) su drugačije skalirane te se nazivaju Pb i Pr pri čemu vrijedi

Pb = (B'-Y')0.564 Pr = (R'-Y')0.713

odnosno

Page 67: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

66

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−−−=

⎥⎥⎥

⎢⎢⎢

'''

081.0419.0500.0500.0331.0169.0114.0587.0299.0'

BGR

PrPbY

Skaliranje rezultira chrominance komponentama (Pb i Pr) koje su uvijek između -0.5 i 0.5 za

R'G'B' u intervalu od 0 do 1. Y' komponenta je uvijek u intervalu od 0 do 1. Y'CbCr model boja Za aplikacije kod kojih se koristi 8-bitno kodiranje boja (256 mogućih razina – od 0 do 255) često se koristi modifikacija Y'UV modela boja sa skaliranim i pomaknutim komponentama razlike boja koje se nazivaju Cb i Cr. Pri tome se definira Y' komponenta tako da može poprimiti jednu od 220 razina (od 16 do 235), a Cb i Cr komponente tako da mogu poprimiti jednu od 224 razine (od 16 do 240, gdje je nula jednaka 128). Y'CbCr komponente moraju se skalirati i pomaknuti kako bi zadovoljile tražene uvjete pa za nove Y'CbCr komponente vrijedi

Y’ := 219 Y’ + 16 Cb = 224 [0.564(B’-Y’)]+128 = 126(B’-Y’)+128 Cr = 224 [0.713(R’-Y’)]+128 = 160(R’-Y’)+128

odnosno

⎥⎥⎥

⎢⎢⎢

⎡+

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−−−=

⎥⎥⎥

⎢⎢⎢

12812816

'''

213.18786.93000.112000.112203.74797.37966.24553.128481.65'

BGR

CrCbY

gdje su R'G'B' komponente iz intervala [0,1]. Time se dobije vektor od tri decimalna broja (Y', Cb i Cr) koja je još potrebno zaokružiti.

YCbCr model boja upotrebljava se kod većine standarda za komprimiranje video i slikovnih signala (JPEG, MPEG, H.261, H.263, H.264, itd). Gama korekcija Fosforni elementi na zaslonima monitora i TV uređaja svijetle kada ih pogodi elektronski snop. Međutim CRT nije linearan uređaj pa osvjetljenje koje uređaj generira nije proporcionalno s naponom elektronskog snopa (slika 8.15). Primjerice, ako na standardnom CRT monitoru (gama 2.2) ulaz smanjimo na polovicu (RGB vrijednosti smanjimo na 50%) rezultat će biti intenzitet osvjetljenja od samo 22% (umjesto 50%).

Da bi neki model boja mogli koristiti za uređaje koji se temelje na CRT-u potrebno je izvršiti tzv. gama korekciju. Uloga gama korekcije je da kompenzira nelinearnost CRT17 kako bi se korektno reproduciralo osvjetljenje što je ilustrirano na slici 8.15. Gama korekcija se obično radi na uređajima koji stvaraju signal (npr. kamere) kako bi se minimizirala cijena prikaznih uređaja (TV odnosno monitor).

17 Kod LCD-ova i sličnih tehnologija odnos između napona i intenziteta također je, i to jako, nelinearan, ali se ne može opisati gama vrijednošću. Ipak, takvi prikazni uređaji najčešće koriste korekciju koja je ekvivalenta ponašanju koje bi dobili s gama 2.5.

Page 68: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

67

napon elektronskog snopa (V)

osvj

etlje

nje

(cd/

m2 )

idealnakrivulja

gamakorekcija

CRT

Slika 8.15 Prikazna karakteristika CRT monitora i gama korekcija Kod CRT vrijedi da je generirano osvjetljenje proporcionalno s naponom signala na neku potenciju tj. γ≈ UY (8.2)

gdje se eksponent (γ) zove gama faktor. Većina monitora ima gama od 1.7 do 2.7, a noviji uglavnom od 2.35 do 2.55. Tipična vrijednost gama faktora koja se korist kod modela boja za PAL/SECAM sustav je 2.8, a kod modela boja za NTSC sustav 2.2. Nažalost, implementacija gama korekcije nije jednoznačna na svim platformama.

Gama korekcija se sastoji od primjene inverznog izraza izrazu (8.2) i to na samu sliku prije njenog prikazivanja. Dakle, gama korekcija prilagodi (promijeni) vrijednosti piksela, a time i napon, kako bi omogućila percepcijska linearnost. To znači da pikseli mijenjaju svoju vrijednost prema slijedećem izrazu

255vrijednost_stara0za255

ednoststara_vrij255dnost nova_vrije

1vrijednost_stara0zaednoststara_vrij dnostnova_vrije1

1

≤≤⎟⎠⎞

⎜⎝⎛=

≤≤=

γ

γ

Gama korekcija se ne smije pomiješati s posvjetljivanjem/potamnjivanjem što je funkcija koju imaju praktično svi programi za obradu slike a čiji je cilj posvijetliti/potamniti sve piksele za istu vrijednost. 8.3.3. Softverski orijentirani modeli boja Softverski orijentirani modeli boja koriste se u raznim grafičkim programima kako bi korisnici lakše definirali boje. Nastali su u vrijeme kada su se boje morale numerički definirati što je bilo jako teško. Danas je manja potreba za ovakvim modelima jer se boje mogu birati vizualno. Postoji više softverski orijentiranih modela boja kao što su:

HSB – Hue, Saturation, Brightness (nijansa, zasićenje, sjajnost) HLS - Hue, Lightness, Saturation (nijansa, svjetloća, zasićenje) HSV – Hue, Saturation, Value (nijansa, zasićenje, iznos) HSI – Hue, Saturation, Intensity (nijansa, zasićenje, intenzitet)

Page 69: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

68

Softverski orijentirani modeli boja su intuitivni modeli jer su bliski ljudskom poimanju boja. Temelje se na definiranju nijanse i zasićenja, te treće veličine koja se odnosi na količinu emitiranog svjetla, a različito se naziva i definira u različitim modelima (svjetloća, sjajnost, iznos, intenzitet).

Nijansa definira samu boju, a kod monokromatskog svjetla odgovara valnoj duljini. Nijansa se tipično definira da bude u intervalu [0°, 360°] te opisuje kutnu razliku u odnosu na crvenu boju (slika 8.16).

Slika 8.16 Nijansa kod softverski orijentiranih modela boja

Zasićenje opisuje čistoću boje a izražava se u odnosu na neutralnu sivu. Mijenja se od 0% (nema zasićenja, tj. siva boja) do 100% (puno zasićenje) i ovisi o danoj nijansi i danoj svjetloći (slika 8.17).

Slika 8.17 Zasićenje kod softverski orijentiranih modela boja

Svjetloća, sjajnost, intenzitet, iznos i sl. odnose se na količinu emitiranog svjetla i uglavnom su bliski CIE definiciji svjetloće (slika 8.18).

Slika 8.18 Svjetloća kod softverski orijentiranih modela boja

Napomenimo da izrazi koji se koriste u nazivima softverski orijentiranih modela boja (naročito za određivanje količine emitiranog svjetla kao što je npr. sjajnost i intenzitet), nisu uvijek u skladu s odgovarajućim CIE definicijama.

Page 70: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

69

9. SLIKOVNI SIGNALI (SLIKE I GRAFIKA) Digitalna slika prikazuje realni ili virtualni svijet kao dvodimenzionalnu matricu uzoraka. Realni svijet je redovito trodimenzionalan pa ga je potrebno projicirati u dvije dimenzije. Osim toga, realni svijet je analogan pa ga je potrebno digitalizirati. Pri tome digitaliziramo cijelu sliku u prostoru (tj. definiramo koliko će matrica uzoraka imati elemenata), ali i svaki uzorak posebno (tj. definiramo koliko razina boje svaki uzorak može imati). Tako se govori o rezoluciji i dubini slike gdje se rezolucija odnosi na digitalizaciju u prostoru, a dubina na digitalizaciju vrijednosti piksela.

Kada su u pitanju računalno generirane slike onda se često susreće i pojam grafika. Grafika se koristi objektima (linije, krivulje, tekst i sl.) i njihovim atributima kako bi se definirala željena scena. Dakle, za razliku od slikovnog signala, grafički signal vodi računa o semantičkom sadržaju te se pojedini objekti od kojih se grafika sastoji mogu pojedinačno smanjivati, povećavati, brisati i sl.

U dvodimenzionalnoj matrici uzoraka koji tvore sliku (a u širem smislu i grafiku) svaki uzorak zove se piksel (engl. pixel). Piksel je dakle najmanji slikovni element – dio digitalne slike. Matrica uzoraka (skup svih piksela) često se naziva bitmapa (engl. bitmap). 9.1. REZOLUCIJA SLIKE Rezolucija slike određena je brojem piksela u slici pri čemu se definira koliko piksela slika ima po širini i po dužini. Tipične rezolucije su 320x240, 640x480, 1024x768, itd. Utjecaj rezolucije na kvalitetu slike prikazan je na slici 9.1. Radi se o jednako velikim (4x4 cm) slikama s različitim rezolucijama dakle različitim brojem piksela po jednom centimetru. Kod dovoljno male rezolucije uočava se zrnata struktura zbog relativno velikih piksela.

512x512 256x256 128x128

64x64 32x32 16x16

Slika 9.1 Utjecaj rezolucije na kvalitetu slike

Page 71: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

70

9.2. DUBINA SLIKA Dubina (preciznost) slike određuje koliko različitih razina intenziteta (odnosno različitih boja) može imati svaki pojedini piksel. Prema dubini slike se mogu podijeliti na

• kolor slike, • slike s paletom boja, • sive slike, • crno/bijele slike.

Kolor slike Kolor slike tipično imaju 16, 24 ili više bita po pikselu. Često se koristi 24-bitni kolor (pravi kolor, engl. thru color) kod kojeg je svaki piksel predstavljen s 3 bajta. Svaki bajt (8 bita) definira jednu komponentu iz modela boja, najčešće je to RGB model boja što znači da svaka boja može poprimiti jednu od 28=256 mogućih razina. 24-bitni kolor podržava 256x256x256=224=16777216 različitih boja. Čovjek ne može razlikovati toliko boja (maksimalno 5-6 milijuna), a ni monitori nisu u stanju prikazati toliko različitih boja. Ipak, zbog aproksimacija koje se rade u raznim fazama obrade slikovnog signala kao i zbog nesavršenosti prikaznih sustava korisno je imati više boja nego ih čovjek razlikuje. Stoga nije rijetkost da se slike interno obrađuju kao 48-bitni kolor (pa čak i više).

Većina 24-bitnih kolor slika koristi 32 bita za pohranu jednog piksela. Dodatni, četvrti bajt za svaki piksel, naziva se alpha kanal i koristi se za pohranu informacija o specijalnim efektima (npr. transparentnost odnosno bilo koja informacija vezana uz prikaz jedne slike iznad druge).

Kolor slike često se pohranjuju i u 16-bitnom formatu, što znači da su za svaki piksel rezervirana 2 bajta. Teoretski je to 216=65536 različitih boja. U praksi se tih 16 bita može na različite načine raspodijeliti između R, G i B komponenti (npr. RRRRRGGGGGGGBBBB), a može se uvesti i dodatna četvrta komponenta čime se bolje definira osvjetljenje.

Na slici 9.2 prikazana je slika u boji s 24-bitnim kolorom i izdvojenim uvećanim detaljem. Razlika između 24-bitnog i 16-bitnog kolora je relativno mala. Većina kvalitetnih novina tiska s velikom rezolucijom (barem 1200 dpi), a relativno malim brojem boja.

Slika 9.2 Primjer slike u boji s uvećanim detaljem za 24-bitni kolor

Page 72: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

71

Slike s paletom boja Najčešće se koristi 8-bitna paleta boja što znači da je boju moguće birati iz palete od 256 različitih boja. Paleta boja može imati i nekoliko milijuna boja što onda podrazumijeva bitno veći broj bita po svakom pikselu. Kod ovakvog pristupa paleta boja se koristi za definiciju boja a prenosi se, odnosno pohranjuje, indeks ili redni broj ili ponekad ime boje za svaki piksel. To podrazumijeva da prijemnik (dekoder) i predajnik (koder) imaju istu paletu boja (kolor tablicu, engl. Color Look-up Table). Ovisno o softveru koji se koristi, paleta boja u prijemniku ne mora uvijek odgovarati onoj koja je korištena za kodiranje. To rezultira bojama drugačijima od željenih pa slika s 8-bitnom paletom boja može različito izgledati na različitim računalima i programima.

Jedna od najpoznatijih paleta boja koja se korist je Pantone paleta (www.pantone.com). To je popularna paleta boja odnosno sustav za usklađivanje boja (engl. Color Matching System) koji se koristi u tiskarskoj industriji. Korisnik definira boju po imenu ili po broju pa je tako siguran da će se točno isprintati bez obzira što se ne mora točno prikazati na zaslonu monitor. To se naravno odnosi na tzv. spot color gdje se kolor printa tako da svaka boja ima svoj toner/tintu. To je sustav koji je dobar za relativno mali broj boja. Ako se želi puni kolor tada ovaj pristup nije dobar pa se koristi CMYK sustav odnosno CMYK toneri. Naravno, i u tom slučaju boje se mogu definirati koristeći Pantone ili sličnu paletu boja samo što je tada potrebno koristiti neki od sustava za upravljanje bojama (engl. Color management system (CMS)) koji bi trebao garantirati da boje ostaju iste bez obzira na medij koji se koristi.

Na slici 9.3 prikazana je slika u boji s 8-bitnom paletom boja i izdvojenim uvećanim detaljem. Iako je kvaliteta ponekad dosta lošija od 24 ili 16 bitnog kolora još uvijek je za neke primjene zadovoljavajuća uz znatnu prednost manje potrebne memorije.

Slika 9.3 Primjer slike u boji s uvećanim detaljem za 8-bitnu paletu boja18

18 Sve fotografije koje se koriste u ovoj knjizi poznate su  iz  literature koja se bavi obradom slika. To su standardne, uvijek iste,  test  slike  kako  bi  se  rezultati mogli međusobno  uspoređivati.  Te  fotografije  nisu  zaštićene  ili  su  se  autori  odrekli autorskih prava na njih. Tako je na slici 8.14 prikazana slika “baboon” (grivasti pavijan) koja se koristi zbog velikog raspona i intenziteta boja. Na slici 9.2 i 9.3 je pepper (papar). Slika 9.1 je Lena, danas zasigurno daleko najčešće korištena test slika. Lena  je  dio  slike  objavljene  u  Playboy  Magazine  1972.  godine.  Playboy  se  odrekao  autorskih  prava  na  tu  sliku (www.lenna.org).

Page 73: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

72

Sive slike Sive slike se najčešće pohranjuju na način da je za svaki piksel rezerviran 1 bajt. To znači da svaki piksel može poprimiti jednu od 28=256 različitih vrijednosti. S obzirom da čovjek može razlikovati oko 100 razina sive boje (osvjetljenja) to je sasvim dovoljno za praktične primjene. Siva slika se iz slike u boji dobije najčešće primjenom izraza (8.1).

Na slici 9.4 prikazana je siva slika s 256 razina sive boje i izdvojenim uvećanim detaljem. Utjecaj promjene broja razina sive slike na kvalitetu prikazan je na slici 9.5. Broj razina se mijenja od 256 do 2.

Slika 9.4 Siva slika 256 razinska s uvećanim detaljem

256 128 64

32 16 8

Page 74: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

73

4 2

Slika 9.5 Utjecaj promjene broja razina sive slike na kvalitetu

Binarne slike Granični slučaj sive slike je dvorazinska (binarna) odnosno crno/bijela slika. Svaki piksel je pohranjen kao jedan bit (ili 0 ili 1). Iako se 0 i 1 mogu pridružiti bilo koje boje to su u pravilu crna i bijela. Primjer dvorazinske slike koja nije crno/bijela dan je na slici 9.5, slučaj 2 razine. Crno/bijela slika se iz sive slike može dobiti na razne načine. Potrebno je naime svaki piksel, koji može poprimiti jednu od više (najčešće 256) vrijednosti, pretvoriti u dvije vrijednosti. Postupak pretvaranja sivih slika u dvorazinske zove se polutoniranje. Polutoniranje Polutoniranje se radi kako bi se sive slike (i slike u boji) mogle reproducirati na uređajima koji nemaju mogućnost prikazivanja sivih tonova kao što su to npr. matrični i laserski printeri. Pri tome se u razmatranje uzima najgori slučaj odnosno slučaj kada uređaj za prikazivanje može prikazati samo dvije boje: crnu i bijelu. To u praksi i jeste najčešći slučaj. Za one uređaje koji mogu prikazati više od 2 razine sive boje mogu se koristiti iste tehnike uz primjenu jednostavne ekstrapolacije.

Laserski printeri uglavnom imaju unaprijed ugrađeno polutoniranje pa takvi printeri prihvaćaju sivu sliku, interno je obrađuju (polutoniraju) i onda tako obrađenu sliku printaju. Na taj način korisnik ima osjećaj da printer reproducira sivu sliku te često korisnici niti ne znaju da je isprintana slika zapravo crno/bijela i da je nastala polutoniranjem sive slike. To je posebice izraženo kod novijih printera s velikom rezolucijom (600dpi ili više) gdje je upravo zbog velike rezolucije crno/bijela struktura slike vidljiva tek pod povećalom. Nešto drugačije je kod tiska (naročito dnevnog) ili npr. velikih tiskanih plakata i reklama koji imaju puno manju rezoluciju i koji su prvenstveno namijenjeni za gledanje s većih udaljenosti. Kod tih slučajeva može se na manjim udaljenostima ili pažljivijim gledanjem vidjeti zrnata odnosno rešetkasta struktura.

Polutonirane slike se kreiraju tako da izgledaju kao sive tj. da se stvori iluzija sive slike. To se radi tako da se formiraju mali blokovi binarnih piksela (crnih ili bijelih), koji imaju srednju vrijednost jednaku, odnosno blisku, srednjoj vrijednosti odgovarajućeg područja sive slike. Ako blokovi nisu preveliki (tj. ako je udaljenost gledanja dovoljno velika da se struktura blokova ne raspoznaje) tada se blokovi ne vide te izlaz izgleda kao siva slika. Tako se polutoniranje praktično temelji na činjenici da ljudsko oko radi kao niskopropusni filtar.

Page 75: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

74

Skupina od n x n piksela može odražavati ukupno n2+1 različitih razina (intenziteta) sive boje. Na taj način površina određena s 4x4 piksela može odražavati 17 različitih razina sive boje što je ilustrirano na slici 9.6.

Slika 9.6 Siva slika kao rezultat polutoniranje matrice 4x4

Polutoniranje se može napraviti na razne načine. Najjednostavnije je svaki sivi piksel zamijeniti s crnim ili bijelim pikselom i to s obzirom na neki prag. Na slici 9.7 prikazana je tako dobivena slika uz fiksni prag od 256/2=128.

Postoje i razne druge metode s bitno boljim rezultatima: najpoznatije su metoda podrhtavanja praga (engl. dithering) i metoda difuzije greške (engl. error diffusion). Na slici 9.8 dan je primjer slike polutonirane metodom difuzije greške.

Slično kao za sive slike, polutoniranje se radi i sa slikama u boji.

Slika 9.7 Crno/bijela slika polutonirana metodom nepromjenjivog praga

Slika 9.8 Crno/bijela slika polutonirana metodom difuzije greške

Page 76: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

75

Usporedba memorijskih zahtjeva različitih tipova slika U tablici 9.1 dana je usporedba memorijskih zahtjeva (bez kompresije) različitih tipova slika s obzirom na dubinu te za različite rezolucije.

tip slike rezolucija memorija (kB) rezolucija memorija

(kB) rezolucija memorija (kB)

32 bitni kolor 1024x768 3072 640x480 1200 320x240 300 24 bitni kolor 1024x768 2304 640x480 900 320x240 225 16 bitni kolor 1024x768 1536 640x480 600 320x240 150 paleta boja (256 boja) 1024x768 768 640x480 300 320x240 75 siva (256 razina) 1024x768 768 640x480 300 320x240 75 crno bijela 1024x768 96 640x480 37.5 320x240 9.375

Tablica 9.1 Usporedba potrebne memorije za pohranu slika (bez kompresije)

9.3. FORMATI SLIKA Slike i grafike, bilo da su nastale programima za crtanjem ili programima za slikanjem, bilo da su skenirane ili snimljene kamerom, mogu biti pohranjene u nekom od velikog broja različitih formata. Sve te formate možemo podijeliti u dva osnovna tipa

• rasterski (obično slike), • vektorski (obično grafika).

Rasterski format pohranjuje sliku kao niz uzoraka (piksela) i obično nastaje kao rezultat

programa za slikanje, skeniranjem ili snimanjem. Vektorski format nastaje gotovo isključivo kao rezultat programa za crtanje i sastoji se ne od piksela nego od objekata kao što su krivulje, sjene, znakovi i sl. Kombinacijom rasterskog i vektorskog formata dobije se format koji može pohranjivati i objekte i uzorke a naziva se metafile.

Formatom slike može se definirati pohranjivanje s gubicima ili bez gubitaka. Formati s gubicima trebaju bitno manje memorije, a za većinu slika tipa fotografija praktično nema subjektivne razlike između slika s gubicima i bez gubitaka (ako sažimanje nije preveliko).

Formatima slika se, osim samih informacija o intenzitetima boja pojedinih piksela, definiraju i razne druge informacije kao što je dužina i širina slike, broj boja, autor i sl. Većina formata slika podržava jednu ili nekoliko različitih vrsta sažimanja bilo s ili bez gubitka dijela informacije. U tablici 9.2 dan je pregled nekih najpopularnijih formata za pohranu slika, a u nastavku poglavlja kratak opis nekih od formata za pohranu slika.

Različiti programi rade s različitim formatima iako će praktično svaki program za crtanje/slikanje moći otvoriti formate JFIF (JPEG), GIF i TIFF.

Page 77: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

76

naziv ekstenzija tip

Graphics Interchange Format .gif rasterski Portable Network Graphics .png rasterski JPEG File Interchange Format (Joint Photographic Expert Group) .jpg, .jpeg, .jfif rasterski

Tagged Image File Format .tif, .tiff rasterski Postscript, Encapsulated Postscript ps, eps metafile Portable Document Format .pdf metafile Targa Bitmap .tga rasterski Macintosh PICT .pict, .pct metafile Bit Mapped Picture .bmp rasterski Paint Brush File .pcx rasterski Computer Graphics Metafile .cgm metafile Windows Metafile .wmf metafile Enhanced Windows Metafile .emf metafile Data eXchange Format .dxf vektorski

Tablica 9.2 Najčešći formati za pohranu slika i grafike

GIF (GIF87a, GIF89a) Graphics Interchange Format (GIF) je razvio CompuServe Information Service 1987. godine kako bi njegovi korisnici mogli razmjenjivati slike preko modema. GIF koristi Lempel-Ziv-Welch (LZW) algoritam za sažimanje. LZW je oblik Huffmanova kodiranja, dakle sažimanje bez gubitka. Broj bita po pikselu je od 1 do 8 (broj boja ograničen na 256) te je zbog ograničenog broja boja pogodniji za grafiku nego za prirodne slike. GIF podržava isprepleteni mod rada (interlace). Nakon originalne specifikacije (GIF87a) razvijena je i proširena verzija (GIF89a) s nekoliko dodatnih mogućnosti kao što je transparentnost i animacije.

Budući je LZW kompresijski standard koji se koristi u GIF formatu zaštićen patentom, razvijen je i novi format, koji se temelji na slobodnom kompresijskom algoritmu. Taj format, u čijem razvitku je sudjelovao i CompuServe Information Service, nazvan je PNG19 (Portable Network Graphics).

GIF je prvi format kojeg su podržavali Internet browseri i još uvijek se vrlo često koristi u svrhu razmjene slika preko Interneta.

Standardna ekstenzija koja se koristi je .GIF.

19 PNG je službeno skraćenica od "Portable Network Graphics", a neslužbeno od "Png is Not Gif". 

Page 78: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

77

JFIF (JPEG) Ono što većina korisnika naziva JPEG format zapravo je JFIF format20 (JPEG File Interchange Format). To je minimalni format koji omogućava da se JPEG tok bitova razmjenjuje između različitih aplikacija i platformi. JFIF format je neovisan o platformi pa se može koristiti na PC, Mac, UNIX, itd.

Dakle strogo gledano skraćenica JPEG ne odnosi se na format. JPEG je skraćenica koja se odnosi na standardizacijsku organizaciju Joint Photographic Expert Group ali i na kompresijski standard za slike (fotografije) razvijen od te organizacije. JPEG kompresijski standard koristiti se u JFIF formatu, ali može i u drugim formatima kao što je npr. TIFF format. JPEG uzima u obzir karakteristike (ograničenja) ljudskog vizualnog sustava da bi bolje komprimirao slike. JPEG koristi kompresiju s gubicima i to tako da se može birati stupanj kompresije (tj. kvalitet komprimirane slike). Najčešće je slike tipa fotografije (i sve slike bez oštrih promjena boja) moguće značajno komprimirati (barem 10-tak puta) bez subjektivnog gubitka kvalitete. JPEG kompresija nije dobra za grafiku (crteže, nacrte i sl.). O JPEG standardu bit će više riječi u poglavlju 11.2. JFIF podržava brojne modele boja: RGB, CMYK, YCbCr su najčešći.

JFIF format idealan je za fotografije ali uvijek treba voditi računa da, u ovisnosti o kompresiji, JFIF format unosi grešku. JFIF (JPEG) format je uz GIF format postao de facto standard za razmjenu slika preko Internet mreže.

Standardne ekstenzije koje se koriste su .JPG, .JPEG ili .JFIF. TIFF Tagged Image File Format (TIFF) je format razvijen od Aldus Corporation21 1987. godine kojeg je kasnije podržao i Microsoft. TIFF je razvijen s ciljem da omogući transparentnost (neovisnost o hardveru) kodiranja slika. Stoga TIFF može pohranjivati jako veliki broj različitih tipove slika (crno/bijele, sive, 8-bitni kolor, 32-bitni kolor, itd. dakle od 1 do 24 bita po pikselu u svim mogućim varijantama). Tako veliki broj varijacija omogućen je pristupom koji koristi tzv. tag-ove, pri čemu se sve relevantne informacije pohranjuju u zaglavlju.

TIFF je u načelu format bez gubitka dijela informacije (lossless), a kompresijske tehnike koje su podržane i koje se mogu koristi vrlo su raznovrsne: RLE, LZW, CCITT grupa 3 i grupa 4. Osim toga postoji i tag koji omogućava i kompresiju s gubicima i to JPEG kompresiju. Podržava i različite modele boja: sivi, RGB, CMYK.

Kako TIFF, kada je u pitanju kompresija, ne pruža prednost u odnosu na JPEG popularnost mu opada iako se zbog svoje vrlo velike otvorenosti može naći, i koristi se, na gotovo svim platformama.

Idealan je za razmjenu datoteka namijenjenih tisku između različitih platformi te je još uvijek de facto standard za takve primjene u tiskarskoj industriji.

Standardne ekstenzije koje se koriste su .TIF ili .TIFF.

20 Vrlo  je  čest nesporazum  i nerazumijevanje  razlike  formata  i metode kodiranja.  JPEG, MPEG, LZW  i sl. su algoritmi koji kodiraju podatke  tako da nastoje  smanjiti  količinu potrebnih podataka  (bitova). Niti  jedan od  tih  i drugih  kompresijskih metoda ne specificira format koji će se koristiti za pohranu podataka. Postoji više formata koji su popularni i koji se temelje na jednom ili više metoda kompresije kao što je npr. GIF (LZW) i JFIF (JPEG). 21 Aldus Corporation je 1994. godine kupila tvrtka Adobe Systems Incorporated. 

Page 79: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

78

PS, EPS, PDF PS (PostScript), EPS (Encapsulated PostScript) i PDF (Portable Document Format) imaju neke sličnosti, ali su bitno različiti i ne smiju se poistovjetiti. Postscript je programski jezik namijenjen reproduciranju stranica na neki uređaj, a najčešće je to printanje na printeru. Kao i svaki drugi programski jezik, PostScript ima naredbe kojima se kontrolira tok programa, kada će se i da li će se neka naredba izvršiti i sl. Osim toga PostScript jezikom može se definirati veličina papira, rezolucija i druge osobine printera. PostScript se razvija u razinama (engl. level). Trenutno je najnovija razina Level 3 PostScript.

Postscript je jezik kojeg je razvio Adobe i prvobitna namjena tog formata nije bila razmjena slika i grafika. Međutim, u Adobe-u su ubrzo shvatili da uz nekoliko modifikacija Postscript jezik može poslužiti i u tu svrhu, te je tako nastao EPS format. EPS je u osnovi Postscript ograničen na jednu sliku i dio naredbi.

PDF, kojeg je također razvio Adobe, temelji se na PostScript programskom jeziku, ali PDF nije programski jezik. To je format koji omogućava pohranjivanje slika i grafika na način da budu neovisne o rezoluciji, uređaju, operacijskom sustavu i softveru. PDF dokument može sadržavati više stranica. Svaka stranica u dokumentu može sadržavati bilo koju kombinaciju teksta, grafike i slika pri čemu se slike i tekst mogu na različit načine kodirati. Za razliku od PS file-a, PDF file se ne može direktno poslati na printer kako bi se isprintao. PDF file je redovito značajno manji od PS file jer se kod PDF koristi kompresija. BMP BMP (Bit Mapped Picture) je standardni grafički format za MS Windows. Temelji se ne RGB modelu boja. BMP je format koji kodira sliku bez gubitka kvalitete. Može koristiti i kompresiju (RLE). Podržava dubine boja od 1, 4, 8 i 24 bita. Ima relativno ograničenu primjenu.

Standardna ekstenzija koja se koristi je .BMP. PICT PICT je razvio Apple Computer 1984. godine i popularan je kod Macintosh računala gdje se koristi praktično u svakom programu koji ima veze s grafikom. Budući je dosta složen format, nije uvijek podržan kod drugih platformi. Podržava i objektno-orijentirano pohranjivanje slika (dakle pohranjivanje strukturirane grafike) i bit-mapirano pohranjivanje slika.

PICT podržava do 24 bita po pikselu. Originalno koristi RLE, a sada i JPEG kompresiju. Standardna ekstenzija koja se koristi je .PICT.

DXF DXF (Drawing eXchange Format) je vektorski format koji se koristi u Autodesk-ovom AutoCAD programu i danas je najčešće korišteni vektorski format. Osim standardnih 2D objekata (krivulje, tekst i sl.) DXF format podržava i 3D objekte.

Standardna ekstenzija koja se koristi je .DXF.

Page 80: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

79

10. OSNOVE VIDEA I TELEVIZIJE Koncept videa i televizije temelji se na vremenskoj rezoluciji ljudskog vizualnog sustava. Naime, ako dovoljno brzo izmjenjujemo slike, stvara se iluzija pokreta. Za stvaranje iluzije pokreta dovoljno je da brzina izmjene bude veća od 10 slika/sekundi. Ipak, s tako malom brzinom izmjene slika pojavljuje se treperenje, pa se u stvarnosti koriste veće brzine. Kod digitalnog videa se smatra da je kvaliteta dobra ako je brzina 30 slika/sekundi (to je tzv. full motion video). Primjerice, većina filmova snimanih za kino dvorane snima se brzinom od 24 slike/sekundi.

Za prenošenje kolor video signala potrebno je prenijeti tri primarne boje. Podsjetimo se, kod video signala najčešće je jedna primarna boja osvjetljenje (engl. luminance), a preostale dvije kroma (engl. chrominance). S obzirom na to kako se prenose primarne boje razlikujemo tri tipa kolor video signala:

• Komponentni video (engl. component video): svaka primarna boja se šalje kao posebni video kanal te ovakav pristup ima najbolju reprodukciju boja, ali i zahtijeva najveću pojasnu širinu i dobru sinkronizaciju između triju primarnih boja,

• Kompozitni video (engl. composite video): sve tri primarne boje (i osvjetljenje i kroma) su pomiješani u jedan val nosilac te su neminovne određene interferencije,

• S-video (engl. separate video): kompromis između komponentnog i kompozitnog videa jer se koriste dvije linije, jedna za osvjetljenje, a druga za združeni kroma signal (npr. kod S-VHS).

U nastavku će biti ukratko opisana analogna televizija i video, te potom i digitalna. Iako se

kompresijske tehnike koje će biti obrađene odnose na digitalni video, potrebno je spomenuti i analogni video jer je većina standarda digitalne televizije vezana uz analogne standarde. 10.1. ANALOGNA TELEVIZIJA I VIDEO Analogna televizija i video koriste isprepleteni (engl. interlace) mod za prikazivanje slike. U isprepletenom modu rada iscrtavaju se poluslike (najprije se iscrtaju parne linije pa potom neparne). Za razliku od toga, u neisprepletenom (progresivnom) modu rada iscrtavaju se cijele slike. Isprepleteni i progresivni mod rada shematski su prikazani na slici 10.1. Isprepleteni mod rada koristi se kod analogne televizije i videa, dok se kod digitalnih sustava najčešće koristi progresivni mod.

Očito je isprepleteni mod rada složeniji od progresivnog. Takav mod je prihvaćen u televizijskoj tehnici jer omogućava dvostruko smanjenje potrebne pojasne širine uz vrlo mali gubitak kvalitete. U digitalnoj tehnici to bi odgovaralo kompresija podataka. Tako npr. PAL televizijski sustav ima frekvenciju poluslika od 50Hz, što znači da se cijela slika promjeni 25 puta u sekundi. Zbog korištenja isprepletenog moda rada vizualni je efekt blizak onom koji bi imali u progresivnom modu rada s brzinom promjene od 50 slika u sekundi. Ipak, svugdje gdje pojasna širina nije tako bitna, npr. kod računalnih monitora, koristi se progresivni mod rada.

Page 81: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

80

Slika 10.1 Isprepleteni i progresivni mod rada

Analogni televizijski sustavi U svijetu se koriste tri analogna TV standarda (PAL, NTSC, SECAM) s ukupno 15 različitih varijacija. PAL sustav

PAL (Phase Alternating Line) sustav u upotrebi je, između ostaloga, u većem dijelu Europe i Kini. Koristi isprepleteni mod rada s 50 poluslika u sekundi (25 slika). Svaka slika ima 625 linija.

NTSC

NTSC (National Television Systems Committee) sustav u upotrebi je, između ostaloga, u SAD i Japanu. Koristi isprepleteni mod rada s 60 poluslika u sekundi (30 slika - zapravo točno 29.97). Svaka slika ima 525 linija.

SECAM

SECAM (Systeme Electronique Couleur Avec Memoire) sustav u upotrebi je, između ostaloga, u Francuskoj i Rusiji. Koristi isprepleteni mod rada s 50 poluslika u sekundi (25 slika). Svaka slika ima 625 linija.

Napomenimo da je maksimalni broj linija koje bi se mogle vidjeti (tzv. aktivne linije) bitno

manji od gore spomenutog broja linija. Primjerice kod PAL sustava teoretski broj aktivnih linija je 576. Ostatak se "potroši" na sinkronizaciju i povratak linija. Stvarni broj različitih linija (horizontalna rezolucija) je još manji te ovisi o konkretnim sustavima: primjerice VHS ima oko 240, prosječni TV signal oko 330, S-VHS oko 400, a miniDV oko 480 različitih linija. S obzirom da je pojasna širina rezervirana za kroma komponente uglavnom manja, to znači da je stvarna horizontalna rezolucija kroma komponenti još manja. Tipična maksimalna granica kod kompozitnog videa za kroma komponente je 120 linija.

U tablici 10.1 dane su prostorne karakteristike TV standarda i to za komponentu osvjetljenja. Važno je uočiti da je osnovna karakteristika analognih sustava pojasna širina, pa stvarni broj različitih linija (horizontalna rezolucija) i stvarni broj točaka po liniji (vertikalna rezolucija) ovisi prvenstveno o raspoloživoj pojasnoj širini.

Page 82: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

81

Sustav Broj linija Aktivne linije

Broj točaka po liniji

Pojasna širina video signala22

Omjer dužina/širina

PAL 625 576 768 4.2-6.0 MHz 4/3 NTSC 525 480 640 4.2 MHz 4/3 SECAM 625 576 768 5.0-6.0 MHz 4/3

Tablica 10.1 Prostorne karakteristike TV standarda (za komponentu osvjetljenja)

10.2. DIGITALNA TELEVIZIJA I VIDEO Zbog mnogobrojnih prednosti (direktni pristup, višestruko ponovno snimanje bez gubitka kvalitete, nema potrebe za sinkronizacijskim i povratnim impulsima, itd) digitalni video postupno zamjenjuje analogni. Slično se, iako nešto sporije, analogna televizija mijenja digitalnom. U tablici 10.2 dane su prostorne i vremenske karakteristike nekoliko tipičnih signala digitalne televizije i videa.

Razvitak digitalne televizije (DTV) odvija se već niz godina paralelno u SAD, Europi i Japanu. Trenutno, dakle, postoje tri glavne DTV standardizacijske skupine: u Europi to je DVB projekt (Digital Video Broadcasting) u okviru kojeg je razvijen niz standarda koje je standardizirao ETSI (European Telecommunication Standard Institute), u SAD to je ATSC organizacija (Advanced Television Systems Committee) dok su u Japanu prisutni ISDB standardi (Integrated Services Digital Broadcasting). Osim toga, na razvitku svog standarda radi i Kina, što je rezultiralo većim brojem različitih standarda za DTV koji se koriste u različitim dijelovima svijeta.

Sustav Broj linija Broj točaka po liniji

Omjer dužina/širina Okvira/sec23

HDTV 1080 1920 16/9 60i, 50i, 30p, 25p HDTV 720 1280 16/9 60i, 60p, 50i, 50p, 30p, 25p DVD 4:3 (PAL) 576 720 4/3 50i DVD 4:3 (NTSC) 480 720 4/3 60i SDTV (PAL, SECAM) 576 720 4/3 50i SDTV (NTSC) 480 640 4/3 60i

Tablica 10.2 Prostorne i vremenske karakteristike tipičnih digitalnih video signala

Gotovo svi digitalni video sustavi koriste komponentni video i poduzorkovanje kroma komponenti. Poduzorkovanjem se smanjuje horizontalna i/ili vertikalna rezolucija, u ovom slučaju kroma komponenti. Analogni video također ima manju rezoluciju kroma komponenti, s time da je kod analognog videa to realizirano na razini pojasne širine (osvjetljenje i kroma komponente imaju različitu pojasnu širinu). Za analogni signal to u stvarnosti obično znači da je broj linija za kroma 22 Ovisi o pojedinoj varijanti standarda. 23 Oznaka i odnosi se na isprepleteni mod rada, a oznaka p na progresivni mod rada.

Page 83: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

82

komponentu duplo manji nego za osvjetljenje, dok je broj točaka po liniji isti. Tipična poduzorkovanja, prikazana na slici 10.2 su:

4:4:4 - nema kroma poduzorkovanja, svaki piksel ima Y, Cr i Cb vrijednost 4:2:2 - horizontalno poduzorkovanje Cr i Cb s faktorom 2 4:1:1 - horizontalno poduzorkovanje s faktorom 4 4:2:0 - poduzorkovanje i horizontalno i vertikalno s faktorom 2; Teoretski, kroma piksel je

smješten između redova Poduzorkovanje se standardno koristi ne samo kod videa nego i kod slika. Tako se kod MPEG-a i JPEG-a uglavnom koristi 4:1:1 ili 4:2:0 poduzorkovanje, a kod digitalne televizije 4:2:2.

Slika 10.2 Poduzorkovanje (boja) 10.3. KARAKTERISTIKE RAZLIČITIH RAČUNALNIH VIDEO FORMATA Za usporedbu s analognim i digitalnim video signalima, u tablici 10.3 dane su prostorne karakteristike računalnih video formata. Na slici 10.3 ilustrirane su prostorne karakteristike nekoliko najznačajnijih video i računalnih formata.

Računalni video format Rezolucija (pikseli) Boje (biti)

Br. piksela u

slici

Kapacitet po slici

CGA – Color Graphics Adapter (1981.) 320×200 4 (2 bita) 64,000 16 KB

EGA – Enhanced Graphics Adapter (1984.) 640×350 16 (4 bita) 224,000 112 KB

VGA – Video Graphics Adapter (1987.) 640×480 256 (8 bita) 307,200 307.2 KB

88514/A Display Adapter Mode (1987.) 1024×768 256 (8 bita) 786,432 786.432 KB

Page 84: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

83

SVGA - Super VGA (1989.) 800×600 16 (4 bita) 480,000 240 KB XGA – Extended Graphics Array (a) (1990.) 640×480 65,000 (16 bita) 307,200 614.4 KB

XGA – Extended Graphics Array (b) 1024×768 256 (8 bita) 786,432 786.432 KB SXGA - Super XGA (1994.) 1280×1024 16.7 mil. (32 bita)24 1,310,720 5,24288 MB UXGA - Ultra XGA (1996.) 1600×1200 16.7 mil. (32 bita) 1,920,000 7.68 MB WUXGA Widescreen UXGA 1920×1200 16.7 mil. (32 bita) 2,304,000 9.216 MB QXGA - Quad XGA (2000.) 2048×1536 16.7 mil. (32 bita) 3,145,728 12.5829 MB

Tablica 10.3 Prostorne karakteristike tipičnih računalnih video formata

QXGA 2048x1536

HDTV 1920x1080

UXGA 1600x1200

SXGA 1280x1024

XGA 1024x768

VGA 640x480

SVGA 800x600

HDTV 1280x720

Slika 10.3 Prostorne karakteristike najznačajnijih video i računalnih video formata 10.4. PRAKTIČNA POTREBA ZA VIDEO KOMPRESIJOM Video, kao niz brzo mijenjajućih okvira (engl. frame), zahtijeva jako veliku količinu podataka. Promotrimo dva primjera.

Uzmimo da svaki okvir ima rezoluciju od 288 x 352 (288 linija i 352 piksela po liniji). To je rezolucija koja je nešto manja, ali usporediva sa standardnom TV kvalitetom, i poznata je kao CIF (Common Intermediate Format). Neka je svaka od tri primarne boje definirana s 8 bita po jednom pikselu, te neka je broj slika u sekundi jednak 25. Potreban brzina u bitima po sekunda jednaka je

sbit608256002538352288 =⋅⋅⋅⋅ što je preko 60 Mb/s. Za prosječnu sliku TV kvalitete potrebno je nešto više, oko 100 Mb/s. 24 Od 32 bita, 3x8=24 koriste se za tri komponente boja. Preostalih 8 bita je alpha kanal.

Page 85: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

84

Za drugi primjer uzmimo neka je video DVD kvalitete koji je definiran rezolucijom od 576 x 720. Uz iste pretpostavke kao i kod CIF formata trebalo bi

sbit2488320002538720576 =⋅⋅⋅⋅ što je skoro 250Mb/s.

Televizija visoke rezolucije (HDTV), digitalni video studijske kvalitete, a u budućnosti i neke druge usluge kao što je 3D video, imaju i značajno veće brzine.

Ako bismo željeli pohraniti jedan film od 120 minuta s videom DVD kvalitete na DVD medij (4.7 GB) trebali bi postići brzinu od 5 Mbita/s što znači kompresiju od 50 puta. Ako isti film želimo pohraniti na CD s 700MB trebali bi postići brzinu od 0.77 Mbita/s što je kompresija od 320 puta.

Iz svega ovoga očita je potreba da se video i TV signal značajno komprimira. Naime, kao što je kvaliteta analogne televizije ograničen pojasnom širinom, na isti način je ograničena i digitalna televizija. Sažimanje je takvo da se preko jednog analognog televizijskog kanala (oko 5MHz) obično prenosi 4-6 digitalnih televizijskih kanala usporedive, ili nešto veće kvalitete u odnosu na analognu televiziju. Stoga se digitalna televizija prenosi koristeći kompresijske metode o kojima će biti riječ u nastavku (MPEG-2, MPEG-4, H.264, …).

Page 86: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

85

11. KOMPRESIJA SLIKOVNIH SIGNALA 11.1. UVOD Podsjetimo se, kompresijske tehnike možemo podijeliti na:

• kompresiju s gubicima (engl. lossy), • kompresiju bez gubitaka (engl. lossless). Tipične kompresijske tehnike za slikovne i video signale prikazane su na slici 11.1. Slikovni i

video signal imaju, s percepcijskog stajališta, veliku redundanciju. To znači da ih je moguće značajno komprimirati i izgubiti dio informacije, a da se percepcijski to ne primijeti. Stoga su za komprimiranje slikovnih i video signala zanimljivije tehnike s gubicima i to posebno razne hibridne tehnike. Hibridne tehnike kombiniraju nekoliko pristupa kao što je diskretna kosinusna transformacija (DCT), kvantizacija, Huffmanovo kodiranje, previđanje i sl. Danas je najčešće korištena tehnika za kompresiju slikovnih signala JPEG, a za kompresiju video signala MPEG, H.261/H.263 i H.264.

Slika 11.1 Tipične kompresijske tehnike za slikovne i video signale 11.2. JPEG Iako postoji puno standarda za kompresiju slika, JPEG (Joint Photographic Expert Group) je danas daleko najpopularniji i najčešće korišteni. Službeni naziv, iz kojeg se najbolje vidi cilj standarda, je Digital compression and coding of continuous-tone still images. JPEG je standard postao 1992. godine

Page 87: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

86

(ITU-T Rec. T.8125), a rezultat je zajedničkog rada ISO (International Organization for Standardization) i CCITT (Consultative Committee for International Telephone and Telegraph)26.

Prihvaćanju JPEG standarda prethodile su godine istraživanja i razvijanja različitih algoritma, pristupa i ideja. Najbolji od njih prihvaćeni su i standardizirani kao JPEG. Osnovni ciljevi kod izrade JPEG standarda bili su slijedeći [Wallace 1991]:

1. Postići najveći mogući stupanj kompresije uz kvalitetu komprimirane slike koja je izvanredna ili barem vrlo dobra.

2. Napraviti algoritam koji može komprimirati bilo koju sliku s kontinuiranim tonovima (dakle sivu sliku i sliku u boji), bilo koji model boja i praktično bilo kakvu dimenziju slike.

3. Napraviti algoritam koji će se moći implementirati na većini softverskih i hardverskih platformi.

JPEG standard koristi adaptivno transformacijsko kodiranje temeljeno na diskretnoj kosinusnoj transformaciji (DCT – Discrete Cosine Transform). Transformacijsko kodiranje je pogodno za komprimiranje slika jer:

1. Sadržaj slika se većinom mijenja relativno sporo. To u frekvencijskom području znači da više informacija sadrže niže frekvencijske komponente.

2. Eksperimenti s ljudskim vizualnim sustavom pokazuju da je čovjeku vizualno manje važan dio informacije sadržan u visokim frekvencijama.

Oba razloga sugeriraju da se više frekvencijske komponente mogu kodirati s malo bita ili čak

potpuno odbaciti, a da se komprimirana i originalna slika vizualno ne razlikuju. JPEG standard definira četiri moda čiji je međusobni odnos prikazan na slici 11.2:

• sekvencijalni (osnovni) mod, • progresivni mod, • hijerarhijski mod, • mod bez gubitaka (engl. lossless).

Slika 11.2 JPEG modovi Najčešće se koristi sekvencijalni (osnovni) mod kojeg svaki JPEG koder mora podržavati

(ostali modovi su opcionalni). Stoga će detaljnije biti opisan sekvencijalni mod.

25 Veliki broj standarda u istom obliku je prihvaćen od više standardizacijskih organizacija. Tako je standard ITU-T Rec. T.81 kod ISO standardizacijske organizacije poznat pod brojem ISO/IEC IS 10918. 26 CCITT je 1993. promijenio ime u ITU-T (International Telecommunication Union - Telecommunications Standardization Sector).

Page 88: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

87

11.2.1. Sekvencijalni (osnovni) JPEG mod Sekvencijalni mod je (kao i progresivni i hijerarhijski) mod s gubitkom dijela informacije. Temelji se na slijedećim tehnikama:

• Diskretna kosinusna transformacija (DCT), • Kvantizacija, • ZigZag skeniranje, • DPCM na DC komponenti, • RLC na AC komponentama, • Entropijsko kodiranje.

Na slici 11.3 dana je shema JPEG kodera. JPEG dekoder ima iste elementa samo u obrnutom

redoslijedu. Napomenimo da većina JPEG datoteka ima kroma komponente koje su poduzorkovane i to najčešće 4:2:0.

DPCMKvantizacijaDCT

8x8

YCbCr, YIQ,...

f(i,j)

8x8

F(u,v) Fq(u,v)

8x8

ZigZagskeniranje ... RLC1x64

DC

AC

Entropijskokodiranje Podaci

ZaglavljeTablice

Kvantizacijska

tablicaTablica

kodiranja

Slika 11.3 Shema JPEG kodera

DCT – diskretna kosinusna transformacija DCT je transformacija koja iz prostornog područja prebacuje signal u frekvencijsko područje što je za slikovni signal 8x8 piksela prikazano na slici 11.4.

8x8

f(i,j)

8x8

F(u,v)

DCT

Slika 11.4 DCT transformacija slikovnog signala od 8x8 piksela

DCT se za dvodimenzionalni signal 8x8, gdje su vrijednosti piksela ( )j,if u intervalu ( )128,127− , računa prema slijedećem izrazu:

Page 89: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

88

( ) ( ) ( ) ( ) ( ) ( )

( )⎪⎩

⎪⎨⎧ =μ

=μΔ

⋅π⋅⋅+

⋅π⋅⋅+

⋅Δ⋅Δ

= ∑∑= =

ostaleza10za21

j,if16

v1j2cos16

u1i2cos4

vuv,uF7

0i

7

0j

Inverzna DCT (IDCT) računa se kao

( ) ( ) ( ) ( ) ( ) ( )

( )⎪⎩

⎪⎨⎧ =μ

=μΔ

⋅π⋅⋅+

⋅π⋅⋅+

Δ⋅Δ⋅= ∑∑= =

ostaleza10za21

v,uF16

v1j2cos16

u1i2cosvu41j,if

7

0u

7

0v

DCT osnovne matrice za dimenziju 8x8 prikazane su na slici 11.5. Osnovne matrice pokazuju

kakvo je značenje pojedinih DCT koeficijenata. Tako npr. ako je koeficijent (0,1) bitno veći od drugih koeficijenata, to znači da se vrijednost piksela slike mijenjaju od bijelog prema crnom ako se pomičemo od lijevo prema desno.

Slika 11.5 DCT osnovne matrice

Dvodimenizonalna DCT (2D DCT) može se lakše i brže izračunati kao 2 puta jednodimenzionalna DCT (1D DCT):

Page 90: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

89

( ) ( ) ( ) ( )

( ) ( ) ( ) ( )

( )⎪⎩

⎪⎨⎧ =μ

=μΔ

⋅π⋅⋅+

⋅Δ⋅=

⋅π⋅⋅+

⋅Δ⋅=

=

=

ostaleza10za21

j,if16

v1j2cosv21v,iG

v,iG16

u1i2cosu21v,uF

7

0j

7

0i

Kvantiziranje DCT je reverzibilna transformacija pa se, ako koeficijente izračunamo s dovoljnom preciznošću, nakon primjene IDCT dobije slika koja je potpuno jednaka početnoj (originalnoj). Teoretski gledano, DCT je transformacija bez gubitka dijela informacije (engl. lossless). Kvantizacija (odnosno greška kvantizacije) je razlog zbog kojeg JPEG kompresija jeste kompresija s gubicima (engl. lossy). Kvantizacijom se naime smanjuje broj bita potreban za prijenos koeficijenta.

JPEG standard za kvantiziranje koristi tablicu/tablice s 64 vrijednosti. Svaka vrijednost odgovara jednom od 64 DCT koeficijenta. To omogućava da se svaki koeficijent kvantizira posebno, čime se može uzeti u obzir relativna važnost svakog koeficijenta. Naime, ljudski vizualni sustav je najosjetljivije na niske frekvencije (gornji lijevi kut u matrici 8x8 DCT koeficijenata), a manje osjetljiv na visoke frekvencije (donji desni kut). Stoga i vrijednosti u kvantizacijskoj tablici (tablica 11.1) generalno rastu od gore lijevo prema dolje desno. JPEG standard dozvoljava definiranje bilo kakve kvantizacijske tablice (bitno je samo da su tablice u koderu i dekoderu iste). Ipak JPEG standard preporuča korištenje nekih konkretnih vrijednosti jer u prosjeku rezultiraju subjektivno najkvalitetnijim komprimiranim slikama. U tablici 11.1 dane su vrijednosti koje preporuča JPEG standard [Pennebaker 1993] i koje moraju biti sadržane u svakom JPEG koderu i dekoderu. Ako se koriste nestandardne kvantizacijske tablice potrebno ih je prenijeti zajedno s podacima.

Iako JPEG standard dozvoljava korištenje bilo kojeg modela boja, u pravilu se koriste modeli boja koji imaju komponentu osvjetljenja i dvije komponente krome. To su modeli boja YUV, YCbCr, YPbPr i sl. Tako se može iskoristi činjenica da je čovjek manje osjetljiv na promjene u komponentama krome nego u komponenti osvjetljenja. Stoga se komponente krome u pravilu kvantiziraju grublje (veći korak kvantizacije) nego komponenta osvjetljenja što se vidi u tablici 11.1.

Napomenimo da većina JPEG datoteka ima komponente krome koje su poduzorkovane. To znači da se za svaki piksel prenosi komponenta osvjetljenja, a da se za komponentu krome prenosi najčešće jedna vrijednost za blok od 2x2 piksela i to kao srednja vrijednost ta četiri piksela. Iz toga proizlazi da se obradom dva bloka krome (za dvije komponente) od 8x8 vrijednosti zapravo obradi blok od 16x16 piksela. Za to vrijeme je potrebno obraditi 4 bloka osvjetljenja od 8x8 vrijednosti jer to također odgovara bloku od 16x16 piksela.

16 11 10 16 24 40 51 61 17 18 24 47 99 99 99 99 12 12 14 19 26 58 60 55 18 21 26 66 99 99 99 99 14 13 16 24 40 57 69 56 24 26 56 99 99 99 99 99 14 17 22 29 51 87 80 62 47 66 99 99 99 99 99 99 18 22 37 56 68 109 103 77 99 99 99 99 99 99 99 99 24 35 55 64 81 104 113 92 99 99 99 99 99 99 99 99 49 64 78 87 103 121 120 101 99 99 99 99 99 99 99 99 72 92 95 98 112 100 103 99 99 99 99 99 99 99 99 99

Kvantizacijska tablica osvjetljenja q(u,v) Kvantizacijska tablica krome q(u,v)

Tablica 11.1 Kvantizacijske tablice koje preporuča JPEG standard

Page 91: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

90

Kvantizirana vrijednost DCT koeficijenta ( )v,uF′ dobije se koristeći kvantizacijske vrijednosti ( )v,uq kao:

( ) ( ) ( )( )v,uqv,uFroundv,uF =′ To je dakle neravnomjerna kvantizacija, za razliku od ravnomjerne kod koje bi svaki DCT koeficijent ( )v,uF dijelili s istom konstantom.

Vrijednosti u kvantizacijskoj tablici mogu se skalirati čime se definira faktor kvalitete. U tom smislu vrijednosti u tablici 11.1 nisu važne samo u apsolutnom iznosu, nego i u relativnom. Skaliranjem vrijednosti u kvantizacijskoj tablici može se mijenjati (kontrolirati) stupanj kompresije, odnosno kvaliteta komprimirane slike. Primjer: Ako imamo za koeficijent osvjetljenja ( ) 7.391,0F = slijedi da je kvatizirani DCT koeficijent jednak

( ) ( ) ( ) 46091.3round117.39round1,0F ===′ Prilikom rekonstrukcije slike IDCT će koristiti koeficijent koji je jednak

( ) ( ) 441141,0q1,0F =⋅=⋅′ ZigZag skeniranje Kvantizirani DCT koeficijenti imaju vrijednosti koje su vrlo često nula, posebno u donjem desnom dijelu matrice. Stoga se ZigZag skeniranjem mapira 8x8 vektor DCT koeficijenata u 1x64 vektor i to na način da najmanje važni koeficijenti (više frekvencije, uglavnom nule) budu na kraju vektora, a najvažniji koeficijenti (niže frekvencije) na početku vektora. Na tako dobiveni vektor može se uspješno primijeniti RLC kodiranje. ZigZag skeniranje prikazano je na slici 11.6.

8x8

. . .

1x64

Slika 11.6 ZigZag skeniranje Diferencijalna pulsno kodirana modulacija istosmjerne komponente Zbog bolje efikasnost istosmjerna (DC) i izmjenične (AC) komponente se kodiraju različito. Iz slike 11.5 vidi se da je osnovna matrica koja odgovara DC koeficijentu konstanta. Stoga je DC koeficijent jednak srednjoj vrijednosti svih 8x8 piksela pomnoženoj s nekom konstantom.

Srednje vrijednosti susjednih blokova 8x8 piksela u pravilu se ne razlikuju puno, pa se DC komponenta mijenja sporo od bloka do bloka. Osim toga DC komponenta je uglavnom relativno velika. Stoga ima smisla kod DC komponente kodirati samo razliku u odnosu na DC komponentu

Page 92: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

91

prethodnog 8x8 bloka pa se koristi diferencijalna pulsno kodirana modulacija (DPCM). To znači da se kvantizira razlika susjednih vrijednosti prema

Razlika = DCi-DCi-1 Run Length Code (RLC) izmjeničnih komponenti Vektor koeficijenata 1x64 ima u puno nula, i to posebno za visoke frekvencije, dakle na kraju vektora. Stoga ima smisla za izmjenične (AC) komponente koristiti RLC kodiranje, pa su AC komponente kodirane u obliku

(PRESKOČI/IZNOS KOMPONENTE). gdje se preskoči odnosi na broj nula koji prethode komponenti različitoj od nule. Entropijsko kodiranje JPEG osnovni mod koristi Huffmanovo kodiranje kao metodu entropijskog kodiranja koeficijenata. Vrijednost DCT koeficijenata može biti relativno velika pa je Huffmanovo kodiranje za tako veliki alfabet nepraktično. JPEG standard taj problem rješava podjelom mogućih vrijednosti (odnosno razlika za DC koeficijent) na kategorije. Podjela mogućih vrijednost na kategorije dana je u tablici 11.2.

Kategorija Moguće vrijednosti Mogući kodovi

0 0 - 1 -1 1 0, 1 2 -3 -2 2 3 00, 01, 10, 11 3 -7 ... -4 4 ... 7 000, …, 011, 100, …, 111 4 -15 ... -8 8 ... 15 0000, …, 0001, 1000, …, 1111 5 -31 ... -16 16 ... 31 … 6 -63 ... -32 32 ... 63 … 7 -127 ... -64 64 ... 127 … 8 -255 ... -128 128 ... 255 … 9 -511 ... -256 256 ... 511 …

10 -1023 ... -512 512 ... 1023 … 11 -2047 ... -1024 1024 ... 2047 … 12 -4095 ... -2048 2048 ... 4095 … 13 -8191 ... -4096 4096 ... 8191 … 14 -16383 ... -8192 8192 ... 16383 … 15 -32767 ... -16384 16384 ... 32767 … 16 32768 -

Tablica 11.2 Podjela mogućih vrijednost na kategorije

KATEGORIJA iz tablice 11.2 se kodira Huffmanovim kodom koji je dan u tablici 11.3.

Primjerice, Kada se kodira DC koeficijent (razlika) potrebno je kodirati iznos komponente. To znači da treba poslati Huffmanov kod odgovarajuće kategorije iza kojeg mora doći broj koji kaže o kojoj se

Page 93: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

92

vrijednosti unutar kategorije radi. Dakle kodirana razlika DC koeficijenta ima oblik (KATEGORIJA/VRIJEDNOST).

Kategorija Kodna riječ

0 00 1 010 2 011 3 100 4 101 5 110 6 1110 7 11110 8 111110 9 1111110 10 11111110 11 111111110

Tablica 11.3 Hufmanova kodne tablice za kodiranje KATEGORIJE kod DC koeficijenta

Kod AC koeficijenata stvar je malo drugačija jer prenosimo informaciju oblika (PRESKOČI/IZNOS KOMPONENTE) gdje se preskoči odnosi na broj nula koje prethode danoj komponenti. Iznos komponente se kodira na isti način kao i razlika kod DC komponente, pa kodirane AC komponente imaju oblik (PRESKOČI/KATEGORIJA/VRIJEDNOST).

PRESKOČI/KATEGORIJA kodira se Huffmanovim kodom. U tablici 11.4 dan je dio Huffmanove kodne tablice za kodiranje PRESKOČI/KATEGORIJA. Huffmanova tablica može biti bilo kakva, ali ako nije standardna onda se mora prenijeti u zaglavlju JPEG datoteke.

klasa kodna riječ klasa kodna riječ klasa kodna riječ

0/0 (EOB) 1010 . . . 16/0 (ZRL) 11111111001 0/1 00 1/1 1100 . . . 16/1 1111111111110101 0/2 01 1/2 11011 . . . 16/2 1111111111110110 0/3 100 1/3 1111001 . . . 16/3 1111111111110111 0/4 1011 1/4 111110110 . . . 16/4 1111111111111000 0/5 11010 1/5 11111110110 . . . 16/5 1111111111111001 . . .

. . . . . .

. . . .. .

. . .

Tablica 11.4 Dio Hufmanove kodne tablice za kodiranje PRESKOČI/KATEGORIJA

EOB (end-of-block) kod se šalje odmah iza koda zadnjeg koeficijenta različitog od nule u ZigZag matrici. ZRL kod se upotrebljava kada je broj uzastopnih nula u ZigZag scanu veći od 15 tako da ZRL predstavlja 16 uzastopnih nula. Primjerice 20 uzastopnih nula iz kojih je koeficijent iznosa -5 će se kodirati kao

(ZRL) (PRESKOČI/KATEGORIJA 4/3) (VRIJEDNOST -5)

Page 94: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

93

Primjer: Neka su nakon DCT transformacije i kvantizacije dobiveni slijedeći DCT koeficijenti:

48 12 0 0 0 0 0 0 -10 8 0 0 0 0 0 0 2 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

Ako pretpostavimo da je vrijednost DC koeficijenta u prethodnom bloku piksela bila 40,

slijedi da je razlika 8 (48-40). Ako to uzmemo u obzir, te napravimo ZigZag skeniranje dobivamo matricu s vrijednostima

8, 12, -10, 2, 8, 0, 0, ..., 0. Prva vrijednost (8) odnosi se na razliku DC koeficijenata. Kodiramo je tako da u tablici 11.2

pogledamo kojoj kategoriji taj broj pripada (a to je kategorija 4) te potom u tablici 11.3 pogledamo koji je Huffmanov kod za tu kategoriju (a to je 101). Nakon toga iz tablice 11.2 pogledamo koji je kod broja 8 (a to je 1000, koji kaže da je to peta vrijednost u danoj kategoriji). Slijedi da je DC koeficijent (razlika iznosa 8) kodiran s 101 1000.

Prvi AC koeficijent (broj 12) pripada kategoriji 4 i nema niti jednu nulu ispred sebe pa ga kodiramo s Huffmanovim kodom za klasu (0/4) što je prema tablici 11.4 jednako 1011. Nakon toga, prema tablici 11.2, slijede bitovi 1100 koji kažu da se radi o baš o broju 12 (trinaesti element) unutar dane kategorije. Stoga se prvi AC koeficijent kodira kao 1011 1100.

Drugi AC koeficijent (broj -10) također kodiramo Huffmanovim kodom za (0/4) ali ovaj put s drugim kodom za vrijednost. Ukupni kod za drugi AC koeficijent je 1011 0101. Slijedeći istu logiku kodiramo 2 kao 01 10 (klasa 0/2 + vrijednost 2), te 8 kao 1011 1000 (klasa 0/4 + vrijednost 8).

Kako je koeficijent s vrijednosti 8 zadnji koeficijent različit od nule, nakon njega šaljemo Huffmanov kod za EOB, tj. 1010, čime je kodirano svih preostalih 59 nula. Slijedi da je ukupan kod za svih 64 vrijednosti:

1011000 10111100 10110101 0110 10111000 1010. 11.2.2. Progresivni mod Progresivni mod prikazuje nisko kvalitetnu sliku i onda je sukcesivno poboljšava. Dva su načina da se to postigne:

1. Spektralna selekcija – Pošalji najprije DC komponentu i nekoliko prvih AC komponenti. Potom šalji ostale AC komponente.

2. Sukcesivna aproksimacija – Pošalji za sve koeficijente samo najznačajnije bite (MSB) a onda postupno šalji i ostale bite sve do najmanje značajnog bita (LSB) – u praksi se šalju kvantizirani koeficijenti i onda razlika tako kvantiziranih koeficijenata i koeficijenata s finijim korakom kvantizacije.

Page 95: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

94

11.2.3. Hijerarhijski mod Hijerarhijski mod je dobar za gledanje slika na zaslonima s malom rezolucijom. Sastoji se od slijedećih koraka:

1. Poduzorkuj sliku s faktorom 2 i to svaku dimenziju (npr. od 640x480 dobij 320x240). 2. Kodiraj manju sliku koristeći jedan od tri ostala moda (progresivni, sekvencijalni, bez

gubitaka). 3. Dekodiraj i povećaj rezoluciju (naduzorkovanje) kodirane slike. 4. Kodiraj razliku između naduzorkovane slike i originalne koristeći progresivni, sekvencijalni

ili mod bez gubitaka. 11.2.4. Mod bez gubitaka Mod bez gubitaka (engl. lossless) je poseban slučaj JPEG gdje nema gubitka u kvaliteti. Mod bez gubitaka ne koristi DCT nego prediktivno kodiranje. Kombiniraju se vrijednosti do 3 susjedna piksela kako bi se predvidjela vrijednost trenutnog piksela. Kodira se (prenosi) samo razlika u odnosu na stvarnu vrijednost, a samo se prvi piksel prenosi kao stvarna vrijednost. Razlika ima puno manju dinamiku od originala što znači da za kodiranje razlike treba manje bita. Na slici 11.7 ilustrirana je dinamika originalne slike i slike razlike pri čemu je slika razlike dobivena najjednostavnijim prediktorom po kojem je trenutni piksel jednak prethodnom (X=A).

Slika 11.7 Dinamika originalne slike i razlike (X=A)

JPEG standardom za mod bez gubitaka definirano je sedam različitih mogućih prediktora (tablica 11.5). Relativni odnos piksela A, B, C i X prikazan je na slici 11.8. Prvi redak i stupac slike mogu koristiti samo 1D predviđanje.

A XC B

Slika 11.8 Relativni odnos piksela A, B, C i X

Page 96: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

95

Prediktor Metoda

1 A 2 B 3 C 4 A + B - C 5 A + (B - C) / 2 6 B + (A - C) / 2 7 (A + B) / 2

Tablica 11.5 Mogući prediktori moda bez gubitaka

Relativno loša kvaliteta moda bez gubitaka jedna je od najslabijih dijelova JPEG standarda. Stoga je razvijen JPEG-LS standard (ITU-T Rec. T.87) koji postiže nešto bolju kompresiju u modu bez gubitaka. 11.2.5. JPEG tok bitova (Bitstream) JPEG tok bitova (engl. bitstream) temelji se na jedinicama koje se nazivaju: okvir (engl. frame), scan, segment (engl. segment) i blok (engl. block). Njihov međusobni odnos prikazan je na slici 11.9. Jedan od najčešće korištenih formata koji implementiraju JPEG standard je JFIF. JFIF koristi isključivo YCbCr model boja za slike u boji odnosno Y komponentu za sive slike. Osim toga, JFIF format definira markere i sve ono što nije definirano JPEG standardom. Općenito je JPEG standard dosta općenit jer dozvoljava različite modele boja (ne samo YCbCr), različite kvantizacijske tablice i sl.

Start-of-Image End-of-ImageFrame

Header ScanScan ...Tables, ...

Header Segment RestartTables, ... Segment Restart ...

Block ... BlockBlock

Slika 11.9 JPEG tok bitova

Izraz okvir (engl. frame) koristi se za sliku. Scan je jedan prolazak preko piksela okvira (npr. jedna komponenta boje). Segment je skupina blokova, dok je blok skupina od 8x8 piksela. Zaglavlje okvira pored ostalog sadrži:

rezoluciju slike,

Page 97: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

96

dimenziju slike (širina, visina), broj komponenti, horizontalni/vertikalni faktor poduzorkovanja za svaku komponentu, kvantizacijsku tablicu za svaku komponentu.

Zaglavlje scan-a pored ostalog sadrži;

broj komponenti u scan-u. Huffmanovu tablica (za svaku komponentu).

Ostalo (može se pojaviti između zaglavlja):

kvantizacijska tablica, Huffmanova tablica, tablica aritmetičkog kodiranja, komentari.

11.2.6. JPEG2000 U JPEG standardu implementirana su znanja od prije 15-tak godina. Kako je u međuvremenu računalna tehnologija značajno napredovala, nastavljen je rad na novim standardima za sažimanje slika. Rezultat toga je standard JPEG2000, a glavna promjena u odnosu na standardni JPEG je što je wavelet zamijenio DCT kao tehniku za transformaciju što rezultira nešto boljim sažimanjem (do 20%). Osim toga JPEG2000 obuhvaća i razne druge aspekte, a ne samo sažimanje. Temeljni dio JPEG2000 standardiziran je pod brojem ITU-T Rec. T.800. Između ostalog JPEG2000 podržava:

kodiranje na niskim brzinama, kompresiju bez gubitaka i kompresiju s gubicima u jednom toku bitova (engl. bitstream), prijenos u kanalima s velikim šumom, primjenu na sive slike i crno-bijele slike, prirodne slike i računalno generirane slike, podršku za MPEG-4, opisivanje temeljeno na sadržaju (engl. content-based description).

Page 98: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

97

12. KONCEPT KOMPRESIJE VIDEO SIGNALA 12.1. VIDEO KODER/DEKODER Kompresija signala podrazumijeva uklanjanje redundancije. Kako smo već vidjeli, uklanjanje samo statističke redundancije (kompresija bez gubitaka) nije dovoljno dobro za video signale. Stoga se za kompresiju video signala koristi uklanjanje subjektivne redundancije (kompresija s gubicima).

Slika 12.1 Vremenska i prostorna redundancija video signala

Većina video kodera koristi uklanjanje vremenske (engl. temporal) i prostorne (engl. spatial) redundancije (slika 12.1). Uklanjanje vremenske redundancije temelji se na činjenici da su susjedni okviri visoko korelirani, posebno ako je broj okvira u sekundi velik. U prostornoj domeni, redundancija je sadržana u visokoj korelaciji susjednih piksela jer susjedni pikseli obično imaju slične vrijednosti. Nakon uklanjanja vremenske i prostorne redundancije, ostatak se entropijski kodira. Stoga se video koder sastoji od tri temeljna funkcionalna dijela (slika 12.2):

• model vremena, • model prostora, • entropijski koder.

Slika 12.2 Blok dijagram video kodera

Page 99: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

98

Ulaz u model vremena (engl. temporal model) je nekomprimirani video. Model vremena smanjuje vremensku redundanciju koristeći sličnost između susjednih video okvira i to najčešće tako da predvidi (procjeni) trenutni okvir. Predviđanje s može napraviti na temelju jednog ili više prošlih i/ili budućih okvira. Najjednostavniji način predviđanja (procjene) je pretpostaviti da je trenutni okvir jednak prethodnom. Predviđanje se može poboljšati koristeći složeniji algoritam, odnosno koristeći neku kombinaciju okvira (primjerice da piksele predvidimo kao srednju vrijednost trenutnog i budućeg okvira). Osim toga predviđanje se može poboljšati i kompenzirajući razliku između okvira (kompenzacija pokreta). Stoga su izlazi iz vremenskog modela rezidual i set parametara. Parametri su najčešće upravo vektori pokreta. Rezidual je okvir čije su vrijednosti jednake razlici predviđenog i stvarnog okvira.

Rezidual je ulaz u model prostora koji ima za cilj eliminirati prostornu redundanciju sadržanu u činjenici da su susjedni pikseli slični. To se najčešće radi tako da se rezidual transformira te se potom tako dobiveni koeficijenti kvantiziraju. Dakle, model vremena sažima slike na istom načelu (ali obično malo pojednostavljeno) kao i bilo koji drugi koder slika (npr. JPEG). Izlaz iz modela vremena su kvantizirani koeficijenti. Kako se ne bi propagirala greška procjene, povremeno se okvir (ili dio okvira) prenese bez korištenja kompenzacije pokreta, dakle kao statična slika.

Koeficijenti i vektori pokreta entropijski se kodiraju kako bi se eliminirala eventualna preostala statistička redundancija pa se tu radi o kodiranju bez gubitaka.

Video dekoder radi suprotne operacije. Najprije se niz bitova entropijski dekodira te se na temelju koeficijenata rekonstruira rezidual. Potom se iz vektora pokreta te jednog ili više prethodno dekodiranih okvira, rekonstruira procjena trenutnog okvira. Sami trenutni okvir dobije se dodavanjem reziduala na tako procijenjeni okvir. 12.2. MODEL VREMENA 12.2.1. Korištenje sličnosti susjednih okvira Kao što smo već rekli, najjednostavnija metoda predviđanja je korištenje prethodnog okvira kao prediktora za trenutni okvir. Na slici 12.3 prikazana su dva uzastopna okvira iz video sekvence. Okvir 1 se koristi kao prediktor za okvir 2. Na slici 12.4 je prikazan rezidual koji se dobije oduzimajući prediktor (okvir 1) od trenutnog okvira (okvir 2). Razlika je normalizirana tako da sredina sive boje predstavlja razliku nula, dok svjetlije odnosno tamnije nijanse sive boje odgovaraju pozitivnim odnosno negativnim razlikama. Iz slike 12.4 može se uočiti relativno puno tamnijih i svjetlijih područja što znači da je u rezidualu još uvijek preostalo dosta energije, a to znači da je preostalo dosta informacije koju treba sažimati u modelu prostora.

Energija u rezidualu je preostala zbog razlike između susjednih okvira. Većina preostale energije posljedica je pokreta, bilo kamere bilo samog objekta. Očito je da se bolje predviđanje može postići ako kompenziramo pokrete (engl. motion compensation). Općenito, razlike između susjednih okvira mogu se javiti uslijed:

• pokreta objekata (krutih objekata kao što je automobil ili objekata s promjenjivim oblikom kao što su prsti na ruci),

• pokreta kamere (pomicanje, zumiranje i sl.), • otkrivanja objekata (primjerice dio pozadine koji se pomicanjem objekta otkrije), • promjena osvjetljenja.

Page 100: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

99

S izuzetkom otkrivanja objekta i promjene osvjetljenja, te razlike odgovaraju stvarnom pomicanju piksela. Stoga je moguće procijeniti/izračunati trajektoriju svakog piksela. Trajektorije svih piksela tvore optički tok (engl. optical flow). Na slici 12.5 prikazan je optički tok za okvire prikazane na slici 12.3. Radi preglednosti prikazan je optički tok samo za svako drugi piksel. Kad bi prenijeli cijeli optički tok, rezidual bi bio vrlo mali pa bi i broj bita za njegovo prenošenje bio mali ili nula.

Slika 12.3 Okvir 1 (lijevo) i okvir 2 (desno)

Slika 12.4 Razlika okvira 2 i okvira 1 12.2.2. Procjena pokreta i kompenzacija pokreta temeljena na blokovima

Kompenziranje pokreta na temelju optičkog toka nije praktično jer je računski vrlo zahtjevno. Osim toga, potrebno ja za svaki piksel poslati njegov vektor optičkog toka što rezultira velikom količinom podataka koju je potrebno prenijeti. Time se gubi prednost malog reziduala. Općenito je kod kodiranja videa potrebno naći kompromis između broja bita potrebnih za kompenzaciju pokreta i broja bita potrebnih za rezidual kako bi njihova suma bila što je moguće manja.

U praksi se kompenzacija pokreta radi na blokovima piksela. Najčešće je osnovna jedinica za kompenzaciju pokreta blok veličine 16x16 piksela koji se naziva makroblok (engl. macroblock). Za video poduzorkovan 4:2:0 s modelom boja YCbCr, makroblok se sastoji od 256 uzoraka sive boje

Page 101: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

100

(organizirane kao 4 bloka od 8x8 piksela), 64 uzorka za komponentu Cb (jedan blok od 8x8 piksela) i 64 uzorka za komponentu Cr (jedan blok od 8x8 piksela). Tako jedan makroblok ima ukupno 6 blokova od 8x8 piksela što je prikazano na slici 12.6.

Slika 12.5 Optički tok

osvjetljenje kroma

Slika 12.6 Makroblok (za poduzorkovanje 4:2:0)

Da bi mogli kompenzirati pokret najprije je potrebno napraviti procjenu pokreta (engl. motion estimation). Procijeniti pokret makrobloka znači pronaći blok od 16x16 piksela u referentnom okviru koji je najsličniji trenutnom makrobloku. Referentni okvir je prethodno kodirani okvir koji može biti ispred ili iza trenutnog okvira. Da bi se dobilo na vremenu obično se ne pretražuje cijeli referentni okvir nego samo okolina makrobloka što je ilustrirano na slici 12.7. Postoje razni načini za definiranje sličnosti makroblokova. Najjednostavnija mjera sličnosti je srednja apsolutna distorzija (Mean Apsolute Distortion - MAD) (slika 12.8) pri čemu se traži makroblok koji minimizira MAD.

Page 102: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

101

Kada smo pronašli najsličniji makroblok, kompenzacija pokreta se vrši tako da se taj najsličniji makroblok oduzme od trenutnog makrobloka čime se dobije rezidualni makroblok (osvjetljenje i kroma). Rezidualni makroblok se kodira i zajedno s vektorom pokreta (engl. motion vector) šalje dekoderu.

Slika 12.7 Procjena pokreta (za prethodni okvir kao referentni)

[ ] ( ) ( )[ ]∑∑= =

− ++++−++15

0j

15

0iyyxx1nyxn jwb16,iwb16framejb16,ib16frame

2561

Slika 12.8 Mjera sličnosti makroblokova

Referentni okvir može biti neki od prethodnih okvira, neki od budućih okvira ili kombinacija prošlih i budućih okvira. Ako se kao referentni okvir koristi neki od budućih okvira, on mora biti kodiran prije trenutnog okvira, pa se u tom slučaju kodiranje ne radi po stvarnom vremenskom slijedu okvira.

Kada je između trenutnog i referentnog okvira značajna razlika (primjerice promjena scene) tada je obično efikasnije makroblok kodirati bez kompenzacije pokreta. Tako koder može birati između intra moda (kodiranje bez vektora pokreta) i inter moda (kodiranje s kompenzacijom pokreta) i to za svaki makroblok posebno. 12.2.3. Promjena veličine bloka za procjenu i kompenzaciju pokreta Realni objekti rijetko odgovaraju dimenzijama 16x16. Stoga može biti efikasnije koristiti promjenjivu veličinu bloka za procjenu pokreta i kompenzaciju pokreta. Na slici 12.9 prikazana su dva uzastopna okvira video sekvence. Rezidual, bez kompenzacije pokreta, dobiven oduzimanjem okvira 1 od okvira

Page 103: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

102

2 prikazan je na slici. 12.10. Na slici 12.11 prikazan je rezidual kada se koristi vektor pokreta i to za blokove veličine 16x16, 8x8 i 4x4.

Očito je da se smanjivanjem veličine bloka, smanjuje i energija u rezidualu. Međutim, smanjivanjem veličine bloka povećava se složenost (treba više traženja) ali se i povećava broj bita potreban za prijenos vektora pokreta. Time se poništi prednost dobivena zbog manje energije u rezidualu (a to znači i manje bita za prijenos). Rješenje je da se koristi promjenjiva veličina bloka, u ovisnosti o karakteristikama okvira. Na ravnim, jednoličnim dijelovima, blok može biti velik, dok na dijelovima s puno detalja i složenim pokretima, blok može biti mali. Napomenimo da blok ne mora biti kvadrat već može biti i pravokutnik, primjerice 8x4.

Idealno bi bilo da blok odgovara stvarnom objektu, dakle da ne mora nužno biti ni pravokutnik. To bi bila kompenzacija pokreta temeljena na područjima (engl. region based motion compensation), a ne na blokovima. Jedini standard koji predviđa kompenzaciju pokreta i općenito kodiranje temeljeno na područjima (objektima) je MPEG-4.

Slika 12.9 Okvir 1 (lijevo) i okvir 2 (desno)

Slika 12.10 Rezidual (bez kompenzacije pokreta)

Page 104: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

103

rezidual za blok 16x16 rezidual za blok 8x8

rezidual za blok 4x4

Slika 12.11 Rezidual za blok 16x16 (lijevo), za blok 8x8 (desno) i blok 4x4 (dolje)

12.2.4. Kompenzacija pokreta za manje od jednog piksela U nekim slučajevima predviđanje pokreta je bolje ako koristimo interpolirane uzorke, a ne same uzorke referentnog okvira pa u tom slučaju govorimo o procjeni i kompenzaciji pokreta za manje od jednog piksela (engl. sub-pixel motion estimation and compensation). Koristi se procjena i kompenzacija pokreta od pola piksela27 (engl. half-pixel) i četvrtine piksela (engl. quarter-pixel). Uočite da, iako se koristi izraz piksel, najčešće se procjena vrši samo na komponentama osvjetljenja.

U pravilu je postupak slijedeći. Najprije koder pronađe najbolji vektor pokreta za cijeli piksel (križići na slici 12.12), dakle vektor pokreta koji minimizira energiju u rezidualu. Potom se provjere sve pozicije pomaka od pola piksela koje su u okolini tog izračunatog vektora pokreta (kružići na slici 12.12) i odabere se onaj koji minimizira energiju u rezidualu. Ako treba, postupak se ponovi i za pomaka od četvrtine piksela, opet u okolini prethodno izračunatog najboljeg pomaka od pola piksela.

Finija interpolacija rezultira manjom energijom u rezidualu. Na slici 12.13 prikazan je rezidual za blok od 4x4 piksela i to za slučaj kompenzacije pokreta od pola piksela i četvrtine piksela. U praksi kompenzacija od pola piksela rezultira značajnim dobitkom u odnosu na kompenzaciju cijelog piksela. 27 Uočite da „pola piksela“ i „četvrtina piksela“ zapravo ne postoje na slici. Radi se o tome da se vrijednosti „pola piksela“ i „četvrtina piksela“, u slučaju potrebe, interpoliraju na temelju susjednih, stvarnih piksela.

Page 105: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

104

Kompenzacija od četvrtine piksela više ne donosi tako značajan dobitak, kod kompenzacije od osmine piksela dobitak je još manji, itd.

Slika 12.12 Kompenzacija pokreta za manje od jednog piksela

Korištenje složenije sheme za procjenu i kompenzaciju pokreta (primjerice blok od 4x4 piksela i procjena pokreta za četvrtinu piksela) rezultira s manje energije u reziduala pa time i manje bita za njegovo prenošenje. Međutim korištenje složenije sheme za procjenu i kompenzaciju pokreta znači i više bita za prenošenje informacije o vektoru pokreta (više bita treba za prenijeti vektor pomaka ako se radi o procjeni pokreta za četvrtini piksela nego za cijeli piksel). Stoga je zadatak kodera da nađe kompromis kojim se minimizira ukupna suma bita.

Slika 12.13 Rezidual za blok 4x4 i kompenzaciju od pola piksela (lijevo) i četvrtinu piksela (desno)

Page 106: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

105

12.3. MODEL PROSTORA Izlaz iz modela vremena (rezidual) sadrži uzorke koji su značajno manje korelirani (a to znači i manje redundantni) nego je to originalna slika. Ipak, određena korelacija je još uvijek prisutna pa je zadatak modela prostora da dekorelira rezidual (a kada to treba i samu sliku) i da ga prebaci u oblik koji se može efikasno komprimirati u entropijskom koderu. Tipično model prostora sadrži tri osnovne dijela:

• transformaciju (prebacivanje u područje u kojem je lakše eliminirati redundanciju), • kvantizaciju (smanjivanje preciznosti koeficijenata dobivenih transformacijom u ovisnosti

o željenoj brzini odnosno kvaliteti), • izmjenu redoslijeda (tako da se koeficijenti grupiraju po važnosti).

Osim navedenoga, koristi se i prediktivno kodiranje (engl. predictive coding). Radi se o

predviđanju u prostoru, za razliku od modela vremena kod kojeg se radi o predviđanju u vremenu. Trenutni pikseli se predviđaju na temelju prethodno prenesenih piksela u istoj slici. Obično se za predviđanje u prostoru koristi izraz DPCM (Differential Pulse Code Modulation).

Najčešće korištene transformacije su DCT (Discrete Cosine Transform) i DWT (Discrete Wavelet Transform). O transformacijama, kvantizaciji i izmjeni redoslijeda (ZigZag skeniranje) bilo je više riječi u poglavlju Kompresija slikovnih signala. Naime, kod modela prostora radi se zapravo o kompresiji slika, a u pravilu se koriste pojednostavljene varijante, primjerice JPEG kompresije. 12.4. ENTROPIJSKI KODER Entropijski koder ima zadatak prebaciti niz simbola u oblik pogodan za prijenos (nule i jedinice) te eliminirati redundanciju preostalu u simbolima. Simboli uključuju sve ono što generiraju model vremena i model prostora: vektore pokreta (osim pomaka to uključuje i veličinu makrobloka, da li je pomak za cijeli ili za dio piksela) i kvantizirane koeficijente. Osim toga, prenose se i markeri (kod za resinkronizaciju), zaglavlja i razne dodatne informacije (koje nisu bitne za točno dekodiranje, kao što je npr. ime autora).

Najčešće se koristi Huffmanovo i Aritmetičko kodiranje. Obje metode spadaju u kodiranje bez gubitaka i kodiranje s promjenjivom dužinom (engl. variable length coding). Huffmanovo kodiranje ima osobinu da kodna riječ pridružena nekom simbolu može imati samo cijeli broj bita. To predstavlja nedostatak jer optimalni broj bita, koji ovisi o sadržaj informacije simbola, u pravilu nije cjelobrojan. Taj nedostatak rješava aritmetičko kodiranje kod kojega se simbolu može pridružiti necjelobrojni broj bita. Tako aritmetičko kodiranje, ali uz cijenu veće složenosti, pruža veći stupanj kompresije od Huffmanovog kodiranja.

Page 107: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

106

13. STANDARDI ZA KOMPRESIJU VIDEO SIGNALA Najčešće korištene tehnike kompresije video signala nastale su radom dviju standardizacijskih organizacija/skupina: ITU-T i MPEG. Godine početka i završetka rada na pojedinim standardnim prikazani su na slici 13.1.

Slika 13.1 ITU-T i MPEG standardi za kompresiju video signala, godine početka i završetka rada 13.1. H.261 STANDARD Pregled standarda H.261 Rad na razvitku H.261 standarda počeo je u okviru ITU-T 1984. a završen 1990. (iako je zadnja revizija prihvaćena 1993.). Standardom se, čiji je službeni naziv Video encoder/decoder for audio-visual services at px64Kb/s, definira kodiranje video signala na brzinama od px64kbit/s. Stoga se često H.261 standard neformalno naziva i px64.

H.261 standard je primarno dizajniran za videokonferenciju i videotelefoniju preko ISDN linija. To znači da se tipičan signal sastoji od glave s ramenima s relativno malo pokreta. Pri tome maksimalno kašnjenje (kompresija i dekompresija) ne smije biti veće od 150 ms. Ako je kašnjenje s kraja na kraj preveliko, ono ugrožava dvosmjernost (interaktivnost) veze pa nije primjerena za videokonferenciju ili videotelefoniju. H.261 se temelji na:

• kompenzaciji pokreta čime se eliminira vremenska redundancija, • transformacijskom kodiranju čime se eliminira prostorna redundancija.

Na istom osnovnom principu temelje se svi kasniji video koderi.

Kako smo već rekli, brzina je skalabilna i to od 64 kbit/s do 1920 kbit/s – definirano s px64 kb/s gdje je p od 1 do 30. Ako je

• p=1,2 to rezultira s videotelefonijom niske rezolucije – upotreba je kod uskopojasnog ISDN-a, tj. za dva B kanala po 64 kbit/s (112 kb/s video, 16 kb/s audio),

• p>5 to rezultira velikom kvalitetom videokonferencije – upotreba je kod širokopojasnog ISDN-a i to sve do 30 B kanala (za p=30).

Page 108: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

107

Jedan od većih problema H.261 standarda bio je kako usuglasiti nekompatibilne standarde PAL i SECAM s jedne strane, te NTSC s druge strane. Problem je riješen tako što je uzeta vremenska rezolucija na temelju NTSC sustava, a prostorna rezolucija na temelju europskih standarda. Za razliku od JPEG-a, H.261 vrlo precizno definira format slike. Tako za ulazni signal mora vrijediti:

525 ili 625 linija kompozitni neisprepleteni video, 8 bita/uzorku, 30000/1001=29.97 okvira/sekundi, model boja je YCbCr.

Izlazni komprimirani signal je definiran u dva formata (slika 13.2):

CIF – Common Intermediate Format (352x288 piksela za komponentu osvjetljenja), QCIF – Quarter CIF (176x144 piksela za komponentu osvjetljenja).

CIF (352x288)

QCIF(176x144)

Slika 13.2 QCIF i CIF format

S obzirom da se koristi 4:2:0 poduzorkovanje (duplo manja horizontalna i vertikalna rezolucija za Cb i Cr) to znači da su komponente krome za CIF 176x144 piksela, a za QCIF 88x72 piksela. Svi H.261 koderi moraju moći kodirati i dekodirati QCIF. CIF je opcionalan. Svaki video okvir je podijeljen na makroblokove od 16x16 piksela. Standardom je definirano da komprimirani izlazni video može imati 29.97, 15, 10 ili 7.5 okvira/s.

Ulazni video signal se najprije pretvori u CIF okvir te se pohrani u memoriju. Potom se CIF okvir podijeli na grupe blokova (GOB – Group of blocks) koji sadrže 33 makrobloka od po 16x16 piksela. Svaki makroblok sadrži šest blokova od 8x8 piksela: četiri za blokove osvjetljenja (Y) i dva za blokove krome (po jedan za Cb i Cr) (slika 12.6). Tehnički detalji standarda H.261 H.261 standard je predvidio dva tipa kodiranje: Intra-okvir (engl. Intra frame, I frame) i Inter-okvir (engl. Inter frame, P frame). Razlikuju se po načinu kodiranja: kod Intra-okvira (I-okvir) makroblokovi se kodiraju koristeći metodu sličnu JPEG standardu, dok se kod Inter-okvira (P-okvir) kodiraju koristeći pseudo razliku u odnosu na prethodni okvir (predviđanje), pa makroblokovi P-okvira ovise jedan o drugom. Primjer sekvence I i P okvira prikazan je na slici 13.3.

Kako bi postigli bolje kodiranje na vrlo niskim brzinama većina H.261 kodera ima vrlo malo makroblokova kodiranih kao I-okvir. Ipak, ograničenje standarda je takvo da se svaki makroblok mora kodirati u intra-okvirnom modu barem jednom svako 132 okvira. Time se osigurava da se kod uključivanja u videokonferencijsku vezu ili kod problema u prijenosu svi makroblokovi ispravno osvježe u roku od nekoliko sekundi.

Page 109: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

108

Slika 13.3 Primjer sekvence I i P okvira kod H.261 standarda

Intra-okvirno kodiranje temelji se na diskretnoj kosinusnoj transformaciji (DCT) što znači da se I-okvir tretira kao mirna slika. Za razliku od JPEG standarda, koji također koristi DCT, za kodiranje I-okvira koristi se linearna kvantizacija; svi koeficijenti se kvantiziraju istom, konstantnom vrijednošću.

Kvantizacija je adaptivna i korak kvantizacije ovisi o tome koliko je memorije preostalo u prijenosnom međuspremniku (engl. buffer). Radi se o kontroli prijenosa odnosno kontroli bitske brzine. U slučaju potrebe, kada je prijenosni međuspremnik pun, mogu se preskočiti cijeli okviri (zamrznuta slika). Blok dijagram Intra-okvirnog kodiranja prikazan je na slici 13.4.

Slika 13.4 Blok dijagram Intra-okvirnog kodiranje kod H.261 standarda

Kod Inter-okvirnog kodiranja (P-okviri) kodira se razlika u slikama/blokovima, a ne sama slika/blok. Kodiranje razlike vrši se procjenom pokreta (engl. motion estimation) te kompenzacijom tog pokreta (engl. motion compensation). To se kod H.261 standarda radi na razini makrobloka (4 bloka od po 8x8 piksela) i to tako da se:

Usporedi trenutni makroblok sa susjednim makroblokovima u prethodnom okviru kako bi pronašao makroblok u prethodnom okviru koji je najsličniji trenutnom (da bi se uštedjelo na vremenu uspoređuju se samo makroblokovi osvjetljenja).

Ako je razlika ta dva makrobloka mala, ne komprimiraj makroblok, nego samo prenesi poziciju odgovarajućeg makrobloka u prethodnom okviru.

Ako je razlika velika, pošalji razliku između trenutnog makrobloka i prethodnog najbližeg makrobloka i to tako da se razlika DCT kvantizira na isti način kao i I-okviri.

Dekoder procjenu pokreta vrši na rekonstruiranoj slici, a ne na originalnoj, stoga se i u koderu

procjena pokreta vrši na rekonstruiranoj slici čime se sprječava propagacija greške. Zato je u koder

Page 110: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

109

uključena inverzna diskretna kosinusna transformacija (IDCT). U koder je uključen i prostorni filtar koji gladi (engl. smooth) piksele prethodnog okvira čime se minimizira greška procjene pokreta. Naravno i kod Inter-okvirnog kodiranja potrebno je kontrolirati brzinu prijenosa. Shema inter-okvirnog kodiranja dana je na slici 13.5.

Slika 13.5 Inter-okvirno kodiranje kod H.261 standarda

Procjena pokreta i traženje vektora pokreta se vrši na makroblokovima. Vektor pokreta pokazuje na blok 16x16 piksela, u prethodnom okviru, koji se minimalno razlikuje od trenutnog. Standard ne kaže kako pronaći niti kako definirati najsličniji vektor. Kako smo već vidjeli, najjednostavniji način traženja vektor pokreta je tražnje relativnog pomaka makrobloka koji minimizira srednju apsolutnu distorziju (Mean Apsolute Distortion - MAD) (slika 12.8). Sintaksa standarda H.261 Sintaksa standarda H.261 ima hijerarhijsku strukturu u četiri sloja (slika 13.6):

sloj slike, sloj grupe blokova (GOB), sloj makrobloka (MB), sloj bloka.

Slika 13.6 Hijerarhijska struktura u četiri sloja kod H.261 standarda

Page 111: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

110

Grupi blokova (GOB) odgovara 176x48 Y piksela, odnosno 88x24 Cb i Cr piksela. Tako svaka grupa blokova sadrži 33 (11x3) makrobloka čiji je raspored prikazan na slici 13.7. Svaki makroblok, kao što smo već rekli, sastoji se od 16x16 piksela osvjetljenja i dva 8x8 piksela krome.

Slika 13.7 Grupa blokova (GOB) kod H.261 standarda H.261 i pripadni standardi H.261 je samo jedan od niza standarda koji su potrebni da bi se ostvarila video komunikacija (videotelefonija). Osim video kodera, definiranog H.261 standardom, postoji još i niz standarda kojima se definira audio kodiranje, uspostavljanje, održavanje i raskidanje veze, multipleksiranje audio i videa, itd. Najznačajniji od tih standarda su:

H.261 – Video communications at px64 kb/s, H.221 – Syntax for multiplexing audio and video packets, H.230 – Protocol for call setup and negotation of end-system ("terminal") capabilities, H.242 – Conference control protocol, G.711 – ISDN audio coding standard at 64 kb/s, G.722 – High-quality audio at 64 kb/s, G.728 – Reduced quality speech at 16 kb/s.

Page 112: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

111

13.2. STANDARD H.263 Pregled standarda H.263 Video standard H.263 prihvaćen je 1996. godine, a prvenstveno ja namijenjen za rad na vrlo malim brzinama. H.263 je poboljšana verzija standarda H.261, te oba standarda u osnovi imaju istu blok shemu. Tako i H.263 video koder koristi transformacijsko kodiranje za Intra-okvire i prediktivno kodiranje za Inter-okvire. Ipak, H.263 uključuje nekoliko poboljšanja koji značajno povećavaju efikasnost kompresije:

• preciznost proračuna vektora pokreta od pola piksela, • neograničeni vektor pokreta, • napredno predviđanje, • aritmetičko kodiranje, • PB-okviri.

Standard H.263 podržava pet formata, pa osim QCIF i CIF formata postoje još i sub-QCIF,

4CIF i 16CIF. Prostorne dimenzije svih 5 formata dane su u tablici 13.1, a na slici 13.8 je ilustriran međusobni odnos H.263 formata.

format slike pikseli (osvjetljenje) pikseli (kroma)

sub-QCIF 128x96 64x48 QCIF 176x144 88x72 CIF 352x288 176x144 4CIF 704x576 352x288 16CIF 1408x1152 704x576

Tablica 13.1 Prostorne dimenzije H.263 formata

QCIF

CIF

SQCIF

4CIF

16CIF

Slika 13.8 Međusobni odnos H.263 formata

Page 113: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

112

Tehnički detalji standarda H.263 Struktura H.263 kodera je slična strukturi H.261 kodera, uz razliku da kod H.263 kodera nema loop filtra. Slika se dijeli na makroblokove na isti način kao i kod H.261 standarda, što znači da svaki makroblok ima 4 bloka od 8x8 piksela osvjetljenja i 2 bloka od 8x8 piksela krome. Ipak, grupe blokova (GOB) su definirane nešto drugačije nego kod H.261 standarda. U nastavku su opisana poboljšanja koja standard H.263 ima u odnosu na H.261. Preciznost računanja vektora pokreta od pola piksela H.263 standard koristi točnost računanja i kompenzacije pokreta od pola piksela, što je ilustrirano na slici 13.9. Vrijednosti se računaju koristeći bilinearnu interpolaciju. Time standard H.263 koristi veću preciznost kompenzacije pokreta kako bi izgladio susjedne okvire. To se kod standarda H.261 radi prostornim filtrom (loop filtar). Veća preciznost za kompenzaciju pokreta koristi se i kod MPEG-1 i MPEG-2 standarda (pola piksela) te kod MPEG-4 standarda (četvrtina piksela).

Slika 13.9 Bilinearna interpolacija za predviđanje na razini pola piksela (H.263) Neograničeni vektor pokreta H.261 video koder dozvoljava traženje vektora pokreta samo unutar slike. U neograničenom modu rada, koji predviđa H.263, vektor pokreta može pokazivati i izvan slike. Pri tome se za predviđanje „nepostojećih“ piksela koriste rubni pikseli. Ovo poboljšanje značajno povećava efikasnost kodera kada su pokreti po rubu slike, posebno za male formate slike. Osim toga, moguće je koristiti vektore pokreta veće od makrobloka što je posebno korisno za scene kod kojih se pomiče kamera. Napredno predviđanje H.261 koder, kao i osnovni mod rada H.263 kodera, koristi za svaki makroblok jedan vektor pokreta. Međutim, H.263 algoritam ima i napredni mod predviđanja pokreta u kojemu je dozvoljeno koristiti do 4 vektora pokreta po svakom makrobloku. Time je omogućeno preciznije predviđanje, jer se uz upotrebu 4 vektora pokreta predviđanje vrši na blokovima od 8x8 piksela umjesto na blokovima od 16x16 piksela. Način donošenja odluka da li koristiti osnovni ili napredni mod prepušten je koderu.

Page 114: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

113

Aritmetičko kodiranje Kao i drugi standardi za video kodiranje, H.263 koristi kodiranje s primjenjivom dužinom (VLC – Variable Length Coding) kako bi eliminirao redundanciju u video podacima. Osnovni princip VLC je kodirati svaki simbol koristeći tablicu koja definira binarnu kodnu riječ za svaki simbol. Tablica se temelji na sintaksi kodera i generira se koristeći veliku trening sekvencu kako bi se postigao statistički najbolji rezultat, dakle da se vjerojatniji simboli kodiraju s manje bita (npr. koristeći Huffmano-ov kod). Podrazumijeva se da koder i dekoder imaju istu tablicu. Takav pristup kodiranju s promjenjivom dužinom implicira da se svaki simbol kodira s fiksnim-cjelobrojnim brojem bita. Dodatna opcija u H.263 standardu dozvoljava korištenje aritmetičkog kodiranja kako bi se uklonilo ograničenje fiksnog-cjelobrojnog broja bita za simbole. PB-okviri PB-okvir se sastoji od dvije slike, jedne P-slike i jedne B-slike, koje se kodiraju kao jedna cjelina (slika 13.10). Kako H.261 koder nema B-slika, koncept B-slike je „posuđen“ od MPEG standarda, o čemu će biti više riječi u slijedećim poglavljima. U PB-okviru, P-slika se predviđa na temelju prethodne dekodirane I ili P slike, dok se B-slika bidirekcionalno predviđa na temelju dvije slike: prethodno dekodirane I (ili P) slike te trenutne P-slike iz PB okvira.

Slika 13.10 Predviđanje kod PB okvira (H.263) H.263 verzija 2 i verzija 3 Standard za kodiranje videa H.263 verzija 2 prihvaćen je 1998., a H.263 verzija 3 2001. godine. Poznati su i pod nazivima H.263+ odnosno H.263++. Temelje se na H.263 video koderu, uz brojne nove opcije kojima se povećava efikasnost kodiranja. Osim toga, poboljšanima se proširilo područje primjene kako bi se zadovoljile potrebe mobilnih komunikacija, ali i drugih komunikacija u uvjetima jakog šuma. Poboljšanja, između ostaloga, uključuju:

• fleksibilni video format, • skalabilnost (vremenska, prostorna i SNR), • poboljšanje PB okvira, • poboljšano intrakodiranje, • filtar za uklanjanje efekta bloka (engl. deblocking filter - DF).

Page 115: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

114

H.263 i pripadni standardi Da bi se ostvarila videokonferencija, osim H.263 standarda koji definira način video kodiranja, potrebno je definirati i ostale elemente potrebne za komunikaciju. Za to služe slijedeći standardi:

H.263 – "Low-bit-rate" video coding, H.324 – Terminal systems, H.245 – Conference control, H.223 – Audio/video multiplexing, G.723 – Audio coding 5.3 and 6.3 kb/s.

13.3. MPEG-1 Općenito o MPEG standardima International Organization for Standardization (ISO) je 1988. godine formirala radnu skupinu Moving Picture Coding Expert Group (MPEG) s ciljem definiranja standard za kompresiju digitalnog video i audio signala. U to vrijeme standard H.261 (koji je razvijan od strane ITU-T organizacije) je bio praktično završen. MPEG je uglavnom nastao iz potrebe definiranja audio i video formata za novi medij – CD.

U okviru MPEG skupine definirano je nekoliko standarda: MPEG-1, MPEG-2, MPEG-4, MPEG-7 i MPEG-21. Od navedenih, MPEG-1, MPEG-2 i MPEG-4 su standardi za kompresiju videa i audia. MPEG-7 je standard za pretraživanje, filtriranje, dohvaćanje i upravljanje multimedijskim sadržajem tako da je sadržaj "opisan" (boja, tekstura, veličina, opis scene i sl.). MPEG-21 je standard koji ima za cilj transparentan i siguran prijenos multimedijskog sadržaj preko različitih mreža.

MPEG-1 je imao za cilj kodiranje videa rezolucije 320x240 koji bi, zajedno s audiom, imao brzinu do 1.5 Mb/s. To je relativno skromna kvaliteta (tzv. VHS kvaliteta) te je u nastavku rada definiran, na sličnim načelima, standard MPEG-2 s ciljem omogućavanja značajno veće kvalitete na brzinama od 2 do 30 Mb/s. Tako se MPEG-2 koristi za kodiranje kod filmova na DVD-ovima.

Kao bitno različiti standard od do tada postojećih (H.261, H.263, MPEG-1, MPEG-2) razvijen je i MPEG-4 standard. To je bio prvi standard za kodiranje videa koji je podržavao kodiranje temeljeno na objektima audio i vizualnog sadržaja (engl. content based coding). Osim manipulacije s objektima, MPEG-4 podržava i rad sa sintetički generiranim videom te naravno i standardno kodiranje.

Napomenimo da je postojao i MPEG-3 koji je inicijalno bio planiran za kodiranje videa za HDTV. Rad na MPEG-3 je prekinut prije završetka jer se uvidjelo da se svi predviđeni ciljevi mogu ostvariti kroz MPEG-2.

Za razliku od standarda H.261 i H.263 koji definiraju samo video koder, MPEG-1, MPEG-2 i MPEG-4 definiraju i audio i video dio kodera te sve potrebno za njihovu reprodukciju. Stoga se MPEG-1, MPEG-2 i MPEG-4 standardi sastoje od tri osnovna dijela:

• video, • audio, • sustav (sinkronizacija i multipleksiranje videa i audia).

Page 116: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

115

Orijentacijska vremena početka i završetka rada na pojedinim standardima dana su na slici 13.1. MPEG standardi u osnovi su napravljeni za potrebe nesimetričnih aplikacija (često dekomprimiranje, a rijetko komprimiranje kao što su igre, filmovi, edukacija i trening, vodiči, itd.). Za razliku od toga H.261 i H.263 standardi napravljeni su uglavnom za potrebe simetričnih aplikacija (jednako česta upotreba kompresije i dekompresije kao što je video telefonija i telekonferencija, video mail, produciranje video materijala).

Razvitak svakog MPEG standarda započinje definiranjem ciljeva i opsega standarda. Potom se uputi poziv na koji se odazovu brojni instituti, sveučilišta i tvrtke sa svojim prijedlozima (npr. koderima). U slijedećoj fazi se odabere nekoliko najboljih prijedloga i to na temelju niza dogovorenih eksperimenata. Konačna faza uključuje zajednički razvitak prijedloga koji su izabrani što završi zajedničkim rješenjem u kojeg je uključeno najbolje od svih izabranih prijedloga.

Važno je napomenuti da MPEG standardi ne definiraju metodu kodiranja niti detalje kodera. Standardom se definira samo format kojim se predstavljaju ulazni podaci dekodera te niz pravila za interpretaciju tih podataka. Format kojim se predstavljaju ulazni podaci dekodera naziva se sintaksa (engl. syntax). Sintaksa se može iskoristiti tako da se formiraju različiti (jednako valjani) tokovi podataka (engl. bitstream). Pravila o tome kako se interpretiraju tokovi podataka nazivaju se semantika dekodiranja (engl. decoding semantics), a slijed izvršavanja semantike dekodiranja naziva se proces dekodiranja, odnosno dekodiranje (engl. decoding process). Stoga bi se moglo kazati da MPEG standardi definiraju proces dekodiranja, a ne način implementacije dekodera.

Dakle, proces kodiranja (engl. coding process) nije standardiziran i značajno se razlikuje u pojedinim aplikacijama. Upravo zato što koder nije standardiziran, moguć je napredak u postupku kodiranja, čak i kada je standard potpuno završen. Jedino ograničenje je da izlaz iz kodera bude sintaktički ispravan tok podataka tako da ga dekoder može interpretirati koristeći standardnu semantiku dekodiranja. Pregled standarda MPEG-1 MPEG-1 je standard za „kodiranje pokretnih slika i pridruženog audia za digitalne medije pohrane na brzini do 1.5 Mb/s“ (Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s) [www.chiariglione.org/mpeg]. Osnovni ciljevi standarda MPEG-1 bili su:

Kodiranje videa s dobrom kvalitetom na brzini od oko 1 do 1.5 Mb/s te audia s dobrom kvalitetom na brzini od 128 do 256 kb/s. Mogućnost relativno čestog slučajnog pristupa (engl. random access) – svako pola sekunde. Mogućnost brzog premotavanja i reprodukcije unaprijed i unazad s brzinom nekoliko pua većom od normalne. Sustav za sinkroniziranu ponovnu reprodukciju (engl. playback) i pristup audiovizualnim podacima. Primjenjivost u realnom vremenu uz razumnu cijenu hardvera i softvera.

Osim inicijalnih zahtjeva, pojavili su se i brojni drugi zahtjevi, kao što je podržavanje

različitih rezolucija, otpornost na greške i sl. Tako MPEG-1 podržava slike do veličine 4096x4096 s brojnim brzinama (okvira/s) te s većim bitskim brzinama (bit/s) od prvobitno planiranih. Ipak, koderi su u pravilu optimizirani za SIF rezoluciju, za koju je MPEG-1 standard inicijalno i napravljen. SIF (Source Intermediate Format) ima rezoluciju od 352x288 s 25 okvira/s (neisprepleteno), odnosno 352x240 s 30 okvira/s (neisprepleteno) uz poduzorkovanje 4:2:0. MPEG-1 standard je formalno realiziran po imenom ISO 11172 a sastoji se od slijedećih dijelova:

11172-1: Systems,

Page 117: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

116

11172-2: Video, 11172-3: Audio, 11172-4: Conformance, 11172-5: Software.

U nastavku su ukratko opisani tehnički detalji MPEG-1 video standard. Audio dio je opisan u

poglavlju 7, a ostali dijelovi neće biti opisivani. Tehnički detalji standarda MPEG-1 I, P i B okviri Video dio standarda MPEG-1 temelji se, kao i standardi H.26x, na eliminaciji prostorne redundancije (za što služi DCT) i na eliminaciji vremenske redundancije (za što služi kompenzacija pokreta). MPEG-1 video sintaksa podržava tri tipa kodiranih okvira (engl. frame) odnosno slika (engl. picture) što je ilustrirano na slici 13.11. To su:

I-okvir (Intraframe) - kodira se neovisno o drugim okvirima, - koristi DCT kodiranje (slično JPEG), - najniža kompresija unutar MPEG, - pristupna točka za slučajni pristup (engl. random access);

P-okvir (Predicted frame – inter frame) - kodira se u odnosu na prošle I ili P okvire, - slično kao i H.261 samo što okvir u odnosu na koju se kodira nije uvijek najbliži

prethodni, - kompresija je bitno veća nego kod I-okvira;

B-okvir (Bidirectionally predictive-coded frame) - komprimira se koristeći prošle i buduće okvire (I ili P), - najveća kompresija, - B-okvir je razlika u odnosu na H.261 i H.263 standarde.

Svi makroblokovi (16x16 piksela) unutar I-okvira moraju se kodirati u I-modu, dakle slično

kao i kod JPEG sekvencijalnog moda. Makroblokovi unutar P-slike mogu se kodirati u I ili P modu. Makroblokovi u B slici mogu se kodirati u I, P ili B modu.

Kod MPEG-1 standarda video sekvenca se najprije podijeli na grupu slika odnosno okvira (GOP – Group of pictures). Veličina grupe slika određena je udaljenošću između dvaju najbližih I-okvira (za slučaj prikazan na slici 13.11 to je 8).

Uočite da, zbog predviđanja (kompenzacije pokreta), redoslijed prijenosa nije isti kao i stvarni redoslijed. Za slučaj prikazan na slici 13.11 redoslijed prijenosa bi bio:

1,5,2,3,4,9,6,7,8

Kod realizacije kodera važno je da algoritam odrediti pravi omjer i razmještaj I, B i P okvira. Što je više I-okvira to je bolji slučajni pristup, ali je slabija kompresija. Razmještaj okvira, kako smo već rekli, nije ni na koji način definiran standardom već je prepušten dizajnerima kodera. Tipična sekvenca MPEG-1 kodiranog videa koja je dobra za veliki broj aplikacija je:

(IBBPBBPBB)(IBBPBBPBB)...

Page 118: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

117

Slika 13.11 I, P i B okviri kod MPEG-1 standarda Tipično je kompresijski omjer jednak:

I-okvir 1:10 P- okvir 1:40 B- okvir 1:90

čime, za gore definirani niz, u prosjeku dobijemo kompresijski omjer od 1:70. Interpolacija

Ako se kod P i B okvira koristi procjena pokreta, P-okvir makroblokove uvijek traži samo na prošlim okvirima, dok B-okvir makroblokove traži i u prethodnim i u budućim makroblokovima. Dakle B može najbliži makroblok tražiti u (slika 13.12):

prethodnom okviru (B=A) – unaprijedno predviđanje, budućem okviru (B=C) – povratno predviđanje, prošlom i budućem okviru (B=(A+C)/2) – interpolacija, istom okviru.

Slika 13.12 Interpolacija i predviđanje kod kodiranja B-okvira za MPEG-1 standard

Page 119: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

118

Makroblokovi se udružuju u isječke (engl. slice), pri čemu koder odlučuje koliko će makroblokova biti u jednom isječku. Unutar jednog isječka vrijednosti vektora pokreta i DC komponente svakog makrobloka kodiraju se koristeći DPCM.

MPEG standard ne specificira način traženja vektora pokreta niti koliki dio slike se pretražuje. Ipak najčešće se koristi block-matching tehnika koja ima razne varijante: exhaustive search (brute force) algoritam, three-step-search algoritam, 2-D logarithmic search algoritam, conjugate direction search algoritam. MPEG-1 video koder Na slici 13.13 dana je shema MPEG-1 kodera. I-okviri kodiraju se koristeći DCT, na sličan način kao i kod JPEG-a. P i B okviri kodiraju se pomoću procjene pokreta. U slučaju potrebe (ukoliko se procijenjena slika značajno razlikuje od originalne), osim vektora pokreta šalje se i razlika slika (pogreška predviđanja - rezidual). Razlika se kodira na isti način kao i I-okvir, ali uz različite kvantizacijske matrice.

Na slici 13.14 dan je primjer kvantizacijskih tablica iz MPEG Test Modela 5 [ISO/IEC, Test Model 5 1993]. Vrijednosti u kvantizacijskoj matrici za ne-intra kodiranje imaju manju dinamiku (međusobnu razliku) u odnosu na kvantizacijske vrijednosti kod intra kodiranja. To je i razumljivo jer slika razlike (ne-intra kodiranje), a onda i odgovarajući DCT koeficijenti, ima manju dinamiku od originalne slike (intra kodiranje). Pri tome koder odlučuje da li će se pogreška uopće kodirati. Kao i kod H.263, koristi se preciznost izračuna vektora pokreta od pola piksela.

Slika 13.13 Pojednostavljena shema MPEG-1 kodera

Page 120: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

119

Slika 13.14 Kvantizacijske matrice za intra i ne-intra kodiranje MPEG tok bitova MPEG video tok bitova (engl. bitstream) sastoji se od nekoliko slojeva (engl. layer) koji sadrže zaglavlje i podatke. Slojevi i njihov odnos prikazani su na slici 13.15.

Najviši sloj u hijerarhijskoj strukturi je sekvenca (engl. sequence) koja se sastoji od zaglavlja sekvence i niza grupa slika (engl. Group of pictures - GOP). Zaglavlje video sekvence definira video format, dimenzije slike, aspect ratio, frame rate, tip poduzorkovanja, itd.

Grupa slika (GOP) sadrži jednu ili više slika te predstavlja najmanju jedinicu koja se može neovisno kodirati unutar video sekvence. GOP zaglavlje sadrži vrijeme početka emitiranja i može se koristiti kao točka za slučajni pristup (engl. random access).

Slika (engl. picture) je osnovna jedinica u MPEG postupku kodiranja pri čemu se može kodirati u jednom od tri formata: I, P ili B.

Isječak (engl. slice) je dio slike, odnosno skupina od nekoliko makroblokova. Isječak je osnovna jedinica za uspostavljanje sinkronizacije postupaka kodiranja koji se provode na razini bloka i makrobloka. Ako dođe do pogreške u prijenosu, nije potrebno odbaciti cijelu sliku, nego samo odgovarajući isječak.

Makroblok (engl. macroblok - MB) je osnovna jedinica za kodiranje s kompenzacijom pokreta. Sastoji se od 16x16 piksela.

Blok (engl. block) je osnovna jedinica za primjenu diskretne kosinusne transformacije. Sadrži 8x8=64 elementa slike (piksela). S obzirom na poduzorkovanje od 4:2:0, jedan makroblok ima 4 bloka osvjetljenja i dva bloka krome.

Page 121: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

120

Slika 13.15 MPEG-1 slojevi

Najvažniji elementi sintakse pojedinih slojeva dani su u tablici 13.2.

sloj Najvažniji elementi sintakse

sekvenca Picture size Frame rate Bit rate and buffering requirements Programmable coding parameters

grupa slika Random access unit Time code

slika Timing information (buffer fullness, temporal reference Coding type (I, P, B)

isječak Intraframe addressing information Coding reinitialization (error resilience)

makroblok Basic coding structure Coding mode Motion vectors Quantization

blok DCT coefficients

Tablica 13.2 Najvažniji elementi sintakse pojedinih slojeva kod MPEG-1

Page 122: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

121

13.4. MPEG-2 Pregled standarda MPEG-2 Za razliku od MPEG-1 koji je u osnovi standard za pohranu video signala na računalu s malom brzinom prijenosa/pohrane, MPEG-228 je zamišljen kao standard za digitalnu TV, šireg spektra primjena i u pravilu veće kvalitete. Unazad je kompatibilan s MPEG-1 standardom. MPEG-2 zadovoljava zahtjeve za HDTV i DVD. Osnovni ciljevi MPEG-2 standarda bili su:

Kodiranje isprepletenog videa s vrlo dobrom kvalitetom na brzini od oko 4 do 15 Mb/s te višekanalnog audia s visokom kvalitetom. Mogućnost relativno čestog slučajnog pristupa (engl. random access) – svako pola sekunde. Mogućnost brzog premotavanja i reprodukcije unaprijed i unazad s brzinom nekoliko puta većom od normalne. Podrška za skalabilno kodiranje te kompatibilnost s MPEG-1. Sustav za sinkroniziranu ponovnu reprodukciju (engl. playback) i pristup audiovizualnim podacima. Primjenjivost u realnom vremenu uz razumnu cijenu hardvera i softvera (barem za podskup cijelog standarda).

Osim inicijalnih zahtjeva, pojavili su se i brojni drugi zahtjevi, kao što je podržavanje

različitih rezolucija (isprepleteno i neisprepleteno), otpornost na greške i sl. MPEG-2 standard se formalno naziva ISO 13818 i sastoji se od slijedećih dijelova:

13818-1: Systems 13818-2: Video 13818-3: Audio 13818-4: Conformance 13818-5: Software 13818-6: Digital storage media—command and control (DSM-CC) 13818-7: Advanced audio coding (AAC) 13818-8: 10-bit video (this work item was dropped) 13818-9: Real-time interface 13818-10: Conformance of DSM-CC

Kao i do sada, najviše pozornosti posvetit ćemo video dijelu samog standarda. Audio dio je

već opisan u prethodnim poglavljima. MPEG-2 video standard originalno je bio zamišljen za kodiranje video signala definiranog

ITU-R 601 standardom (poduzorkovanje 4:2:0, rezolucija 720x480 s 30 isprepletenih okvira/s odnosno 720x576 s 25 isprepletenih okvira/s) i to na brzini od 4 do 15 Mbit/s. Kasnije je MPEG-2 podržao i druge rezolucije (do 16384x16384), brojne brzine (u okvirima/s) te tri tipa poduzorkovanja (4:2.0, 4:2:2 i 4:4:4) uz veće brzine prijenosa (bit/s). MPEG-2, kao i MPEG-1 koristi YCbCr model boja.

28 U razvitku video dijela standarda MPEG-2 aktivno je sudjelovala i organizacija ITU-T, pa se može smatrati zajedničkim standardom ISO/ITU. Organizacija ITU-T je taj video standard nazvala H.262. Tako se ITU-T H.262 odnosi na isti standard s istim tekstom kao i ISO 13818-2 (MPEG-2 Video).

Page 123: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

122

Kao i MPEG-1, tako niti MPEG-2 ne standardizira proces video kodiranja, odnosno video koder. Standardizirana je samo sintaksa toka bitova (engl. bitstream) i postupak dekodiranja. MPEG-2 video kodiranje je proširenje MPEG-1 video standarda (uz optimizaciju za isprepleteni video) pa se tako i MPEG-2 temelji na diskretnoj kosinusnoj transformaciji i kompenzaciji pokreta.

Video kodiranje započinje na slikama, pri čemu slike mogu biti okviri (engl. frame) ili polja (engl. field), jer se kod isprepletenog videa svaka slika sastoji od dva, vremenski pomaknuta, polja. Slika (odnosno odgovarajući makroblokovi) se može kodirati kao I, P ili B kodirana slika. Svaka slika se dalje dijeli na isječke, isječci na niz makroblokova, a svaki makroblok na 4 bloka osvjetljenja i odgovarajući broj blokova krome. Tehnički detalji standarda MPEG-2 Najznačajnije razlike MPEG-2 u odnosu na MPEG-1 standard su:

1. Skalabilno kodiranje (tako da se isti set signala može koristiti za HDTV i za standardni TV) • SNR skalabilnost (slično JPEG progresivnom modu, prilagođava korake kvantizacije

DCT koeficijenata), • prostorna skalabilnost – slično hijerarhijskom JPEG, • vremenska skalabilnost – različite brzine okvira;

2. Modovi predviđanja za polje/okvir (engl. field/frame prediction modes) za podršku isprepletenog video ulaza;

3. DCT kodna sintaksa za polje/okvir (engl. field/frame DCT coding syntax); 4. Korištenje posebnih kvantizacijskih matrica (engl. downloadable quantization matrix) i

alternativni redoslijed skeniranja (engl. alternative scan order); 5. Nelinearni kvantizacijski faktori za makroblokove.

Nabrojene razlike odnose se na poboljšanje efikasnosti kodiranja ili podršku isprepletenom videu. Osim toga, ima još i nekoliko poboljšanja koja se ne odnose na samu kompresiju, kao što je:

1. Veličine okvira može biti bitno veća (do 16383x16383); 2. Osim 4:2:0, poduzorkovanje može biti i 4:2:2 te 4:4:4, 3. Syntex to facilitate 3:2 pull-down in the decoder, 4. Pan and scan codes with 1/16 pixel resolution.

U nastavku je ukratko opisano nekoliko najznačajnijih promjena MPEG-2 standarda u odnosu

na MPEG-1 standard. Modovi predviđanja za polje/okvir U MPEG-1 videu, svaka slika se kodira kao okvir, bez obzira da li je originalni video materijal isprepleten ili ne. Ako je originalni video isprepleten, svaki okvir se sastoji od dva polja, gornjeg i donjeg. MPEG-1 koristi predviđanje na temelj okvira, dakle ne vodeći računa o tome da su pikseli gornjeg i donjeg polja pomaknuti u vremenu.

MPEG-2 ima dva moda rada, jedan koji se temelji na okvirima (kao i kod MPEG-1) i drugi koji se temelji na poljima. Koder, na temelju odabranih kriterija, odluči koji će mod koristiti. Kod predviđanja na temelju polja, gornje polje u P-okviru može se predviđati ili na temelju gornjeg ili na temelju donjeg polja prethodnog I ili P okvira. Slično vrijedi i za donje polje P okvira. Kod B-okvira, svako polje se bidirekcionalno predviđa i to ne pomoću dva vektora pokreta (prošli i budući P ili I

Page 124: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

123

okvir), nego na temelju 4 vektora pokreta (gornje i donje polje prošlog i budućeg P ili I okvira). Polja i okviri ilustrirani su na slici 13.16. DCT kodna sintaksa za polje/okvir Još jedno značajne poboljšanje koje se odnosi na podršku isprepletenom videu je mogućnost izbora DCT kodne sintakse prilagođene za polje ili za okvir.

Na slici 13.16, u sredini je prikazan makroblok osvjetljenja (16x16 piksela) gdje zatamnjeni pravokutnici predstavljaju piksele gornjeg polja, a svijetli pravokutnici piksele donjeg polja. Lijevo je ilustriran DCT prilagođen kodiranju polja jer svaki blok od 8x8 piksela sadrži piksele samo jednog polja, gornjeg ili donjeg.

Izbor DCT kodiranja prilagođenog polju obično ima smisla za isprepleteni video kod kojeg scene imaju manje detalja ali veliku promjenu (pokret) između polja. U tom slučaju je efikasnije udružiti polja zajedno, a ne okvire. Time se dobiju blokovi od 8x8 piksela s većom korelacijom između piksela što u konačnici znači da će nakon provedene diskretne kosinusne transformacije trebati manje bita za kodiranje.

Slika 13.16 DCT kodiranje okvira i polja kod isprepletenog videa Korištenje posebnih kvantizacijskih matrica i alternativni redoslijed skeniranja MPEG-2 dozvoljava korištenje posebnih kvantizacijskih matrica (koje se onda moraju slati zajedno s ostalim podacima), i to na razini okvira. To može biti korisno u slučaju kada je ulazni video izrazito dinamičan. Ako drugačije nije definirano koriste se standardne kvantizacijske matrice i njih nije potrebno posebno slati jer se vrijednosti podrazumijevaju. U načelu, kvantizacijske matrice su različite za intra kodiranje i ne-intra kodiranje.

Slika 13.17 Normalni i alternativni redoslijed skeniranja

Page 125: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

124

Dok MPEG-1 koristi samo normalno (zigzag) skeniranje, MPEG-2 dozvoljava korištenje i alternativnog skeniranja, i to na razini sloja slike. Normalno (zigzag) i alternativno skeniranje prikazano je na slici 13.17. Alternativno skeniranje može biti bolje od normalnog, posebno za DCT kodiranje okvira kod isprepletenog videa. Naime, spektralna distribucija je takva da više nula može završiti na kraju ako se koristi alternativno skeniranje. MPEG-2 profili i razine

MPEG-2 ima za cilj da bude generički sustav za video kodiranje pa podržava različiti spektar aplikacija kroz različite algoritamske alate (engl. algorithmic tools). Alati se razvijaju za različite aplikacije i svi su integrirani u kompletnom standardu. Međutim, podržavanje svih alata, odnosno kompletne standardom predviđene sintakse, za većinu aplikacija nije praktično jer implicira nepotrebno kompleksne kodere.

Stoga je MPEG-2 uveo koncept profila (engl. profiles) i razina (engl. levels). Profil je podskup svih standardom predviđenih algoritamskih alata dok razina definira ograničenja na vrijednosti parametara (primjerice veličina slike i brzina u bitima po sekundi). Dakle, dekoder koji podržava određeni profil i razinu treba podržavati samo određeni podskup cijelog standarda i to samo za određene ograničene vrijednosti parametara. U tablici 13.3 dane su osnovne karakteristike najznačajnijih profila. U tablici 13.4 dane su gornje granice parametara za pojedine razine. Temeljni MPEG-2 profil i razina su MAIN te 90% kodera podržava upravo profil MAIN s razinom MAIN (primjerice DVD).

Profil Funkcionalnost

HIGH

Podržava svu funkcionalnost kao i SPATIAL Scalable profil te osim toga pruža podršku za:

• 4:2:2 poduzorkovanje • SNR i prostorno skalabilno kodiranje u tri sloja

SPATIAL Scalable Podržava svu funkcionalnost kao i SNR Scalable profil te osim toga pruža podršku za:

• prostorno skalabilno kodiranje u dva sloja

SNR Scalable Podržava svu funkcionalnost kao i MAIN profil te osim toga pruža podršku za:

• SNR skalabilno kodiranje u dva sloja

MAIN

Ne-skalabilno kodiranje s podrškom za: • kodiranje isprepletenog videa • slučajni pristup (engl. random access) • predviđanje u B modu • 4:2:0 poduzorkovanje

SIMPLE Uključuje svu funkcionalnost kao i MAIN ali:

• ne podržava predviđanje u B modu • ne podržava 4:2:0 poduzorkovanje

Tablica 13.3 MPEG-2 profili s funkcionalnostima koje su podržane

Page 126: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

125

razina max. veličina max. piksela/s

max. brzina prijenosa (Mbit/s)

max. brzina

okvira (Hz)tipična primjena

Niska (Low) 352 x 288 x 30 3 M 4 30 VHS kvaliteta Osnovna (Main) 720 x 576 x 30 12 M 15 30 studio TV Visoka 1440 (High 1440) 1440 x 1152 x 60 96 M 60 60 HDTV Visoka (High) 1920 x 1152 x 60 128 M 80 60 produkcija filmova

Tablica 13.4 Osnovne razine i ograničenje veličina parametara kod MPEG-2 standarda

Uočite da smo obradili samo video (a u prethodnim poglavljima i audio) dio MPEG-1 i MPEG-2 standarda. Isto tako, samo smo spomenuli neke od značajnih elemenata same implementacije standarda, dakle izrade kodera. Standardom nije definirano kako koder treba izgledati, zato dizajneri trebaju riješiti niz značajnih praktičnih problema o kojima nismo puno govorili, kao što su:

• predprocesiranje videa (različiti video formati po dimenzijama slike i po omjeru stranica, različite brzine u okvirima/s, isprepleteni/neisprepleteni, …),

• procjena pokreta i kompenzacija pokreta (kriterij izbora najbližeg makrobloka, algoritmi za traženje makroblokova, napredne metode procjene pokreta (procjena u frekvencijskom području, pretraživanje ograničenog seta slika, …),

• kontrola brzine (optimalni raspored raspoloživih bitova), • optimalni izbor moda rada (I/P/B okviri, okvir/polje, intra-okvirno/neintra-okvirno

kodiranje makroblokova, procjena pokreta sa ili bez kodiranja reziduala, …).

Navedeni problemi javljaju se i kod svih drugih video kodera, a ne samo kod MPEG-1 i MPEG-2. 13.5. MPEG-4 Pregled standarda MPEG-4 MPEG-4 je prvi, i za sada jedini šire prihvaćeni, standard koji omogućava manipulaciju s objektima, dakle dijelovima slike. Rad na razvoju standarda započeo je 1993. te je glavnina rada završena 1999. godine. Napominjemo da je u okviru MPEG-4 nastavljen rad i na drugom koderu koji je dobio naziv MPEG-4 Part 10, odnosno H.264, što će biti opisano u poglavlju 13.6. Standard MPEG-4 formalno se naziva ISO 14496, a prvih 6 dijelova (od 23) su:

14496-1: Systems 14496-2: Video 14496-3: Audio 14496-4: Conformance 14496-5: Software 14496-6: Delivery Multimedia Integration Framework (DMIF)

Page 127: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

126

Prvenstvene ciljane aplikacije MPEG-4 standarda odnose se na multimediju što uključuje računalne mreže, mobilne komunikacije, interaktivne aplikacije, vizualizaciju, igre i Internet. Iako je i po pitanju stupnja kompresija nešto bolji od primjerice MPEG-2 standarda, prvenstveni značaj MPEG-4 leži u širokoj funkcionalnosti. Funkcionalno MPEG-4 omogućava: Interaktivnost temeljenu na sadržaju (engl. content-based interactivity)

MPEG-4 podržava manipulaciju temeljenu na sadržaju (engl. content-based manipulation) i editiranje toka bitova (engl. bitstream editing) bez potrebe za dekodiranjem. MPEG-1/2 nemaju sintaksu i semantiku koja bi omogućavala potpuno editiranje u komprimiranoj domeni. MPEG-4 podržava kombiniranje sintetičkih scena i objekata s prirodnim scenama i objektima (engl. synthetic and natural hybrid coding – SNHC). Također, MPEG-4 podržava napredne metode izravnog pristupa (engl. random access) i to ne samo na razini okvira, nego i na razini objekta proizvoljnog oblika.

Kompresiju temeljenu na sadržaju (engl. content-based compression) Iako je težište na funkcionalnosti, MPEG-4 omogućava i dobar stupanj kompresije (usporediv s MPEG-2, a na manjim brzinama i bolji). Podržava ne samo kodiranje temeljeno na objektima nego i tradicionalno kodiranje temeljeno na okvirima (engl. frame based coding).

Univerzalni pristup (engl. universal access) MPEG-4 ima jako dobro riješenu riješeno upravljanje s greškama, pa je pogodan za aplikacije koje uključuju bežične i druge mreže s većom vjerojatnošću greške. Osim toga omogućava dobru skalabilnost (vremensku, prostornu i kvalitativnu) što također rezultira dobrom prilagodljivošću na različite aplikacije i prijenosne putove.

Kombinira elemente digitalne TV, interaktivne grafike i Weba. Dozvoljava odvojeno kodiranje svakog od objekata koji čine scenu. Video objekti i pozadina scene mogu se pojedinačno definirati i manipulirati. MPEG-4 temelji se na konceptu Video object plane (VOP). Pretpostavka je da se svaki frame ulaznog video signala segmentira u niz VOP-ova različitih oblika. Svako takvo područje pokriva određeni dio slike. Oblik i položaj VOP-ova može se mijenjati iz frame-a u frame. Niz VOP-ova (misli se na vremenski niz) naziva se video objekt (VO). Svaki VO može se kodirati u posebnom bitstream-u. MPEG-4 specificira sintaksu za multipleksiranje i demultipleksiranje (sastavljanje) koja omogućava prijemniku da dekodira i združi različite VO u jedan frame. MPEG-4 omogućava kodiranje prirodnog ali i sintetiziranog vido signala.

Slika 13.18 Normalno i alternativno skeniranje koncept video objekata omogućava brojnu funkcionalnost koja nije moguća u drugim načinima kompresije (kao npr. u MPEG-1 i MPEG-2) Svaki VO je opisan informacijama o teksturi, obliku i vektoru pokreta.

Page 128: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

127

Osnovne komponente MPEG-4 kodera

Procjena pokreta reducira vremensku redundanciju Koder teksture koristi se za kodiranje reziduala nakon procjene vektora pokreta Koder oblika specificira područje objekta i konture unutar scene Sprite coding Wavelet kodiranje teksture Vremenska, prostorna i hibridna skalabilnost

Procjena pokreta temelji se na block matching tehnici razlika najsličnijeg bloka u odnosu na trenutni naziva se vektor pokreta Motion vector (MV) razlika najsličnijeg i trenutnog bloka kodira se pomoću DCT Procjena pokreta se temelji na sličnim tehnikama kao i kod MPEG-1 i MPEG-2 (kriterij sličnosti, veličina prozora, točnost jedan ili pola piksela). Neka poboljšanja su adaptivna selekcija veličine bloka (16x16 piksela ili četiri bloka od 8x8 piksela) Kodiranje teksture kodiranje teksture koristi se kod Intra-VOP-ova i kod razlike dobivene nakon procjene pokreta. Temelji se na DCT a algoritam je sličan onome kod H.261, MPEG-1 i MPEG-2. Definicija I-VOP, P-VOP i B-VOP je slična definiciji I slike, P slike i B slike kod MPEG-1 MPEG-2. Razlike i poboljšanja uglavnom se javljaju zbog kodiranja objekata. Poboljšanja uključuju Intra DC i AC predviđanje (predviđanje nije samo AC nego i DC koeficijenata)

Page 129: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

128

kodiranje teksture za VOP bilo kakvog oblika

Video objekti i pozadine (sprites)

Mirna pozadina (static sprite) – velika mirna slika koju treba kodirati samo jednom za više slika Dekoder kombinira VOPove i pozadine da bi kreirao originalni video Moguća je skalabilnost na razini sadržaja i na razini objekta Individualni audio kanali mogu se pridružiti objektu

Vremenska, prostorna i hibridna skalabilnost Skalabilnost je moguća na razini video objekata (različita rezolucija za različite dijelove scene).

ilustracija prostorne skalabilnosti

Page 130: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

129

ilustracija vremenske skalabilnosti 13.6. H.264/MPEG AVC Pregled standarda H.264 Standard H.264 je po stupnju kompresije trenutno najbolji video koder. Razvijen je u suradnji International Organization for Standardization i International Telecommunication Union29. Osim pod imenom H.264, poznat je i pod imenom MPEG AVC30 (MPEG Advanced Video Coding). H.264 je koder opće namjene s ciljanim aplikacijama od mobilnog videa s niskim brzinama prijenosa do televizije visoke rezolucije.

Trenutno praktično sve video aplikacije visoke rezolucije (digitalna TV, DVD, video na zahtjev, …) koriste MPEG-2 video standard. MPEG-2 je standardiziran još 1994. godine, a u međuvremenu su značajno poboljšani algoritmi za video kodiranje, ali je i smanjena cijena memorije te se povećala brzina procesora. Sve je to omogućilo razvitak H.264 kao računalno vrlo složenog, ali i efikasnog standarda za video kodiranje.

U usporedbi s MPEG-2 standardom, za percepcijski istu kvalitetu, H.264 kodira na brzini od jedne trećine do jedne polovine. Unatoč tome, zbog široke baze video materijala, brojnog postojećeg softvera i hardvera za MPEG-2, H.264 još uvijek nije široko prihvaćen. Izuzetak su telekomunikacijske kompanije koje koriste H.264 za IP usluge jer nemaju nikakva ograničenja već postojeće infrastrukture. Spomenimo i da je H.264 standard prihvaćen, zajedno s MPEG-2 i VC-1, kao standard za HD-DVD i Blu Ray.

H.264 je funkcionalno sličan MPEG-2 uz nekoliko novih metoda koje značajno povećavaju efikasnost kodiranja. Međutim, H.264 se značajno razlikuje od MPEG-4 video kodera (točnije MPEG-4 Part 2, podsjetimo da je i MPEG AVC službeno dio MPEG-4 standarda). Naime, MPEG-4 Part 2 i H.264 imaju značajno različito viđenje problema kodiranja videa. Oba su namijenjena kodiranju videa, ali MPEG-4 Part 2 naglasak stavlja na fleksibilnost, dok H.264 naglasak stavlja na efikasnost i

29 Radi se o suradnji MPEG skupine unutar International Organization for Standardization (ISO/IEC/SG29/WG11) i Video coding experts group unutar International Telecommunication Union (VCEG, ITU-T/SG16/Q.6). 30 Točnije, radi se o ISO/IEC MPEG-4 Part 10 (odnosno formalno ISO/IEC 14496-10). Dakle, standard koji se kod ITU naziva H.264, je kod ISO službeno dio standarda MPEG-4. Ipak, obično se promatra odvojeno od MPEG-4, i to najčešće kao MPEG AVC. Standard je još poznat i pod imenom JVT (Joint Video Team), te ponekad i kao H.26L. MPEG AVC i H.264 su potpuno isti standardi.

Page 131: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

130

pouzdanost. Stoga MPEG-4 Part 2 pruža mogućnost rada sa širokim spektrom video podataka što uključuje pravokutne okvire („tradicionalni“ video materijal), video objekte (dijelove scene proizvoljnog oblika), mirne slike te kombinaciju prirodnih (snimljenih) i sintetičkih (računalno generiranih) vizualnih informacija. MPEG-4 to omogućava kroz kodne alate organizirane u profile. Klase profila uključuju „obične“ profile (kodiranje pravokutnih okvira), profile temeljene na objektima, profile za kodiranje teksture, skalabilne profile, itd.

Za razliku od fleksibilnog pristupa kod MPEG-4, H.264 se prvenstveno koncentrira na efikasnost kodiranja pa tako ima i značajno manje profila od MPEG-4 Part 2.

Kao i svi video koderi koje smo obrađivali, i H.264 koristi hibridni pristup kojim se eliminiraju redundancije u četiri osnovne kategorije:

Percepcija (poduzorkovanje krome, kvantizacija), Prostor (transformacije kao npr. DCT), Vrijeme (procjena pokreta), Statistika (Huffmanovo kodiranje, aritmetičko kodiranje).

Kao i kod prethodnih standarda, H.264 također ne definira koder/dekoder nego sintaksu

kodiranog toka bitova (engl. bitstream) i metodu dekodiranja toka bitova. Ipak, u praksi svi koderi/dekoderi koji zadovoljavaju zahtjeve sintakse H.264 standarda imaju iste ili slične blok sheme. Te blok sheme prikazane su na slikama 13.19 (koder) i 13.20 (dekoder). Uočite da su svi funkcionalni elementi u koderu/dekoderu (procjena pokreta, transformacija, kvantizacija, entropijsko kodiranje, …) prisutni i kod prethodnih standarda (MPEG-1, MPEG-2, MPEG-4, H.261, H.263) pa se važne promjene kod H.264 očituju u detaljima svakog od postojećih funkcionalnih blokova, a ne u dodavanju nekih novih.

Slika 13.19 Blok shema H.264 kodera

Slika 13.20 Blok shema H.264 dekodera

Page 132: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

131

Osnovne razlike H.264 u odnosu na MPEG-2 Inter-okvirno predviđanje Inter-okvirno predviđanje koristi kompenzaciju pokreta slično kao i MPEG-2, ali uz nekoliko značajnih poboljšanja:

Promjenljiva veličina bloka za kompenzaciju pokreta, Višestruka referenca za predviđanje, Generalizirano predviđanje B okvira, Mogućnost korištenja B okvira kao reference, Otežano predviđanje, Točnost vektora pokreta od jedne četvrtine piksela.

Kompenzacija pokreta kod H.264 koristi promjenjive veličine blokova, pa se makroblok može

kodirati kao jedan blok od 16x16 piksela, dva od 16x8, dva od 8x16 ili 4 od 8x8. Nadalje, i svaki blok od 8x8 piksela može se kodirati kao jedan blok od 8x8 piksela, dva od 4x8, dva od 8x4 ili 4 od 4x4. Moguće podjele prikazane su na slici 13.21. I-okvir može koristiti do 16 referentnih okvira.

Biprediktivni makroblok (B-makroblok) se kod H.264 može predviđati na temelju bilo koja dva referentna makrobloka. Podsjetimo, kod MPEG-2, predviđanje je moralo biti na temelju jednog prošlog i jednog budućeg okvira (makrobloka). Nadalje, za razliku od MPEG-2, B-okvir se može koristiti kao referentni okvir (dakle kao okvir na temelju kojeg se može vršiti predviđanje).

Slika 13.21 Moguće podjele makroblokova i blokova kod inter-okvirnog predviđanja Intra-okvirno predviđanje H.264 bolje koristi prostornu redundanciju u odnosu na MPEG-2 i to tako da dozvoljava intra-okvirno predviđanje. Makroblok (MB) se kodira kao intra-MB kada vremensko predviđanje nije moguće (za prvi okvir u videu) ili kada je neefikasno (kod promjene scene).

Predviđanje kod intra-MB se temelji na susjednim pikselima u istom okviru jer je dosta vjerojatno da su slični pikselima MB kojeg kodiramo. MB se može kodirati kao jedan blok od 16x16 piksela, kao 4 bloka od 8x8 piksela ili kao 16 blokova od 4x4 piksela.

Na slici 13.22 prikazani su susjedni pikseli koji se koriste za predviđanje bloka 4x4 piksela. Trenutni pikseli (označeni rednim brojevima) predviđaju se koristeći otežane prosjeke susjednih piksela (označenih slovima). Kodira se razlika između predviđenih i stvarnih vrijednosti.

Page 133: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

132

Slika 13.22 Intra-okvirno predviđanje kod H.264 Transformacijsko kodiranje H.264, kao i MPEG-2 koristi transformacijsko kodiranje (engl. transform coding) kako bi kodirao rezidual (razliku predviđene i stvarne vrijednosti). Međutim, za razliku od tradicionalno korištene DCT, H.264 koristi cjelobrojnu transformaciju (engl. integer transform) i to na blokovima veličine 8x8 i 4x4 piksela. Cjelobrojna transformacija je napravljena trako da koristi samo zbrajanje i posmicanje (Shifting), te tako da ne nama nikakve razlike, u odnosu na original, nakon inverzne transformacije.

Ovakav pristup, u usporedbi s DCT, značajno smanjuje složenost. Veličina blokova za transformacijsko kodiranje neovisna je o veličini blokova za kompenzaciju pokreta odnosno intra-okvirno predviđanje. Entropijsko kodiranje Entropijski koder ima zadatak reducirati statističku redundanciju u komprimiranom videu. Entropijski koder u H.264 koristi univerzalni VLC (Variable-length coding) za sve elemente sintakse osim za kvantizirane koeficijente. Koeficijenti se mogu kodirati ili koristeći context-based adaptive VLC (CAVLC) ili koristeći context-based adaptive binary arithmetic coding (CABAC). CABAC daje najbolje rezultate, ali je računski najzahtjevniji.

S druge strane, MPEG-2 video koder koristi fiksnu VLC tablicu za sve elemente sintakse. Te VLC tablice izračunaju se na temelju velikog broja video uzoraka kako bi u općem slučaju dale dobre rezultate. Fiksne VLC tablice su jednostavne za implementaciju, ali ne mogu u potpunosti iskoristiti statističku redundanciju kao što mogu adaptivne. 13.7. OSTALI VIDEO KODERI Najčešće korišteni video koderi su oni nastali pod okriljem ISO (MPEG-1 i MPEG-4), pod okriljem ITU-T (H.261 i H.263) te oni nastali njihovim zajedničkim radom (MPEG-2/H.262 i H.264/MPEG-4 AVC).

Ipak, osim nabrojenih video kodera postoji još niz drugih od kojih samo nekoliko ima značajniju primjenu. To su VC-1 (nasljednik od Windows Media Video), RealVideo, Audio Video Standard (AVS). VC-1

Page 134: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

133

VC-1 je neformalno ime za SMPTE31 421M video koder/dekoder. Službeno je završen u travnju 2006. Iako se najčešće veže uz Microsoft, VC-1 ima 15-tak tvrtki u patentnom vlasništvu. VC-1 je nastavak razvoja Windows Media Video (WMV) video kodera. Naime WMV je proprietary tehnologija Microsofta koji ju je prepustio SMPTE organizaciji 2003. godine tako da je WMV verzija 9 izašla pod imenom VC-1. WMV je nastao kao nestandardna implementacija MPEG-4 Part 2, ali je u međuvremenu toliko evoluirao da se obično WMV verzija 9 (odnosno VC-1) smatra posebnim video koderom. Najpopularnija implementacija je u Windows Media Video 9 i 10. Obično je upakirana u ASF ili AVI kontejner. RealVideo RealVideo je proprietary tehnologija koju je razvila tvrtka RealNetworks. Razvoj je počeo 1997., a u 2006. godini je aktualna verzija 10. U početku je to bila varijanta H.263 kodera, ali je kasnije razvijena proprietary tehnologija. Najčešće se koristi za videostreaming. Najpopularnija aplikacija je RealPlayer. Uobičajeno je upakirana u .rm kontejner. Audio Video Standard Razvitak Audio Video Standard (AVS) je inicirala vlada Narodne Republike Kine. Prvenstveni cilj je bilo smanjiti ovisnost kineske industrije o relativno skupim licenčnim pravima na patentom zaštićene video kodere. Standard je dovršen 2005. godine. Jedna od popularnijih aplikacija je VLC video player.

Spomenimo i da je DivX , popularni video koder, zapravo samo varijanta (implementacija) MPEG-4 video standarda pa se i ne promatra posebno. Formati video datoteka

Slično kao i kod sažimanja slika, tako i kod sažimanja videa treba razlikovati metodu

sažimanja (koder/dekoder) od načina na koji su podaci upakirani u tzv. kontejnere (engl. container). Kontejner je format datoteke koji može sadržavati različite tipove podataka, komprimirane nekim od kodera. Neki jednostavniji kontejneri mogu sadržavati samo različite tipove audio kodera/dekodera, dok napredniji kontejneri mogu podržavati audio, video, titlove, meta-podatke kao i sve potrebno za njihovo sinkronizirano prikazivanje. Neki od poznatijih kontejnera su:

AVI (Audio Video Interleave - standardni Microsoft Windows kontejner) MOV (standardni Aple QuickTime kontejner) MP4 (standardni kontejner za MPEG-4) ASF (standardni kontejner za Microsoft WMA i WMV) RealMedia (standardni kontejner za RealVideo i RealAudio) 3gp (pojednostavljena verzija MP4 kontejnera, koristi se na mobilnim telefonima) FLV (Flash Video – vlasnički format koji se koristi za video distribuciju preko Interneta

koristeći Adobe Flash Player - obično prenosi varijantu H.263 kodera ili VP6 koder/dekoder)

31 Society of Motion Picture and Television Engineers

Page 135: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

134

14. VIRTUALNA STVARNOST Izraz Virtualna stvarnost (Virtual Reality) predložio je Jaron Lanier 1989. Slični termini su Umjetna stvarnost (Artificial Reality, Myron Krueger, 1970tih), te u zadnje vrijeme i Virtualni svjetovi (Virtual Worlds), Virtualne okoline (Virtual Environments). Što je Virtualna stvarnost? Virtualna stvarnost je sustav (dakle i hardver i softver) koji korisniku daje osjećaj prisutnosti u samoj aplikaciji, te omogućava da korisnik aktivno sudjeluje u aplikaciji.

Povijest Virtualne stvarnosti 1929 – prvi simulator leta

Page 136: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

135

1956 - Sensorama 3D film vibracije miris zvuk vjetar grafika nije interaktivno

1968 - Ivan Sutherland u radu "A head-mounted three dimensional display" prezentirao stereoskopski head-mounted uređaj s praćenjem pokreta. Uređaj koristi CRT s posebnom elektronikom koja omogućava da različita slika dođe u lijevo i desno oko.

Page 137: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

136

1990 – prvi komercijalni javno dostupni sustav – VR arkada za dva igrača s head-mounted uređajem, posebnim prstenom u kojem je bio svaki igrač te rukavicom.

Virtualna stvarnost se primjenjuje u raznim područjima

zabava (igre, filmovi, ...) edukacija dizajn arhitektura znanost inženjerstvo vizualizacija simulatori medicina vojska

Senzori virtualne stvarnosti

• kontinuirano praćenje pokreta • diskretni ulazi koje generira korisnik (pritisni tipku, daj glasovnu naredbu) 3 videokamera stereo mikrofon senzor mirisa senzor sile (force feedback sensor) senzor praćenja pokreta tijela

Page 138: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

137

Senzori sile volan tipke platforma prstenasta platforma

senzor praćenja pokreta tijela glava ruka i prsti oči tijelo stopala ostalo (temperatura, otkucaji srca, ...) indirektno praćenje (uređaji koji nisu na tijelu)

Page 139: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

138

Načini praćenja pokreta tijela elektromagnetsko mehaničko optičko videometrijsko ultrasonično inercijsko neuralno

Page 140: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

139

Uređaji za stvaranje virtualne stvarnosti

uređaji za prikazivanje 3D slika i videa (monitori, kacige, projektori, ...) zvučnici generatori mirisa generatori sile (rukavice, sjedalice, volani, pod, ...)

Uređaji za prikazivanje 3D slika i videa Čovjek ima osjećaj trodimenzionalnosti zahvaljujući tome što lijevo i desno oko vide različite slike. Na temelju tih različitih slika u mozgu se stvara osjećaj prostornosti. Ideja uređaja za prikazivanje 3D slika je da se svakom oku dovede različita slika, tj. slika koju bi to oko uistinu vidjelo. Osim toga, mozak može rekonstruirati 3D sliku i na temelju kretanja i poznavanja prostora. Ali taj efekt je vrlo ograničen.

Page 141: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

140

Postoje različiti načini da se očima dovedu različite slike, a možemo ih podijeliti na • stereoskopski (zahtijeva od korisnika da nosi neki uređaj (naočale, kaciga, i sl.) • autostereoskopski (korisnik ne mora nositi nikakav uređaj, uglavnom su prototipovi (npr.

holografija, elektroholografija i sl.), ipak postoje i komercijalni proizvodi ali su još uvijek relativno skupi (primjerice 3D LCD u kombinaciji s sustavom za praćenje očiju))

Sharp Actius RD3D – prvi 3D (autostereoskopski) notebook

Stereoskopski uređaji za prikazivanje 3D slika i videa

• koji koriste monitor (CRT) i posebne, pasivne, naočale • koji koriste aktivne uređaje (kaciga, naočale, ...) koji imaju LCD ekran (poseban za svako

oko)

Tehnike koje omogućavaju da s monitorima (CRT) možemo gledati 3D slike

• interlacing, • page flipping • sync doubling, • anaglyph

Ove tehnike (osim anaglyph) ne mogu se koristiti sa standardnim LCD monitorima. Inerlace tehnika je pogodna kada je izlaz u interlace formatu. Slika je isprepletena na način da je primjerice lijeva slika smještena u parne, a desna u neparne linije. Linije se iscrtavaju naizmjenično,

Page 142: MM skripta 11 - racunarstvo550.xyz. semestar/Multimedijske mreže i sustavi... · Fakultet elektrotehnike, strojarstva i brodogradnje u Splitu MULTIMEDIJSKI SUSTAVI Hrvoje Dujmić

141

neparne pa parne (kao i kod televizora). Posebne naočale (koje kontrolira računalo), sprječavaju slici da dođe u desno oko kada je na ekranu slika namijenjena lijevom oku i obrnuto. Frekvencija gledanja je 1/2 frekvencije osvježavanja ekrana. Sync doubling je pogodan kada se slika za lijevo oko pohrani u gornju polovicu ekrana, a za desno oko u donju polovicu. U sredini slike pošalje se dodatni sinkronizacijski impuls koji rezultira time da se svaka polovica slike prikaže na cijelom ekranu. Time se slike namijenjene lijevom i desnom oku prikazuju sekvencijalno, jedna za drugom. Page flipping je pogodan kada je slika pohranjena u dva posebna kanala. Na zaslonu se prikazuju naizmjenično, jedna pa druga slika. Anaglyph je sustav koji prikazuje 3D slike tako da lijevu i desnu sliku kodira u dvije komplementarne boje. Najčešće su to crvena i zelena ili plava i zelena. Potrebne su jednostavne naočale (filtar), ali je kvaliteta slika skromniji. Osim toga 3D slike (i video) mogu se gledati i koristeći polarizacijske naočale (stakla). Kod tog pristupa potrebna su dva projektora i posebna polarizacijska platna. To je pristup koji se najčešće koristi kod 3D kina i zabavnih parkova jer su naočale jeftine i ne trebaju sinkronizaciju. Međutim projekcijska oprema je skupa.