【问题标题】:Is there a name for encoding a sequence of bytes as differences from the previous byte?是否有将字节序列编码为与前一个字节不同的名称?
【发布时间】:2020-01-23 06:21:44
【问题描述】:

例如,将00 01 02 03 06 07 08 09 编码为00 01 01 01 03 01 01 01 以提高对数据应用压缩算法的效率(例如行程编码)?

这样的编码可以使用:

temp = 0
for byte in encoded:
    temp += byte
    decoded.append(temp)

【问题讨论】:

标签: algorithm encoding binary compression


【解决方案1】:

Delta encoding 与您的描述相似。

Delta 编码是一种以以下形式存储或传输数据的方式 顺序数据之间的差异(增量)而不是完整的 文件。

【讨论】:

  • 这也是我发现的最接近的东西 - 但维基百科似乎只根据文件之间的差异而不是单个文件中的字节之间的差异来描述增量编码?
  • 据我了解,Delta 编码只是一个通用定义,可以根据情况应用。对于您的情况:您计算 2 个字节之间的差异。但它也可以在 2 个文件、2 帧视频之间……这实际上取决于您选择数据“单位”的方式
  • 如果您愿意,可以将其称为“字节级增量编码”,但@thienDX 的答案是正确的。你所说的东西是任意的,它结合了人们(比如你!)实际使用的术语。
猜你喜欢
  • 1970-01-01
  • 2015-11-29
  • 2012-07-19
  • 1970-01-01
  • 1970-01-01
  • 2014-02-22
  • 2014-08-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多