Exponential-Golomb coding: Difference between revisions

Content deleted Content added
m minor wording improvement
Describing Exp-Golomb code for k>0, not just k=0; nonnegative, not positve
Line 1:
'''Exponential-Golomb code''' (or just '''Exp-Golomb code''') is a family of [[Universal code (data compression)|universal codecodes]], encodingparameterized theby positive[[whole number]] integers<math>k</math>. To code a numbernonnegative integer in exp-Golomb code <math>k</math>:
 
# Write all but the numberlast <math>k</math> bits plus 1 in binary.
# Count the bits written, subtract one, and write that number of starting zero bits preceding the previous bit string.
# Write the last <math>k</math> bits in binary.
 
TheFor <math>k=0</math> the code begins:
0 => 1 => 1
1 => 10 => 010
Line 16 ⟶ 17:
...
 
Exp-Golomb coding for <math>k=0</math> is used in the [[H.264/MPEG-4 AVC]] video compression standard, in which there is also a variation for the coding of signed numbers by assigning the value 0 to the binary codeword '0' and assigning subsequent codewords to input values of increasing magnitude and alternating sign.
 
Exp-Golomb coding is also used in the [[Dirac (codec)|Dirac video codec]].
 
ExpThe <math>k=0</math> exp-Golomb code is identical to the Elias gamma code of the same number plus one. Thus it can encode zero, whereas Elias gamma can only encode numbers greater than zero.
 
Despite the similar name, Expexp-Golomb is notonly relatedsomewhat similar to [[Golomb coding]], which is a type of entropy coding but not a universal code.
 
'''See also:''' [[Elias gamma coding]], [[Elias delta coding]], [[Elias omega coding]]