CABAC

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

CABAC (ang. Context-Adaptive Binary Arithmetic Coding) - kodowanie entropijne użyte w kodeku obrazu AVC jako opcjonalne względem CAVLC (Context-Adaptive Variable Length Coding). W wyniku zastosowania CABAC uzyskujemy nawet do 20% mniejszy strumień binarny względem kodowania CAVLC.

Jednym z głównych twórców CABAC-a jest Detlev Marpe z Instytutu Fraunhofera z siedzibą w Berlinie.

Algorytm[edytuj | edytuj kod]

CABAC opiera się na adaptacyjnym kodowaniu kontekstowym ciągu symboli binarnych. Dane wyjściowe kodera obrazu (dane sterujące, współczynniki transformaty błędu predykcji, wektory ruchu) poddawane są procesowi binaryzacji za pomocą zdefiniowanych w standardzie książek kodowych, zależnie od kontekstu (poprzednich symboli) w jakim wystąpiły. Następnie takie dane binarne podawane są na koder arytmetyczny ze zdefiniowanym progiem renormalizacji oraz modelem prawdopodobieństwa wystąpienia danego symbolu binarnego. Wynikowe symbole kodera arytmetycznego zapisywane są do strumienia binarnego.

Cabac catala.PNG

Bibliografia[edytuj | edytuj kod]

  • H.264/MPEG-4 Part 10 White Paper. 10-2002. - dwie strony podsumowania na temat MPEG CABAC.
  • Iain E. G. Richardson: H.264 and MPEG-4 Video Compression: Video Coding for Next-generation Multimedia. 2003.
  • D.Marpe,H.Schwarz, T.Weigand: Context-Based Adaptive Binary Arithmatic Coding in H.264/AVC Video Compression Standard. 07-2003.

Linki zewnętrzne[edytuj | edytuj kod]