【问题标题】:Huffman Coding in JPEGJPEG 中的霍夫曼编码
【发布时间】:2011-12-08 15:20:24
【问题描述】:

这是我的 JPEG 图片十六进制内容(我在图片上标记了 FFC4 标记)。如您所见,在字节 0x01 之后有值 0xA2!这怎么可能,因为标准说 0x10 之后的下 16 个字节告诉我们每个长度有多少个代码?不可能有这么多 1 位的代码。我错了吗?

【问题讨论】:

  • 仅供参考,您可以将图片直接上传到您的帖子中。干杯~

标签: compression jpeg huffman-code


【解决方案1】:

您看到的是霍夫曼块的长度(按大端顺序),以字节为单位(减去 2 以包括长度字段的长度)。

霍夫曼块的长度为 0x1a2 字节。 在长度之后有一个字节表示霍夫曼表信息(表号以及该表是否用于交流或直流系数)

在信息值之后开始读取长度码:

    Information Byte = 0x00    
    Number of length 1 codes = 0
    Number of length 2 codes = 0
    Number of length 3 codes = 7
    ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 2017-01-02
    • 2010-10-17
    • 1970-01-01
    相关资源
    最近更新 更多