在计算机中,有时候我们需要存储
文件或者进行文件传输,但文件太大,这时我们要采取一种算法来减少数据或文件的大小,这称为
压缩。压缩指数是指文件压缩后的一些参数,用来反应文件压缩后好坏,如压缩率,是否有损等。
定义介绍
在计算机中,有时候我们需要存储
文件或者进行文件传输,但文件太大,这时我们要采取一种算法来减少数据或文件的大小,这称为
压缩。压缩指数是指文件压缩后的一些参数,用来反应文件压缩后好坏,如压缩率,是否有损等。这是我们选择压缩算法重要的依据之一。
压缩率
压缩率(Compression ratio),描述
压缩文件的效果名,是文件压缩后的大小与压缩前的大小之比,例如:把100m的文件压缩后是90m,压缩率为90/100*100%=90%,压缩率一般是越小越好,但是压得越小,解压时间越长。
压缩率参考
由于压缩率与音质有关,以下表格仅供参考:
音质声道编码(千比特每秒) 压缩比;
电话机音质单声道8 Kbps 96:1 ;
略高于短波收音机音质单声道16 Kbps 48:1 ;
略高于中波收音机音质单声道32 Kbps 24:1 ;
近似于调频收音机音质立体声56-64 Kbps 26 ~ 24:1 ;
接近CD音质立体声96 Kbps 16:1 ;
CD音质立体声112-128 Kbps 14~ 12:1 。
压缩方式
无损压缩用于要求重构的信号与原始信号完全一致的场合。也就是说数据经过压缩后信息不受损失,还能完全恢复到压缩前的原样。它和
有损数据压缩相对。这种压缩通常压缩比小于有损数据压缩的压缩比。
一个很常见的例子是磁盘文件的压缩。根据目前的技术水平,无损压缩算法一般可以把普通文件的
数据压缩到原来的1/2~1/4。一些常用的无损压缩算法有霍夫曼(Huffman)算法和LZW(Lenpel-Ziv & Welch)压缩算法。
有损数据压缩方法是经过压缩、解压的数据与
原始数据不同但是非常接近的压缩方法。
有损数据压缩又称破坏型压缩,即将次要的信息数据压缩掉,牺牲一些质量来减少数据量,使压缩比提高。这种方法经常用于因特网尤其是
流媒体以及电话领域。在这篇文章中经常成为编解码。它是与
无损数据压缩对应的压缩方法。根据各种格式设计的不同,
有损数据压缩都会有generationloss:压缩与解压文件都会带来渐进的质量下降。
应用
在Linux中,压缩命令主要有这几种:Compress,gzip ,zcat ,bzip2, bzcat。
下面来看看gzip和zcat:
gzip [-cdtv#] 文件名 #压缩
-c:将压缩数据输出到屏幕,可通过数据流重定向处理
d:解压缩的参数
t:检验有无错误
-v:显示压缩比
-#:压缩等级 -1最快,-9最慢,默认-6
zcat 文件名.gz
压缩等级就是可以反映压缩比,有时候也可以反映是否有损。如果压缩比太大,文件是肯定会出现破坏。