1.BMP与YUV与RGB
BMP(全称 Bitmap)是 Windows 操作系统中的标准图像文件格式,可以分成两类:设备相关位图(DDB)和设备无关位图(DIB),使用广泛。它采用位映射存储格式,除了图像深度可选以外,在绝大多数应用中不采用其他任何压缩,因此,BMP 文件所占用的空间很大。BMP 文件的图像深度可选 lbit、4bit、8bit、16bit 及 24bit。BMP 文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。由于 BMP 文件格式是 Windows 环境中交换与图有关的数据的一种标准,因此在 Windows 环境中运行的图形图像软件都支持 BMP 图像格式。
RGB:对一种颜色进行编码的方法统称为“颜色空间”或“色域”。用最简单的话说,世界上任何一种颜色的“颜色空间”都可定义成一台固定的数字或变量。RGB(红、绿、蓝)只是众多颜色空间的一种。采用这种编码方法,每种颜色都可用三个变量来表示-红色绿色以及蓝色的强度。 记录及显示彩色图像时,RGB是最常见的一种方案。但是,它缺乏与早期黑白显示系统的良好兼容性。
YUV:“YUV(Y'CbCr)是一种像素格式,常见于视频编码与静态图像。与RGB格式(红-绿-蓝)相反,YUV 分别由一个称为Y(相当于灰度)的“亮度”分量(Luminance or Luma)和两个称为U(蓝色投影Cb)和V(红色投影Cr)的“色度”分量(Chrominance or Chroma)表示,由此得名。”
2.Y=0.299R+0.587G+0.114B+16 Cr=V=0.500R−0.419G−0.081B+128 Cb=U=−0.169R−0.331G+0.500B+128
3.实验补充
典型的BMP图像文件由四部分组成:(1)位图头文件数据结构,它包含BMP图像文件的类型、显示内容等信息;(2)位图信息数据结构,它包含有BMP图像的宽、高、压缩方法,以及定义颜色等信息;(3)调色板,这个部分是可选的,有些位图需要调色板,有些位图,比如真彩色图(24位的BMP)就不需要调色板;(4)位图数据,这部分的内容根据BMP位图使用的位数不同而不同,在24位图中直接使用RGB,而其他的小于24位的使用调色板中颜色索引值。相应的数据结构可表示如下:位图文件头主要包括:typedef struct tagBITMAPFILEHEADER {
2WORD bfType; /* 说明文件的类型*/DWORD bfSize;/* 说明文件的大小,用字节为单位*/WORD bfReserved1; /* 保留,设置为0 */WORD bfReserved2; /* 保留,设置为0 */DWORD bfOffBits; /* 说明从BITMAPFILEHEADER结构开始到实际的图像数据之间的字节偏移量*/} BITMAPFILEHEADER;(2) 位图信息头主要包括:typedef struct tagBITMAPINFOHEADER {DWORD biSize; /* 说明结构体所需字节数*/LONG biWidth; /* 以像素为单位说明图像的宽度*/LONG biHeight; /* 以像素为单位