jpeg图像压缩原理,JPEG图像压缩
图像为什么可以被压缩?
JPEG的压缩率比起无损压缩格式的PNG或者PCX来说,其文件大小通常只有后者的1/10或更小。JPG的图像压缩原理是利用了空间领域转换为频率领域的概念,
因为人类的眼睛对高频的部份较不敏感,因此,这个部份就可以用大幅压缩、较粗略的方式来处理,以达到让文件更小的目的。
简述JPEG压缩算法
JPEG首先对8×8的图象经过DCT变换,其低频分量都集中在左上角,高频分量分布在右下角,由于该低频分量包含了图象的主要信息(如亮度),而高频与之相比,就不那么重要了,所以可以忽略高频分量,从而达到压缩的目的.经过DCT变换后,低频分量集中在左上角,由于两个相邻的8×8子块的DC系数相差很小,所以对它们采用差分编码DPCM,可以提高压缩比,也就是说对相邻的子块DC系数的差值进行编码。8×8的其它63个元素是交流(AC)系数,采用行程编码。得到了DC码字和 AC行程码字,为了进一步提高压缩比,需要对其再进行熵编码,选用Huffman编码,通过查码表,得到相应的码值。也就是JPEG通过DCT变换,进行差分脉冲编码、行程编码和哈佛曼编码达到压缩的目的!
jpeg图片压缩的原理?(谈谈怎么个压缩法?怎么个有损法?)
图像压缩的算法很多,我把霍夫曼算法说一下,一朵云的色彩变化中有许多是相同的像素。那么表达这些像素的时候,可以只写一个值,然后只写它们的位置就可以了,这样就省了重复冗余数据,而且表达出来没有差异。还有的一种方法是把接近的,几乎看不出差异的数据表达位一类,这样,就可以在前者基础上减少更多的数据,但是后者由于把微妙的色信号差去掉了,所以会有损失。前者就是无损的压缩。后者就是有损的,并且无法恢复的。
关于JPG图像压缩的原理
JPG图像压缩的基本原理
图像数据之所以能被压缩,就是因为数据中存在着冗余。图像数据的冗余主要表现为:图像中相邻像素间的相关性引起的空间冗余;图像序列中不同帧之间存在相关性引起的时间冗余;不同彩色平面或频谱带的相关性引起的频谱冗余。数据压缩的目的就是通过去除这些数据冗余来减少表示数据所需的比特数。由于图像数据量的庞大,在存储、传输、处理时非常困难,因此图像数据的压缩就显得非常重要。
信息时代带来了“信息爆炸”,使数据量大增,因此,无论传输或存储都需要对数据进行有效的压缩。在遥感技术中,各种航天探测器采用压缩编码技术,将获取的巨大信息送回地面。
图像压缩是数据压缩技术在数字图像上的应用,它的目的是减少图像数据中的冗余信息从而用更加高效的格式存储和传输数据。
pg全名是JPEG。JPEG图片以 24 位颜色存储单个位图。JPEG 是与平台无关的格式,支持最高级别的压缩,不过,这种压缩是有损耗的。渐近式 JPEG 文件支持交错。
JPEG压缩可以很好地处理写实摄影作品。但是,对于颜色较少、对比级别强烈、实心边框或纯色区域大的较简单的作品,JPEG压缩无法提供理想的结果。有时,压缩比率会低到 5:1,严重损失了图片完整性。这一损失产生的原因是,JPEG压缩方案可以很好地压缩类似的色调,但是 JPEG 压缩方案不能很好地处理亮度的强烈差异或处理纯色区域。
JPEG 图片压缩原理(二)
图片压缩有多重要,可能很多人可能并没有一个直观上的认识,举个例子,一张800X800大小的普通图片,如果未经压缩,大概在1.7MB左右,这个体积如果存放文本文件的话足够保存一部92万字的鸿篇巨著《红楼梦》,现如今互联网上绝大部分图片都使用了JPEG压缩技术,也就是大家使用的jpg文件,通常JPEG文件相对于原始图像,能够得到1/8的压缩比,如此高的压缩率是如何做到的呢?
JPEG能够获得如此高的压缩比是因为使用了有损压缩技术,所谓有损压缩,就是把原始数据中不重要的部分去掉,以便可以用更小的体积保存,这个原理其实很常见,比如485194.200000000001这个数,如果我们用485194.2来保存,就是一种“有损”的保存方法,因为小数点后面的那个“0.000000000001”属于不重要的部分,所以可以被忽略掉。JPEG整个压缩过程基本上也是遵循这个步骤:
1. 把数据分为“重要部分”和“不重要部分”
2. 滤掉不重要的部分
3. 保存
| (1.1) |
| (1.2) |
| (1.3) |
| (1.4) |
| (1.5) |
|
| (2.1) |
| (2.2) |
| (2.3) |
| (2.1) |
| |
| |
| (3.1) |
figcaption class="wp-caption-text" style="box-sizing: inherit; display: block; text-align: center; margin: 0.8075em 0px;"标准亮度量化表/figcaption
figcaption class="wp-caption-text" style="box-sizing: inherit; display: block; text-align: center; margin: 0.8075em 0px;"标准色差量化表/figcaption
|
| (3.2) |
“AABCBABBCDBBDDBAABDBBDABBBBDDEDBD”