A. 软件压缩的原理是什么
压缩的原理是把文件的二进制代码压缩,把相邻的0,1代码减少,比如有000000,可以把它变成6个0 的写法60,来减少该文件的空间。
由于计算机处理的信息是以二进制数的形式表示的,因此压缩软件就是把二进制信息中相同的字符串以特殊字符标记来达到压缩的目的。
为了有助于理解文件压缩,请在脑海里想象一幅蓝天白云的图片。对于成千上万单调重复的蓝色像点而言,与其一个一个定义“蓝、蓝、蓝……”长长的一串颜色,还不如告诉电脑:“从这个位置开始存储1117个蓝色像点”来得简洁,而且还能大大节约存储空间。
这是一个非常简单的图像压缩的例子。其实,所有的计算机文件归根结底都是以“1”和“0”的形式存储的,和蓝色像点一样,只要通过合理的数学计算公式,文件的体积都能够被大大压缩以达到“数据无损稠密”的效果。
(1)数据压缩原理的认识扩展阅读
WinRAR能备份数据,减少 E-mail附件的大小,解压缩从Internet上下载的 RAR、ZIP 和其他格式的压缩文件,并能创建 RAR 和 ZIP 格式的压缩文件。在购买之前,你可以下载试用版本。
WINRAR在压缩率和速度方面都有很好的表现。其压缩率比高,3.x 采用了更先进的压缩算法,是现在压缩率较大、压缩速度较快的格式之一。 3.3 增加了扫描压缩文件内病毒、解压缩“增强压缩” ZIP 压缩文件的功能, 升级了分卷压缩的功能等。
参考资料来源:网络-压缩文件
B. 数据压缩基本原理
无损压缩基本上有2种:
字典式。用之前出现过的消息来替换从,比如:“我非常非常非常喜欢你”,可以压缩为“我非常x3喜欢你”
统计式,用短的替换频繁出现的。比如,哈夫曼压缩算法。
上面只是大概的描述,如果想深入还是找本算法书看看吧。
C. 压缩原理是什么
压缩技术可分为通用无损数据压缩与有损压缩两大类,但不管是采用何种技术模型,其本质内容都是一样的,即都是通过某种特殊的编码方式将数据信息中存在的重复度、冗余度有效地降低,从而达到数据压缩的目的。比如:“中国”是“中华人民共和国”的简称,但前者的字数是2,后者则是7,但我们都不会对它们俩所要表达的意思产生误解,这是因为前者保留了信息中最“关键点”。同时,作为有思维能力的人类,我们可以根据前后词汇关系和知识积累,就可推断出其原来的全部信息。压缩技术也一样,在不影响文件的基本使用的前提下,只保留原数据中一些“关键点”,去掉了数据中的重复的、冗余的信息,从而达到压缩的目的。这就是文件压缩技术所要遵循的最基本原理。
D. 数据压缩的基本原理
数据压缩的基本原理
--------------------------------------------------------------------------------
数据压缩技术就是对原始数据进行数据编码或压缩编码。
目前常用的压缩编码有:冗余压缩法(无损压缩法、熵编码)和熵压缩法(有损压缩法)两类。
无损压缩是可逆的;有损压缩是不可逆的。
--------------------------------------------------------------------------------
变长编码
使用长度可变的代码来对以不同频率出现的样本进行编码。
1·Huffman编码
Huffman编码又称最佳编码。
Huffman编码过程是:
*将信源符号按概率递减顺序排列;
*把两个最小的概率加起来,作为新符号的概率;
*重复上述两步骤,直到概率的和达到1为止;
*在每次合并消息时,将被合并的消息赋予1和0或赋予0和1;
*寻找从每一信源符号到概率为1的路经,记录下路经上的1和0;
*对每一符号写出从码树的根到终结点1、0序列。
例:对信源
[X1,X2,X3,X4,X5,X6]=[0.25,0.25,0.20,0.15,0.10,0.05]
进行Huffman编码。
其中:X1=01;X2=10;X3=11;X4=000;X5=0010;X6=0011。
2·算术编码
算术编码是一种二元编码。
这种编码方法是在不考虑信源统计的情况下,只要监视一小段时间内码字出现的频率,不管统计是平稳的或非平稳的,编码的码率总能趋近于信源熵值,每次迭代的编码算法只处理一个数据符号,并且只有算术运算。
对二进制编码来说,信源符号只有两个。在算术编码的初级阶段,可设一个大概率Pe和小概率Qe,然后对被编码比特流符号进行判断。
其步骤:
*设编码初始化子区间为[0,1],Qe从0算起,则Pe=1-Qe。
*确定子区间起始位置:子区间起始位置=前子区间的长度+ 当前符号的区间左端X前子区间长度
*确定新子区间长度:新子区间长度=前子区间的长度X当前符号的概率
*随着被编码数据流符号的输入,子区间逐渐缩小,
*最后得到的子区间长度决定了表示该区域内的某一个数所需的位数。
例:P42
--------------------------------------------------------------------------------
预测编码
(自习)
--------------------------------------------------------------------------------
变换编码
变换编码是指对信号进行变换后在编码。
例如:
典型的编码结构是:
--------------------------------------------------------------------------------
模型编码
模型编码是指采用模型的方法对传输的图像进行参数估测。
模型编码有:随机马尔可夫场和分形图像编码。
1·分形的概念
分形的含义是其组成部分以某种方式与整体相似的形(一类无规则、混乱而复杂),其局部与整体有相似性的体系,即:自相似性体系。
2·分形编码
*基本原理:分形的方法是把一幅数字图像,通过一些图像处理技术将原始图像分成一些子图像,然后在分形集中查找这样的子图像。分形集存储许多迭代函数,通过迭代函数的反复迭代,可以恢复原来的子图像。
分形编码压缩的步骤:
第一步:把图像划分为互不重叠的、任意大小的的D分区;
第二步:划定一些可以相互重叠的、比D分区大的R分区;
第三步:为每个D分区选定仿射变换表。
分形编码解压步骤:
首先从文件中读取D分区划分方式的信息和仿射变换系数等数据;
然后划定两个同样大小的缓冲区给D图像和R图像,并把R初始化到任一初始阶段;
根据仿射变换系数把其相应的R分区做仿射变换,并用变换后的数据取代该D分区的原有数据;
对D中所有的D分区都进行上述操作,全部完成后就形成一个新的D图像;
再把新D图像的内容拷贝到R中,把新R当作D,D当作R,重复操作(迭代)。
。分形编码的特点:
压缩比高,压缩后的文件容量与图像像素数无关,在压缩时时间长但解压缩速度快。
--------------------------------------------------------------------------------
E. 压缩文件是什么原理
压缩的原理:计算机处理信息是以二进制数(0和1)的形式标示的,压缩软件把二进制信息中相同的字符串以特殊字符标记起来压缩的,从而实现缩小文件大小的。
文件的压缩比则根据文件的类型不同有所不同,比如文档类的文件压缩比很大(一个字或者一个词在同一个文件会反复出现),而图形图像的压缩比则比较小(每一个像素点的色素不同是常有的,不同颜色和颜色深浅、对比度的不同、亮度不同等的对应二进制代码是不同的)。
如果原文件被删掉了,只要将压缩文件解压就可以。
回答者
F. 请大家谈谈你对数据压缩原理的认识
数据压缩技术就是对原始数据进行数据编码或压缩编码。
目前常用的压缩编码有:冗余压缩法(无损压缩法、熵编码)和熵压缩法(有损压缩法)两类。
无损压缩是可逆的;有损压缩是不可逆的。
变长编码
使用长度可变的代码来对以不同频率出现的样本进行编码。
1·Huffman编码
Huffman编码又称最佳编码。
Huffman编码过程是:
*将信源符号按概率递减顺序排列;
*把两个最小的概率加起来,作为新符号的概率;
*重复上述两步骤,直到概率的和达到1为止;
*在每次合并消息时,将被合并的消息赋予1和0或赋予0和1;
*寻找从每一信源符号到概率为1的路经,记录下路经上的1和0;
*对每一符号写出从码树的根到终结点1、0序列。
例:对信源
[X1,X2,X3,X4,X5,X6]=[0.25,0.25,0.20,0.15,0.10,0.05]
进行Huffman编码。
其中:X1=01;X2=10;X3=11;X4=000;X5=0010;X6=0011。
2·算术编码
算术编码是一种二元编码。
这种编码方法是在不考虑信源统计的情况下,只要监视一小段时间内码字出现的频率,不管统计是平稳的或非平稳的,编码的码率总能趋近于信源熵值,每次迭代的编码算法只处理一个数据符号,并且只有算术运算。
对二进制编码来说,信源符号只有两个。在算术编码的初级阶段,可设一个大概率Pe和小概率Qe,然后对被编码比特流符号进行判断。
模型编码
模型编码是指采用模型的方法对传输的图像进行参数估测。
模型编码有:随机马尔可夫场和分形图像编码。
1·分形的概念
分形的含义是其组成部分以某种方式与整体相似的形(一类无规则、混乱而复杂),其局部与整体有相似性的体系,即:自相似性体系。
2·分形编码
*基本原理:分形的方法是把一幅数字图像,通过一些图像处理技术将原始图像分成一些子图像,然后在分形集中查找这样的子图像。分形集存储许多迭代函数,通过迭代函数的反复迭代,可以恢复原来的子图像。
分形编码压缩的步骤:
第一步:把图像划分为互不重叠的、任意大小的的D分区;
第二步:划定一些可以相互重叠的、比D分区大的R分区;
第三步:为每个D分区选定仿射变换表。
分形编码解压步骤:
首先从文件中读取D分区划分方式的信息和仿射变换系数等数据;
然后划定两个同样大小的缓冲区给D图像和R图像,并把R初始化到任一初始阶段;
根据仿射变换系数把其相应的R分区做仿射变换,并用变换后的数据取代该D分区的原有数据;
对D中所有的D分区都进行上述操作,全部完成后就形成一个新的D图像;
再把新D图像的内容拷贝到R中,把新R当作D,D当作R,重复操作(迭代)。
。分形编码的特点:
压缩比高,压缩后的文件容量与图像像素数无关,在压缩时时间长但解压缩速度快
G. 文件压缩的原理是什么
电脑里文件都是以二进制储存的。压缩原理就是通过特定的算法,将文件转化,而转化以后的文件占用的空间较小。
举个简单得例子(当然这个例子应该有点问题,但是能说明问题):
原始文件:111110000001
算法:当连续同样的1或者0的个数超过5个,则将其转化成XX1或者XX0得形式;如果不超过5个,保持不变。XX是连续的1或者0的个数,如果连续数量较多,XX得位数可以增加。
于是11111可以表示成5个1,写成二进制就是1011;000000可以表示成6个0,写成二进制就是1100;而1保持不变。
这样,转化以后的文件就变成了101111001
可见,原始文件需要12个存储位置,而转化后的文件只需要9个存储位置。
当然,实际上压缩得算法多种多样,要比这个例子复杂的多。根据文件种类的不同压缩算法也经常不同。
H. 压缩的压缩原理
利用算法将文件有损或无损地处理,以达到保留最多文件信息,而令文件体积变小。压缩文件的基本原理是查找文件内的重复字节,并建立一个相同字节的"词典"文件,并用一个代码表示,比如在文件里有几处有一个相同的词"中华人民共和国"用一个代码表示并写入"词典"文件,这样就可以达到缩小文件的目的软件。由于计算机处理的信息是以二进制数的形式表示的,因此压缩软件就是把二进制信息中相同的字符串以特殊字符标记来达到压缩的目的。为了有助于理解文件压缩,请您在脑海里想象一幅蓝天白云的图片。对于成千上万单调重复的蓝色像点而言,与其一个一个定义“蓝、蓝、蓝……”长长的一串颜色,还不如告诉电脑:“从这个位置开始存储1117个蓝色像点”来得简洁,而且还能大大节约存储空间。这是一个非常简单的图像压缩的例子。其实,所有的计算机文件归根结底都是以“1”和“0”的形式存储的,和蓝色像点一样,只要通过合理的数学计算公式,文件的体积都能够被大大压缩以达到“数据无损稠密”的效果。总的来说,压缩可以分为有损和无损压缩两种。如果丢失个别的数据不会造成太大的影响,这时忽略它们是个好主意,这就是有损压缩。有损压缩广泛应用于动画、声音和图像文件中,典型的代表就是影碟文件格式mpeg、音乐文件格式mp3和图像文件格式jpg。但是更多情况下压缩数据必须准确无误,人们便设计出了无损压缩格式,比如常见的zip、rar等。压缩软件(compression software)自然就是利用压缩原理压缩数据的工具,压缩后所生成的文件称为压缩包(archive),体积只有原来的几分之一甚至更小。当然,压缩包已经是另一种文件格式了,如果你想使用其中的数据,首先得用压缩软件把数据还原,这个过程称作解压缩。常见的压缩软件有winzip、winrar等。
I. 压缩文件的压缩原理
把文件的二进制代码压缩,把相邻的0,1代码减少,比如有000000,可以把它变成6个0 的写法60,来减少该文件的空间。
由于计算机处理的信息是以二进制数的形式表示的,因此压缩软件就是把二进制信息中相同的字符串以特殊字符标记来达到压缩的目的。为了有助于理解文件压缩,请在脑海里想象一幅蓝天白云的图片。对于成千上万单调重复的蓝色像点而言,与其一个一个定义“蓝、蓝、蓝……”长长的一串颜色,还不如告诉电脑:“从这个位置开始存储1117个蓝色像点”来得简洁,而且还能大大节约存储空间。这是一个非常简单的图像压缩的例子。其实,所有的计算机文件归根结底都是以“1”和“0”的形式存储的,和蓝色像点一样,只要通过合理的数学计算公式,文件的体积都能够被大大压缩以达到“数据无损稠密”的效果。总的来说,压缩可以分为有损和无损压缩两种。如果丢失个别的数据不会造成太大的影响,这时忽略它们是个好主意,这就是有损压缩。有损压缩广泛应用于动画、声音和图像文件中,典型的代表就是影碟文件格式mpeg、音乐文件格式mp3和图像文件格式jpg。但是更多情况下压缩数据必须准确无误,人们便设计出了无损压缩格式,比如常见的zip、rar等。压缩软件(compression software)自然就是利用压缩原理压缩数据的工具,压缩后所生成的文件称为压缩包(archive),体积只有原来的几分之一甚至更小。当然,压缩包已经是另一种文件格式了,如果想使用其中的数据,首先得用压缩软件把数据还原,这个过程称作解压缩。常见的压缩软件有winzip、winrar等。
有两种形式的重复存在于计算机数据中,zip就是对这两种重复进行了压缩。
一种是短语形式的重复,即三个字节以上的重复,对于这种重复,zip用两个数字:1.重复位置距当前压缩位置的距离;2.重复的长度,来表示这个重复,假设这两个数字各占一个字节,于是数据便得到了压缩,这很容易理解。
一个字节有 0 - 255 共 256 种可能的取值,三个字节有 256 * 256 * 256 共一千六百多万种可能的情况,更长的短语取值的可能情况以指数方式增长,出现重复的概率似乎极低,实则不然,各种类型的数据都有出现重复的倾向,一篇论文中,为数不多的术语倾向于重复出现;一篇小说,人名和地名会重复出现;一张上下渐变的背景图片,水平方向上的像素会重复出现;程序的源文件中,语法关键字会重复出现(我们写程序时,多少次前后、paste?),以几十 K 为单位的非压缩格式的数据中,倾向于大量出现短语式的重复。经过上面提到的方式进行压缩后,短语式重复的倾向被完全破坏,所以在压缩的结果上进行第二次短语式压缩一般是没有效果的。
第二种重复为单字节的重复,一个字节只有256种可能的取值,所以这种重复是必然的。其中,某些字节出现次数可能较多,另一些则较少,在统计上有分布不均匀的倾向,这是容易理解的,比如一个 ASCII 文本文件中,某些符号可能很少用到,而字母和数字则使用较多,各字母的使用频率也是不一样的,据说字母 e 的使用概率最高;许多图片呈现深色调或浅色调,深色(或浅色)的像素使用较多(这里顺便提一下:png 图片格式是一种无损压缩,其核心算法就是 zip 算法,它和 zip 格式的文件的主要区别在于:作为一种图片格式,它在文件头处存放了图片的大小、使用的颜色数等信息);上面提到的短语式压缩的结果也有这种倾向:重复倾向于出现在离当前压缩位置较近的地方,重复长度倾向于比较短(20字节以内)。这样,就有了压缩的可能:给 256 种字节取值重新编码,使出现较多的字节使用较短的编码,出现较少的字节使用较长的编码,这样一来,变短的字节相对于变长的字节更多,文件的总长度就会减少,并且,字节使用比例越不均匀,压缩比例就越大。
J. 文件的压缩原理是什么
电脑里文件都是以二进制储存的。压缩原理就是通过特定的算法,将文件转化,而转化以后的文件占用的空间较小。
举个简单得例子(当然这个例子应该有点问题,但是能说明问题):
原始文件:111110000001
算法:当连续同样的1或者0的个数超过5个,则将其转化成XX1或者XX0得形式;如果不超过5个,保持不变。XX是连续的1或者0的个数,如果连续数量较多,XX得位数可以增加。
于是11111可以表示成5个1,写成二进制就是1011;000000可以表示成6个0,写成二进制就是1100;而1保持不变。
这样,转化以后的文件就变成了101111001
可见,原始文件需要12个存储位置,而转化后的文件只需要9个存储位置。
当然,实际上压缩得算法多种多样,要比这个例子复杂的多。根据文件种类的不同压缩算法也经常不同。