鲁棒编码:重同步霍夫曼码与双向码的探索
1. 重同步霍夫曼码(RHC)
霍夫曼码在编码领域具有重要地位,重同步霍夫曼码(RHC)的出现旨在解决编码过程中的错误同步问题。RHC 包含一组码字,其中至少有一个同步码字(SC),其特性是任何比特串后面接上 SC 都会形成有效的码字序列。
1.1 同步码字的确定
给定一组前缀码字,设最短码字长度为 m。通过对码树中所有非终端节点进行复杂测试,确定一个整数 q < m。测试过程会遍历码树的非终端节点,统计该节点后代中相同长度的码字数量。计算出 q 后,SC 为码字 (0^q1^{m - q}0^q)。
例如,在图 3.10 的码树中,m = 2,测试得出 q = 1,所以 SC 是 010。对于图 3.11 有 20 个码字的码树,最短码字为 3 位,即 m = 3,q = 2,SC 为 00100。
SC 存在的条件如下:
1. m 的值为 2、3 或 4。
2. 码中必须包含从 m 到 2m - 1 所有长度的码字。
3. 测试得出的 q 值必须小于 m。
1.2 同步码字的作用
当编码文件在点 A 出现错误,而 SC 在点 B 出现时,从 A 到 B(包括 SC)的比特串是有效的码字串(尽管可能不是正确的码字),解码器在点 B 实现同步(可能会漏解码 SC 本身)。
1.3 重置字
当 SC 跟随码树中的非终端节点时,操作较为简单。结果可能是一个或两个码字。在前者情况下,SC 是单个结果码字的后缀;在后者情况下,SC 最左边的一些零完成内部节点的字符串,SC 的其余部分
超级会员免费看
订阅专栏 解锁全文
1563

被折叠的 条评论
为什么被折叠?



