【宏思微想:科技生活,技术开发】

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(1)

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(2)

一. BMP 简介

BMP是Bitmap的缩写,是Windows平台的一种图像文件格式。可以分成两类:设备相关位图DDB(Device Depandent Bitmap)和设备无关位图DIB(Device Independent Bitmap)。Windows3.0之前使用的是DDB位图,之后主要使用DIB位图,本文主要分析DIB位图,如无特别说明,本文所指BMP均是Windows DIB位图。

假定每一行实际数据所占的字节数为nBytePerWidth,则它们有如下计算关系:

Stride = (((biWidth*biBitCount 31)&(~31))>>5)<<2;

if(1==biBitCount)

{

if(Width<=8)

nBytePerWidth = 1;

else

{

nBytePerWidth = Width/8;

if(Width%8)

nBytePerWidth ;

}

}

else if(4==biBitCount)

{

if(Width<=2)

nBytePerWidth = 1;

else

{

nBytePerWidth = Width/2;

if(Width%2)

nBytePerWidth ;

}

}

else

nBytePerWidth = Width*(biBitCount>>3);

Padding = Stride - nBytePerWidth;

三. 常见BMP文件

常见BMP文件的格式以及它们的分析如下图:

下面分别给出上述各种常见BMP的十六进制视图,红色表示文件头部分,蓝色表示信息头,紫色表示颜色表或者颜色掩码表,黑色表示位图数据部分。

3.1 1bit

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(3)

3.2 4bit

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(4)

3.3 8bit

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(5)

3.4 16bit A1R5G5B5

当压缩方式为BI_RGB时,X1R5G5B5等同于A1R5G5B5。

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(6)

3.5 16bit R5G6B5

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(7)

3.6 16bit X4R4G4B4

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(8)

3.7 24bit R8G8B8

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(9)

3.8 32bit A8R8G8B8

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(10)

3.9 32bit X8R8G8B8

图像处理中常用图像空间(图像处理简析Bitmap文件格式)(11)

——————(完)——————

,