TGA文件解析

1、文件头中有哪些元数据为传输另一端读取图像提供了什么帮助?
TGA文件规定了颜色表类型、图像类型对总体的图像类型进行描述。
对于颜色表,细节的有颜色表首地址,颜色表长度、颜色表表项大小来描述。
对于图像,细节有图像的宽高,像素深度,以及在屏幕上的位置几个描述。图像标识符给出了像素属性位数量,以及从文件发送到屏幕的顺序。

2、哪些数据给出了确定像素区域首地址或者颜色表地址的信息?
首先文件头中给出了颜色表首地址,方便读取图像时找到颜色表的信息。其次图像像素数据的起始地址由之前文件头的长度决定,而文件头的长度,由颜色表长度,颜色表表项大小、以及图像信息字段长度三个变量决定。

3、TGA有哪些颜色表种类,分别如何实现?
(1)真彩色用RGB5:5:5或者8:8:8来表示色彩,不需要颜色表
(2)伪彩色用索引值,每个像素点位置是索引值对应颜色表中的相应地址,给予RGB强度值。
(3)调配色用RGB三个分量单独作为索引值来查找基色的强度,本质上也是有RGB三个分量,只是经过索引查找有了变换。

4、TGA图片的压缩类型?
TGA图片可以选择行程编码类型,行程编码图像包含两种类型的数据元素:行程包和原始包。每个包的第1个字段称为重复计数字段(,第2个字段称为像素值字段,行程包的像素值字段包含一个简单的像素值,而原始包的像素值字段包含一个可变长的像素值。重复计数字段的最高位表明该包的类型,如果值为1,则是行程包,如果值为0,则为原始包。重复计数字段低7位规定了包中的像数值的数目,如果是行程包,它表明有像素值字段规定的像素值的连续像素数;如果是原始包,它规定了接下来的字段包含的像素数。如果值为0,则实际有1个像素,如果值为0x7F,则有128个像素。这样的话,如果一行都是完全一样的值,那么经过航程编码,就只需要四个字节。

你可能感兴趣的:(TGA文件解析)