数据压缩第二次作业

PNG数据块的通用结构

PNG数据块的定义

PNG定义了两种类型的数据块,一种是称为关键数据块(critical chunk),是标准的数据块,另一种叫做辅助数据块(ancillary chunks),是可选的数据块。关键数据块定义了4个标准数据块,每个PNG文件都必须包含它们,PNG读写软件也都必须要支持这些数据块。

文件头数据IHDR:

文件头数据块的数据块类型码为IHDR,它包含有PNG文件中存储的图像数据的基本信息,并作为第一个数据块出现在PNG数据流中,而且一个PNG数据流中只能有一个文件头数据块。文件头数据块由13字节组成,14字节存储图像的宽度(以像素为单位),58字节存储图像的高度(以像素为单位),第9字节表示色彩深度,第10字节表示图像的色彩模式(0:灰度图像,2:真彩色图像,3:索引彩色图像,4:带α通道数据的灰度图像,6:带α通道数据的真彩色图像),第11字节表示压缩方法,第12字节表示滤波方法,第13字节表示是否是隔行扫描。

调色板数据PLTE:

调色板数据块的数据块类型码为PLTE,它包含有与索引彩色图像相关的彩色变换数据,它仅与索引彩色图像有关,而且要放在图像数据块(image data chunk)之前。真彩色的PNG数据流也可以有调色板数据块,目的是便于非真彩色显示程序用它来量化图像数据,从而显示该图像。

IHDR:

前8字节意义未知…0000000D表示IHDR的长度13;

49 48 44 52=IHDR为数据块标识码。

E1 5D 71为CRC校验码

可读出宽高均为0000002B=43像素;

色彩深度为8,色彩模式值为6,即为8bit量化的带α通道的真彩图像。

下一数据域的数据长度为00 00 00 01=1

标识为 73 52 47 42=sRGB,为可选数据段,数据值为0,表示该图像采用的不是sRGB色域。

CRC校验码为 AE CE 1C E9;

数据长度4 数据标识 67 41 4D 41= gAMA 图像γ数据块

数据长度 9 数据标识 70 48 59 73=pHYs 物理像素尺寸数据

数据块长度 4115 数据标识 49 44 41 54=IDAT 图像数据块

图像结束数据的数据块类型码是IEND,它用来标记PNG文件或者数据流已经结束,并且必须要放在文件的尾部IEND:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值