Communications Toolbox | ![]() ![]() |
Decode binary code using arithmetic decoding
Syntax
Description
dseq = arithdeco(code,counts,len)
decodes the binary arithmetic code in the vector code
to recover the corresponding sequence of len
symbols. The vector counts
represents the source's statistics by listing the number of times each symbol of the source's alphabet occurs in a test data set. This function assumes that the data in code
was produced by the arithenco
function.
Examples
This example is similar to the example on the arithenco
reference page, except that it uses arithdeco
to recover the original sequence.
counts = [99 1]; % A one occurs 99% of the time. len = 1000; seq = randsrc(1,len,[1 2; .99 .01],19069); % Random sequence code = arithenco(seq,counts); dseq = arithdeco(code,counts,length(seq)); % Decode. isequal(seq,dseq) % Check that dseq matches the original seq.
Algorithm
This function uses the algorithm described in [1].
See Also
References
[1] Sayood, Khalid, Introduction to Data Compression, San Francisco, Morgan Kaufmann, 2000.
![]() | apkconst | arithenco | ![]() |