TopTehnični slovarH.264 - standard kodiranja slike

H.264 - standard kodiranja slike

Leta 2003 je bil sprejet standard H.264, znan tudi kot AVC (Advanced Video Coding), kot 10. del standarda MPEG-4.

 

Standard H.264, podobno kot v prejšnjih MPEG-2 in MPEG-4, uporablja diferencialno kompresijo, to pomeni, tekočo sliko se ustvarja na podlagi ene ali več predhodnih slik ter razlik, ki so se pojavile med njimi v tem času. Vendar je v H.264 uvedenih veliko izboljšav. Po eni strani znatno povečujejo potrebo po računski moči pri kodiranju, a po drugi strani znatno zmanjšujejo hitrost prenosa ob nespremenjeni kakovosti slike.

 

Pomemben element kompresije H.264 je predvidevanje slik (medslično predvidevanje). Gre za predvidevanje naslednje kodirane slike na podlagi predhodno kodiranih in dekodiranih slik. Deluje natanko tako kot v kodirniku in dekoderju, s čemer lahko dekoder odpre kodirano sliko na podlagi napake predvidevanja slike, določene v kodirniku kot razlike med originalno kodirano sliko in njeno napovedjo. Torej se ne pošilja zaporednih slik, pač pa samo napake predvidevanja, ki pri dobrih algoritmih ne vsebujejo veliko informacij in jih je možno kodirati s pomočjo ne velikega števila bitov.

 

V kompresiji H.264 lahko razlikujemo tri vrste okvirjev: I - Intra Coded, P - Predictive, B - Bi-predictive.

 

Sl. 1. Primer zapisa posameznih sličic zaporedja, v katerem se pojavljajo tri vrste okvirjev

 

t - Čas

Okvirji tipa I vsebujejo popolne informacije o dani sliki. Okvirji P vsebujejo informacije o spremembah med sosednjimi okvirji P ali I (slika, ki rezultira, je tvorjena na osnovi ravno teh informacij). Okvirji B so slike, ki so kodirane z uporabo dveh referenčnih slik, in sicer ene pred kodirano sliko in druge, prisotne v zaporedju za kodirano sliko. Pri slikah tipa B se najbolj podobni bloki (makrobloki) vzorcev izberejo iz obeh referenčnih slik, bodisi se določijo kot povprečje blokov obeh referenčnih slik. Velikost vsakega okvirja je seveda odvisna od mnogih dejavnikov. Sprejmemo lahko, da je velikost okvirjev P približno 60% velikosti okvirjev tipa I, medtem ko je velikost okvirjev B lahko le 10% njihove velikosti. Zato iz tega jasno sledi, da, več ko je okvirjev tipa B, ki v dani sekvenci nastopajo en za drugim, večja je kompresija. Ni nujno, da je s tem povezano poslabšanje kakovosti slike.

 

Spodaj je predstavljen primer primerjave kakovosti za tri standarde kompresije kot maksimalne vrednosti razmerja signal-šum (PSNR - Peak Signal-to-Noise Ratio) v odvisnosti od bitne hitrosti.

 

Sl. 2. Primerjava formatov H.264, MPEG-4 in JPEG

 

X - Bitna hitrost

Y - Maksimalna vrednost razmerja signal-šum (PSNR)

Spodaj so navedene nekatere od izboljšav in modifikacij, ki odlikujejo H.264 primerjalno s starejšimi standardi, ki uporabljajo hibridno kodiranje z medslikovno predikcijo (medslikovnim predvidevanjem) s kompenzacijo gibanja.

 

1. Spremenljiva velikost blokov za kompenzacijo gibanja. Kompenzacijo gibanja se lahko izvaja ne le na ravni celih makroblokov, pač pa tudi za njihove dele. V tem primeru se jim propiše ločene vektorje gibanja. Najmanjši bloki imajo velikost (4x4) točke svetilnosti. S tem se dosegajo najmanjše napovedovalne napake, ki se jih lahko predstavi z ne veliko bitov.


2. Predvidevanje gibanja z natančnostjo do 1/4 razmika vzorčenja slike. Velika natančnost vektorjev gibanja omogoča natančnejšo predikcijo s kompenzacijo gibanja.


3. Koriščenje več referenčnih slik - koriščenje daljšeobdobnega spomina, koristnega za napovedovanje odslanjanih območij.


4. Smerna znotrajslikovna predikcija (predvidevanje) za znotrajslikovno kodirane makrobloke.


5. Deblokirni filter odstranja učinke bloka, ki se pojavljajo v slikah predikcije pri močni kompresiji.


6. Kosinusna transformacija poteka na majhnih blokih - (4x4) vzorcev svetilnosti ter (2x2) vzorcev barvnosti, kar omogoča boljšo prilagoditev na lokalne lastnosti slike.


7. Entropno adapcijsko kodiranje: CAVLC (Context-Adaptive Variable Length Coding) - s spremenljivo dolžino besede, in CABAC (Context-Based Binary Arithmetic Coding) - bolj zapleteno aritmetično kodiranje, ki omogoča dosego večje kompresije.

Za polni izkoristek standarda H.264, je treba v kodirniku opraviti optimalne izbire med različnimi možnimi načini kodiranja. Uporaba H.264 je zelo pomembna za sisteme CCTV, saj omogoča zmanjšanje hitrosti prenosa slik brez izgube kakovosti omogoča prenos za večje število kanalov z boljšo kakovostjo.