无损数据压缩是什么

维基 问答 2022-05-06 07:00:38 阅读(...)

无损数据压缩(Lossless Compression)是指资料经过压缩后,信息不被破坏,还能完全恢复到压缩前的原样。相比之下,有损数据压缩只允许一个近似原始资料进行重建,以换取更好的压缩率。

无损数据压缩(Lossless Compression),是指资料经过压缩后,信息不被破坏,还能完全恢复到压缩前的原样。相比之下,有损数据压缩只允许一个近似原始资料进行重建,以换取更好的压缩率。无损数据压缩在许多应用程序中使用。例如,ZIP 和 gzip。

无损数据压缩 Lossless Compression

无损数据压缩通常用于严格要求“经过压缩、解压缩的资料必须与原始资料一致”的场合。典型的例子包括文字档、程序可执行文件、程序源代码。有些图片文件格式,例如 PNG 和 GIF,使用的是无损数据压缩。其他例如 TIFF、MNG 则可以采用非破坏性或破坏性压缩。

非破坏性音频格式最常用于归档或制作用途。破坏性音频格式则常用于便携式播放器或存储空间受限制的设备,或不要求音频完全还原的情况。

无损数据压缩技术

多数的无损数据压缩程序会依序进行这两个步骤:

  1. 产生输入资料的统计模型
  2. 利用这个统计模型将较常出现的资料用较短的比特序列表示,较不常出现的资料用较长的比特序列表示

生成比特序列的编码算法主要有霍夫曼编码(也用于 DEFLATE)和算术编码。算术编码能使压缩率接近信息熵所给出的最佳可能压缩率。而霍夫曼编码较简单快速,但在符号的出现几率接近 1 的时候效果不彰。

有两种建构统计模型的主要方法:

  • 在 静态 模型中,会分析资料并创建一个模型,然后将这个模型存储在压缩资料中。这个方法较简单且模块化,但缺点是模型本身可能耗费庞大的空间来存储。而且这个方法对单次的全部压缩资料都使用同一个统计模型,所以如果各个文件之间差异甚大,压缩效果并不好。
  • 在 自适应 模型中,压缩资料的同时模型会不断的更新。虽然会导致压缩初期的压缩率不理想,但随着读取的资料增加,压缩效果也会提升。目前最热门的压缩方法都采用自适应编码方法。

霍夫曼编码与算术编码比较

  • 霍夫曼编码是将每一笔资料分开编码
  • 算术编码则是将多笔资料一起编码,因此压缩效率比霍夫曼编码更高,近年来的资料压缩技术大多使用算术编码
0个人收藏 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • 音频压缩 audio compression

    数据压缩是什么

    数据压缩是按照特定的编码机制用比未经编码少的数据比特或者其它信息相关的单位表示信息的过程。数据压缩能够实现是因为多数现实世界的数据都有统计冗余。
  • OceanBase 分布式关系型数据库

    OceanBase是什么

    OceanBase是由蚂蚁金服、阿里巴巴完全自主研发的分布式关系型数据库。OceanBase具有数据强一致、高可用、高性能、在线扩展、高度兼容SQL标准和主流关系型数据库、低成本等特点。
  • 如何在Mac OS X系统上制作DVD拷贝

    如何在Mac OS X系统上制作DVD拷贝

    将光盘中的个人电影收藏复制到你的Mac电脑能够有效防止光盘损坏造成的数据丢失。然而,复制保护光盘让数据拷贝变得更加困难。使用网络上现有的几款免费工具,可以帮助你很好地解决该问题。
  • AirDroid

    AirDroid是什么

    AirDroid 是一款远程控制软件,无需数据线,搭配 AirDroid 电脑客户端或电脑浏览器打开网页版,即可实现电脑对手机的在线管理。无论是文件传输、远程操控还是电脑接收手机短信通知都可以。
  • AVIF

    AVIF是什么

    AVIF是最年轻但最高效的高级图像压缩编解码器。相同的图像质量AVIF文件大小比JPEG小10倍。 AVIF不仅支持标准动态范围(SDR)图像,还支持高动态范围(HDR)和宽色域(WCG)。它可以存储单个图像和图像序列。
  • bzip2

    bz2是什么

    bzip2(简称bz2) 是数据压缩算法及程序,也是linux下常见压缩文件格式,以后缀为.bz2 结尾的压缩文件。bzip2比传统的gzip或者ZIP的压缩效率更高,但是它的压缩速度较慢。