Context-adaptive binary arithmetic coding
Cet article est une ébauche concernant l’informatique et les télécommunications.
Context-adaptive binary arithmetic coding ou CABAC que l'on peut traduire par codage arithmétique binaire adaptable au contexte est un type de codeur entropique utilisé dans la norme de compression vidéo H.264/AVC ainsi que dans la norme H.265/HEVC. Il s'agit d'un codeur arithmétique dont la compression est dite sans perte.
Algorithme
Le CABAC possède de nombreux modes de probabilités pour différents contextes. Tout d'abord, il convertit tous les symboles non-binaires en symboles binaires. Puis, pour chaque bit, le codeur sélectionne le modèle de probabilité le plus adapté et utilise les informations des éléments voisins pour optimiser l'estimation de la probabilité. Le codage arithmétique est ensuite appliqué pour compresser les données résultantes.
Application dans la norme H.264
Dans la norme H.264, il existe deux codeurs entropiques qui se distinguent des autres normes vidéo : CAVLC ( (en)Context-adaptive variable-length coding) et CABAC ((en) Context-adaptive binary arithmetic coding). Ce dernier n'est pas utilisé dans tous les profils de codage définis par la norme : il est seulement supporté dans le profil Main et des profils supérieurs, c'est-à-dire supérieurs par le débit qu'ils autorisent. La raison est due à la complexité du CABAC qui nécessite une grande quantité de ressources pour traiter et décoder les données, en comparaison avec des algorithmes similaires. En comparaison, le CAVLC est moins exigeant au niveau des ressources, c'est pourquoi il est présent sur tous les profils et les plus petites plateformes (par exemple les mobiles).
Il est également difficile de paralléliser les différents traitements à cause de leur dépendance avec les autres contextes précédemment calculés.
Mais malgré sa complexité, CABAC fournit de meilleurs résultats de compression que la plupart des algorithmes d'encodage utilisés dans l'encodage vidéo ce qui fait de lui l'un des premiers avantages du schéma d'encodage de la norme H.264. En effet, son gain par rapport à CAVLC est d'environ 10 % dans des conditions similaires.
Références
- (en) E. G. Richardson, H.264 and MPEG-4 Video Compression : Video Coding for Next-generation Multimedia, Chichester, John Wiley & Sons Ltd., , 281 p. (ISBN 978-0-470-84837-1)
- (en) Introduction au CABAC
Annexes
Articles connexes
Liens externes
- (en) tutoriels H.264
- (en) Introduction to Arithmetic Coding. 60 pages. CABAC inclus.
- (en) Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard. 17 page introduction.
- (en) Arithmetic Coding for Data Compression. Contient des instructions étape par étape utiles.
- (en)"Context-Based Adaptive Binary Arithmatic Coding in H.264/AVC Video Compression Standard", CASVT July 2003, D.Marpe,H.Schwarz, T.Weigand.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.