主要内容

arithdeco

由算术解码解码二进制代码

描述

例子

dseq= arithdeco (代码,计数,len)解码二进制算术编码代码恢复相应的序列len符号。输入计数指定源的统计清单的数量乘以每个符号的来源字母出现在测试数据集。代码必须是一个输出的arithenco函数。

例子

全部折叠

使用源two-symbol字母表,产生一组测试数据,99%的符号是1 s。1000编码符号从这个来源产生向量少于1000个元素的代码。编码序列中的元素的实际数量变化取决于特定的随机序列。

指定从源字母符号1发生99次测试数据集。

数量= (99 1);

生成一个随机序列长度为1000。

len = 1000;seq = randsrc (1 len [1 2;0 . 01]);

对随机序列编码。然后,解码编码序列。

代码= arithenco (seq,数量);dseq = arithdeco(代码、数量、长度(seq));

验证解码序列匹配最初的随机序列。

isequal (seq dseq)
ans =逻辑1

输入参数

全部折叠

指定二进制算术编码,作为一个非负二进制行向量。这个值必须产生的二进制算术编码arithenco函数。

数据类型:

符号,统计指定为一个积极的数字向量。这个输入指定的次数源字母表的每个符号出现在测试数据集。

数据类型:

长度的序列进行解码,指定为一个积极的标量。

数据类型:

输出参数

全部折叠

解码算法代码的序列len源符号,指定为一个积极的数字行向量。

算法

arithdeco函数使用中描述的算法[1]

引用

[1]Sayood,哈立德。介绍数据压缩。第二版。旧金山:摩根Kaufmann出版社,2000。

版本历史

之前介绍过的R2006a

另请参阅

功能

主题