Arithmetic coding, the way to find decimal representation of codeword

3 次查看(过去 30 天)
seq = [3 3 1 3 3 3 3 3 2 3];
counts = [10 20 70];
code = arithenco(seq,counts)
By implementing this code, I can get arithmetic codeword in matrix
[1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 1 0 0]
it means that it is '0.100011000101101100' in binary.
I want to know average codelength to get code efficiency, so I must know convert the codeword into decimal and get length of it.
I can calculate it easily beacuse above example is not large, however I want to know how to calculate the length in large cases(my codeword in binary length is 5897909)

回答(1 个)

Aghamarsh Varanasi
Aghamarsh Varanasi 2020-11-13
编辑:Aghamarsh Varanasi 2020-11-13
Hi,
You can get the length of the code word using 'size' function
lengthOfCodeWord = size(code,2);

类别

Help CenterFile Exchange 中查找有关 Error Detection and Correction 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by