fbpx
维基百科

无损数据压缩

非破壞性資料壓縮(Lossless Compression),是指資料經過壓縮後,資訊不被破壞,還能完全恢復到壓縮前的原樣。相比之下,破壞性資料壓縮只允許一個近似原始資料進行重建,以換取更好的壓縮率。

非破壞性壓縮在許多應用程式中使用。例如,ZIPgzip

非破壞性壓縮通常用於嚴格要求「經過壓縮、解壓縮的資料必須與原始資料一致」的場合。典型的例子包括文字檔、程式執行檔、程式原始碼。有些圖片檔案格式,例如PNGGIF,使用的是非破壞性壓縮。其他例如TIFFMNG則可以採用非破壞性或破壞性壓縮。非破壞性音訊格式最常用於歸檔或製作用途。破壞性音訊格式則常用於攜帶型播放器或儲存空間受限制的裝置,或不要求音訊完全還原的情況。

非破壞性壓縮技術

多數的非破壞性壓縮程式會依序進行這兩個步驟:

  1. 產生輸入資料的統計模型
  2. 利用這個統計模型將較常出現的資料用較短的位元序列表示,較不常出現的資料用較長的位元序列表示

生成位元序列的編碼演算法主要有霍夫曼編碼(也用於DEFLATE)和算術編碼。算術編碼能使壓縮率接近資訊熵所給出的最佳可能壓縮率。而霍夫曼編碼較簡單快速,但在符號的出現機率接近1的時候效果不彰。

有兩種建構統計模型的主要方法:

  • 靜態 模型中,會分析資料並建立一個模型,然後將這個模型儲存在壓縮資料中。這個方法較簡單且模組化,但缺點是模型本身可能耗費龐大的空間來儲存。而且這個方法對單次的全部壓縮資料都使用同一個統計模型,所以如果各個檔案之間差異甚大,壓縮效果並不好。
  • 自適應 模型中,壓縮資料的同時模型會不斷的更新。雖然會導致壓縮初期的壓縮率不理想,但隨著讀取的資料增加,壓縮效果也會提升。目前最熱門的壓縮方法都採用自適應編碼方法。

霍夫曼編碼與算術編碼比較

  • 霍夫曼編碼是將每一筆資料分開編碼
  • 算術編碼則是將多筆資料一起編碼,因此壓縮效率比霍夫曼編碼更高,近年來的資料壓縮技術大多使用算術編碼

常見的非破壞性壓縮格式

通用格式

  • 變動長度編碼法 (RLE) – 一個非常簡單的方法,在資料連續重複的情況下有不錯的壓縮率
  • LZ77與LZ78LZW – 用於GIF和多種應用
  • LZF (页面存档备份,存于互联网档案馆) – 基本的LZ壓縮法(deflate),對於快速壓縮有做最佳化(Lempel-Ziv Fast)
  • DEFLATE – 用於gzipZIP (從2.0版開始),也是PNG点对点协议(PPP)、HTTPSSH的一部分
  • bzip2 – 使用Burrows-Wheeler變換,速度較DEFLATE慢但壓縮率更高
  • LZMA – 用於7zipxz等程式,相較於bzip2有更好的壓縮率和更快的速度
  • LZO – 專為高速壓縮/解壓縮設計的方法,代價是壓縮率較差
  • Statistical Lempel Ziv英语Statistical Lempel Ziv – 結合統計方法和字典方法,相較於只採用單一方法有更好的壓縮率
  • Brotli – 一個現代的基于LZ的壓縮方法,速度大約與DEFLATE一樣快,但擁有與LZMA相近的壓縮率

圖片格式

3D圖片格式

  • OpenCTM英语OpenCTM – 用於3D三角網格的非破壞性壓縮

音訊格式

  • WAV(無壓縮)

視訊格式

  • Huffyuv英语Huffyuv

常見的非破壞性壓縮演算法


