Oui, mais cela n'empêche pas que les deux sont des codes de type VLC. Cf. par exemple ce cours de théorie de l'information : le chapitre 5 est intitulé « Variable-length coding » et la section 5.3 est « Arithmetic Codes » (j'avais commencé par citer Wikipedia mais vu que cette page considère LZ comme un code VLC, j'ai trouvé que ça ne faisait pas très crédible…)
Ce qui définit un code de type VLC, c'est que chaque symboles source est représenté par un nombre de bits différent après compression. Dans le cas du code de Huffman, ce nombre de bits est entier et la séquence qui représente un symbole donné est toujours la même. Dans le cas du code arithmétique, ce nombre de bits est fractionnaire et la séquence qui représente un symbole donné varie en fonction des symboles voisins. Dans les deux cas, chaque symbole source correspond à un nombre de bits variable après compression.
Par opposition, un codage de type LZ77 n'est pas un code VLC puisque les symboles codés ont tous la même taille indépendamment des symboles source.
PS: Je sais que les normes MPEG (et JPEG) utilisent le terme « VLC » pour désigner un code de Huffman. Ceci est principalement dû à des raisons historiques puisqu'à l'origine Huffman était le seul code VLC utilisé. Quand H264/JPEG2000 ont introduit le codage arithmétique, ils ont préféré garder l'appellation « VLC » pour la méthode historique afin de rester cohérent avec les normes existantes.
[^] # Re: Pinaillage
Posté par jeberger (site web personnel) . En réponse à la dépêche H.265 est finalisé. Évalué à 8.
Oui, mais cela n'empêche pas que les deux sont des codes de type VLC. Cf. par exemple ce cours de théorie de l'information : le chapitre 5 est intitulé « Variable-length coding » et la section 5.3 est « Arithmetic Codes » (j'avais commencé par citer Wikipedia mais vu que cette page considère LZ comme un code VLC, j'ai trouvé que ça ne faisait pas très crédible…)
Ce qui définit un code de type VLC, c'est que chaque symboles source est représenté par un nombre de bits différent après compression. Dans le cas du code de Huffman, ce nombre de bits est entier et la séquence qui représente un symbole donné est toujours la même. Dans le cas du code arithmétique, ce nombre de bits est fractionnaire et la séquence qui représente un symbole donné varie en fonction des symboles voisins. Dans les deux cas, chaque symbole source correspond à un nombre de bits variable après compression.
Par opposition, un codage de type LZ77 n'est pas un code VLC puisque les symboles codés ont tous la même taille indépendamment des symboles source.
PS: Je sais que les normes MPEG (et JPEG) utilisent le terme « VLC » pour désigner un code de Huffman. Ceci est principalement dû à des raisons historiques puisqu'à l'origine Huffman était le seul code VLC utilisé. Quand H264/JPEG2000 ont introduit le codage arithmétique, ils ont préféré garder l'appellation « VLC » pour la méthode historique afin de rester cohérent avec les normes existantes.