PNG与JPG的区别:技术详解与应用场景
创作时间:
作者:
@小白创作中心
PNG与JPG的区别:技术详解与应用场景
引用
CSDN
1.
https://blog.csdn.net/qq_40968685/article/details/106185271
在数字图像处理领域,PNG和JPG是最常用的两种图片格式。它们各有优劣,适用于不同的场景。本文将深入探讨这两种格式的技术特点、压缩原理以及应用场景,帮助读者更好地理解它们之间的区别。
区别
特征 | GIF | JPG | PNG |
---|---|---|---|
创建年份 | 1987 | 1992 | 1996 |
压缩方式 | 无损 | 有损(失真压缩) | 无损 |
支持颜色数 | 256种颜色(8位彩色) | 24位彩色 | 8位/24位/32位 |
支持透明 | 支持单一透明 | 不支持透明 | 8位支持索引透明和alpha透明,24位不支持透明,32位在24位基础上增加8位透明通道 |
缺点 | - | 不适合线条绘图和文字或图示的图形,不支持动画 | 部分软件兼容性问题,文件可能较大 |
- alpha通道:描述图片中的透明区域,允许通透地显示背景。
- bit:位的意思。1字节等于8位,计算机内部的数据都用二进制表示,每一“位”二进制数字就是1bit。
压缩方式
- JPEG:通常采用破坏性资料压缩(lossy compression),多次上传下载后图片会逐渐失真。
- PNG:使用无损压缩。
优点
JPEG
- 是万维网上最普遍的照片存储和传输格式。
- 在色调及颜色平滑变化的照片或写实绘画上效果最佳。
- 在这种情况下,通常比完全无失真的方法做得更好,可以产生非常好看的影像。
PNG
- 全称是便携式网络图型(Portable Network Graphics)。
- 支持256色调色板技术以产生小体积文件。
- 最高支持48位真彩色图像以及16位灰度图像。
- 支持Alpha通道的半透明特性。
- 支持图像亮度的gamma校正信息。
- 支持存储附加文本信息,如图像名称、作者、版权、创作时间、注释等。
- 使用无损压缩。
- 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。
- 使用CRC循环冗余编码防止文件出错。
- 最新的PNG标准允许在一个文件内存储多幅图像。
JPG VS PNG
- JPG在图片压缩方面有巨大优势,但采用有损压缩,图片质量有损失。
- 一般截屏用PNG格式不但比JPG质量高而且文件更小;防锯齿PNG非常有优势。
PNG压缩原理
PNG压缩过程分为两个阶段:Prediction 和 Compression。
Prediction
在这一阶段,我们每次会处理图片中一行的数据,首先通过Filter阶段处理这一行当中每一个的像素点中每条通道的值,也就是我们常说的ARBG。它交由差分处理器来重新计算该通道的值。差分处理会根据这个像素点上通道和之前或者之上像素点对应通道值之间的差异,进行差分编码,也就是说,如果原本相邻像素点之间通道的值之间很接近,那么我们就会获得很多的1,0,-1这种很小的值。这里有两点需要注意:
- 整个Prediction阶段的目的,也就是选择合适的差分处理器,让最终的编码结果出现尽可能多的零值和重复值,这一结果将会影响到Compression阶段的压缩率。
- 差分编码器比较的是像素点之间对应通道的值,而并不是整个像素点。
Compression
在Prediction处理完毕之后,再将这一转换的结果输出给Deflate,Deflate执行真正的压缩操作,它会通过LZ77和Huffman对图像进行编码,最后将处理之后的结果保存。在Compression阶段,它最终的压缩率会受到两方面的影响:
- Prediction的处理结果:对于颜色相近的区域,也就是有很多零值的区域,那么压缩率将会更高,而如果颜色之间差异很大,那么压缩效果将不尽人意。
- Deflate每一行的匹配情况:前面我们分析过,整个处理过程是按行来处理的。而在处理每一行的数据时,Deflate把处理的符号数限制为3~258,也就是说,最大的压缩率为1032:1,当出现符号数小于3个时,那么就有可能出现无法匹配的情况,因此,对于图片宽度的改变将有可能影响最终压缩的效果。
下面,我们对于上面描述的第二点举一个例子,对于下面两幅图,右图虽然之比左图宽了两个像素,但是它的大小整整大了一倍:
我们通过下面这个工具可以观察每个像素点的压缩率:
- Pngthermal
在分析的结果中,深蓝色表示该像素点具有较高的压缩率,而黄色/红色则表示压缩率较低,可以发现正是由于改变了图片的大小,导致某些像素点没有匹配到,从而产生了一个较大的文件。
代码表示
对于Prediction和Compression这两个过程,可以通过下面这个代码来理解:
总结
PNG有很多优点,并且应用广泛,但是还是需要根据具体的场景来选用:
- 如果原始的图片为高清的,但是不要求进行无损的压缩,那么可以选择类似于JPG这样的有损压缩
- 但是从反方面来说,如果原始图片较为简单,并且需要支持透明形式,那么PNG要优于JPG。
热门推荐
如何安全使用飞机上的WiFi?
孩子感冒咳嗽:病因、症状、诊断与治疗全解析
让孩子学会自己解决矛盾的方法
中超三队亚冠出线形势分析:申花最有望出线,海港形势严峻
逆变器能否带动电磁炉?关键因素分析与使用建议
酒店房间霉味难除?试试这些简单易行的除霉方法!
银行的账户长期不使用会被注销吗?
易学文化考试网:易学如何影响人际关系?易学考试要求是什么?
飞牛OS@Thinkpad小黑X60——打造下载服务器之一(应用中心)
高剂量iTBS结合个体化神经功能靶向治疗技术,为卒中后认知障碍患者带来新希望
跟着网评购物:网络信息如何影响消费行为
如何培养孩子数学思维?六大实用方法助力孩子数学能力提升
梅雨季,阴干的衣服为什么有股怪味?对人体是否有害?
关键之年,“百千万工程”吹响实干号角
20多万中大型燃油SUV怎么选?领克09对比大众途昂
职业技能大赛仲裁职责:确保公平竞争
每日新闻摘抄10一30字
2024智驾年度调查:最高频用车场景与最担心问题是什么?
揭秘网络爬虫:如何高效、合规地收集数据
农村这4种野草莓,第1种如今成贵族水果,最后一种老人常说有毒
LabVIEW FPGA定时功能详解:循环计时器、等待与时钟计数器
华中农大韩文元教授团队揭示细菌"孔明系统"免疫防御机制
去了趟农村小镇,终于明白「肝硬化」为什么这么多
沈周《仿倪瓒笔意册》:文人画精神的传承与演绎
宋理学家朱熹的思想成就与影响
怎么管理自动扣费项目微信
检流计的基本内容
张雪峰说农学出路:农业大学毕业后好就业吗?
循环神经网络RNN和长短期记忆神经网络LSTM详解
《绝区零》,米哈游最特殊的一次尝试