文档详情

第二节 数字图像基础.ppt

发布:2017-05-29约字共56页下载文档
文本预览下载声明
DWORD biClrUsed;//实际使用的颜色数,若该值为0,则使用的颜 色数为2的biBitCount次方种。 DWORD biClrImportant; //图像中重要的颜色数,若该值为0,则所 有的颜色都是重要的。 } BITMAPINFOHEADER; 说明: (1)、蓝色部分是需要加以注意的部分,因为它们是我们在进行位图操作时经常参考的变量。 (2)、biBitCount:对于每个像素的字节数,分别有以下意义: 0,不压缩 1,单色图,调色板中含有两种颜色,也就是我们通常说的黑白图片 4,16色图 8,256色图,通常说的灰度图 16,64K图,一般没有调色板,图像数据中每两个字节表示一个像素,5个或6个位表示一个RGB分量 24,16M真彩色图,一般没有调色板,图像数据中每3个字节表示一个像素,每个字节表示一个RGB分量 32,4G真彩色,一般没有调色板,每4个字节表示一个像素,相对24位真彩图而言,加入了一个透明度,即RGBA模式 (3)、biClrUsed:这个值通常为0,表示使用biBitCount确定的全部颜色,例外是使用的颜色数目小于制定的颜色深度的颜色数目的最大值。 (4)、biClrImportant:这个值通常为0,表示所有的颜色都是必需的。 颜色表一般是针对16位以下的图像而设置的,对于16位和16位以上的图像,由于其位图像素数据中直接对对应像素的RGB(A)颜色进行描述,因而省却了调色板。而对于16位以下的图像,由于其位图像素数据中记录的只是调色板索引值,因而需要根据这个索引到调色板去取得相应的RGB(A)颜色。颜色表的作用就是创建调色板。 下图是带调色板和不带调色板的位图的简单示意图: a. 带调色板的位图 b. 不带调色板的位图 调色板实际上是一个数组, 共有biClrUsed个元素(如果该值为零,则有2的biBitCount次方个元素)。数组中每个元素的类型是一个RGBQUAD结构, 占4个字节,其定义如下: typedef struct tagRGBQUAD{ BYTE rgbBlue; //该颜色的蓝色分量 BYTE rgbGreen; //该颜色的绿色分量 BYTE rgbRed; //该颜色的红色分量 BYTE rgbReserved; //保留值 } RGBQUAD; 其中需要注意的问题是,RGBQUAD结构中的颜色顺序是BGR,而不是平常的RGB。 第三部分就是实际的图像数据。    (1)位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上。位图的一个像素值所占的字节数: 当biBitCount=1时,8个像素占1个字节; 当biBitCount=4时,2个像素占1个字节; 当biBitCount=8时,1个像素占1个字节; 当biBitCount=16时,1个像素占2个字节(RGB555格式); 当biBitCount=24时,1个像素占3个字节(BGR格式); 当biBitCount=32时,1个像素占4个字节(BGR-格式,-表示不处理的字节) (2)Windows规定一个扫描行所占的字节数必须是4的倍数(即以long为单位),不足的以0填充。 一个扫描行所占的字节数计算方法: DataSizePerLine= (biWidth* biBitCount+31)/8; // 一个扫描行所占的字节数 DataSizePerLine= DataSizePerLine/4*4; // 字节数必须是4的倍数 位图数据的大小(不压缩情况下): DataSize= DataSizePerLine* biHeight; 2. TIF图像文件格式 标记图像文件格式TIF (Tag Image File Format), 它是现存图像文件格式中最复杂的一种,它提供存储各种信息的完备的手段, 可以存储专门的信息而不违反格式宗旨,是目前流行的图像文件交换标准之一。 3. GIF图像文件格式
显示全部
相似文档