无损数据压缩, 此條目没有列出任何参考或来源, 2021年4月12日, 維基百科所有的內容都應該可供查證, 请协助補充可靠来源以改善这篇条目, 无法查证的內容可能會因為異議提出而移除, 此條目可参照英語維基百科相應條目来扩充, 若您熟悉来源语言和主题, 请协助参考外语维基百科扩充条目, 请勿直接提交机械翻译, 也不要翻译不可靠, 低品质内容, 依版权协议, 译文需在编辑摘要注明来源, 或于讨论页顶部标记, href, template, translated, page, html, title, template. 此條目没有列出任何参考或来源 2021年4月12日 維基百科所有的內容都應該可供查證 请协助補充可靠来源以改善这篇条目 无法查证的內容可能會因為異議提出而移除 此條目可参照英語維基百科相應條目来扩充 若您熟悉来源语言和主题 请协助参考外语维基百科扩充条目 请勿直接提交机械翻译 也不要翻译不可靠 低品质内容 依版权协议 译文需在编辑摘要注明来源 或于讨论页顶部标记 a href Template Translated page html title Template Translated page Translated page a 标签 非破壞性資料壓縮 Lossless Compression 是指資料經過壓縮後 資訊不被破壞 還能完全恢復到壓縮前的原樣 相比之下 破壞性資料壓縮只允許一個近似原始資料進行重建 以換取更好的壓縮率 非破壞性壓縮在許多應用程式中使用 例如 ZIP和gzip 非破壞性壓縮通常用於嚴格要求 經過壓縮 解壓縮的資料必須與原始資料一致 的場合 典型的例子包括文字檔 程式執行檔 程式原始碼 有些圖片檔案格式 例如PNG和GIF 使用的是非破壞性壓縮 其他例如TIFF MNG則可以採用非破壞性或破壞性壓縮 非破壞性音訊格式最常用於歸檔或製作用途 破壞性音訊格式則常用於攜帶型播放器或儲存空間受限制的裝置 或不要求音訊完全還原的情況 目录 1 非破壞性壓縮技術 2 霍夫曼編碼與算術編碼比較 3 常見的非破壞性壓縮格式 3 1 通用格式 3 2 圖片格式 3 3 3D圖片格式 3 4 音訊格式 3 5 視訊格式 4 常見的非破壞性壓縮演算法非破壞性壓縮技術 编辑多數的非破壞性壓縮程式會依序進行這兩個步驟 產生輸入資料的統計模型 利用這個統計模型將較常出現的資料用較短的位元序列表示 較不常出現的資料用較長的位元序列表示生成位元序列的編碼演算法主要有霍夫曼編碼 也用於DEFLATE 和算術編碼 算術編碼能使壓縮率接近資訊熵所給出的最佳可能壓縮率 而霍夫曼編碼較簡單快速 但在符號的出現機率接近1的時候效果不彰 有兩種建構統計模型的主要方法 在 靜態 模型中 會分析資料並建立一個模型 然後將這個模型儲存在壓縮資料中 這個方法較簡單且模組化 但缺點是模型本身可能耗費龐大的空間來儲存 而且這個方法對單次的全部壓縮資料都使用同一個統計模型 所以如果各個檔案之間差異甚大 壓縮效果並不好 在 自適應 模型中 壓縮資料的同時模型會不斷的更新 雖然會導致壓縮初期的壓縮率不理想 但隨著讀取的資料增加 壓縮效果也會提升 目前最熱門的壓縮方法都採用自適應編碼方法 霍夫曼編碼與算術編碼比較 编辑霍夫曼編碼是將每一筆資料分開編碼 算術編碼則是將多筆資料一起編碼 因此壓縮效率比霍夫曼編碼更高 近年來的資料壓縮技術大多使用算術編碼常見的非破壞性壓縮格式 编辑参见 Category 无损压缩算法 通用格式 编辑 變動長度編碼法 RLE 一個非常簡單的方法 在資料連續重複的情況下有不錯的壓縮率 LZ77與LZ78 LZW 用於GIF和多種應用 LZF 页面存档备份 存于互联网档案馆 基本的LZ壓縮法 deflate 對於快速壓縮有做最佳化 Lempel Ziv Fast DEFLATE 用於gzip ZIP 從2 0版開始 也是PNG 点对点协议 PPP HTTP SSH的一部分 bzip2 使用Burrows Wheeler變換 速度較DEFLATE慢但壓縮率更高 LZMA 用於7zip xz等程式 相較於bzip2有更好的壓縮率和更快的速度 LZO 專為高速壓縮 解壓縮設計的方法 代價是壓縮率較差 Statistical Lempel Ziv 英语 Statistical Lempel Ziv 結合統計方法和字典方法 相較於只採用單一方法有更好的壓縮率 Brotli 一個現代的基于LZ的壓縮方法 速度大約與DEFLATE一樣快 但擁有與LZMA相近的壓縮率圖片格式 编辑 BMP RLE GIF JPEG 2000 JPEG XR 亦支援破壞性資料壓縮 PNG TIFF SVG 無壓縮 3D圖片格式 编辑 OpenCTM 英语 OpenCTM 用於3D三角網格的非破壞性壓縮音訊格式 编辑 ALAC Ape FLAC LPAC LTAC 英语 LTAC MPEG 4 ALS OptimFROG Shorten 英语 Shorten file format TAK TTA WavPack WMA LosslessWAV 無壓縮 視訊格式 编辑 Huffyuv 英语 Huffyuv 常見的非破壞性壓縮演算法 编辑ABO 算法 英语 Adaptive Binary Optimization DEFLATE LZMA LZW RAR ZIP 算術編碼 取自 https zh wikipedia org w index php title 无损数据压缩 amp oldid 73976518, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。