图像文件格式
LinJM @HQU
近期在做有关图像格式转换的东西,曾经对这一块还真有点缺失。仅仅能周末补补。
在计算机中,数据是以文件的形式存储在外存储器上的。将图像数据以文件形式保存在外存储器上就形成了图像文件。图像文件就是以数字形式存储的图像数据。
图像文件一般由文件头、调色板数据和像素数据3部分组成。
文件头用于存放图像文件的各种參数,这些參数表征了图像本身的很多特性;调色板是图像的颜色索引表;像素数据是图像信息的实体所在,它存储了图像矩阵中各个点的像素信息。
文件头中所存放的特征參数特别重要,它们包含:
图像的类型
通常在图像文件的最開始几位总是一串固定的字符,它们的作用就是表明了图像的文件类型,比如。BMP文件里的最開始的字符总是“BM”。
图像的宽度
通常以像素为单位计量图像横向上的水平宽度。图像的宽度是计算每行字节数的主要參数。
图像的高度
通常以像素为单位计量图像纵向上的垂直高度。
每像素位数
像素位数注明了每位像素所占的字节数。
位平面数
位平面数决定了图像的存储结构。单一位平面结构的图像数据採取像素的集中式存放。这样的存放形式与显示存储器雷同。
多位平面结构的图像数据则以颜色分量为单位进行集中存放,如图1所看到的的样例为一幅3*3的24位真色图像的像素数据信息。
B00G00R00 | B01G01R01 | B02G02R02 |
B10G10R10 | B11G11R11 | B12G12R12 |
B20G20R20 | B21G21R21 | B22G22R22 |
单採用单一位平面结构时,图像的像素数据的实际存放方式图2所看到的;单採用多位平面结构时,图像的像素数据的实际存放方式如图3所看到的。
R00R01R02 |
R10R11R12 |
R20R21R22 |
G00G01G02 |
G10G11G12 |
G20G21G22 |
B00B01B02 |
B10B11B12 |
B20B21B22 |
R00R01R02 |
G00G01G02 |
B00B01B02 |
R10R11R12 |
G10G11G12 |
B10B11B12 |
R20R21R22 |
G20G21G22 |
B20B21B22 |
压缩类型
压缩类型參数用于标明图像文件是否被压缩及採用何种压缩方式。
像素数据的首地址
有无调色板等。