BMP图片格式详解

BMP图片格式详解
BMP图片格式详解

BMP图像格式详解

一.简介

BMP(Bitmap-File)图形文件是Windows采用的图形文件格式,在Windows环境下运行的所有图象处理软件都支持BMP图象文件格式。Windows系统内部各图像绘制操作都是以BMP为基础的。Windows 3.0以前的BMP图文件格式与显示设备有关,因此把这种BMP图象文件格式称为设备相关位图DDB(device-dependent bitmap)文件格式。Windows 3.0以后的BMP图象文件与显示设备无关,因此把这种BMP图象文件格式称为设备无关位图DIB(device-independent bitmap)格式(注:Windows 3.0以后,在系统中仍然存在DDB位图,象BitBlt()这种函数就是基于DDB位图的,只不过如果你想将图像以BMP格式保存到磁盘文件中时,微软极力推荐你以DIB格式保存),目的是为了让Windows能够在任何类型的显示设备上显示所存储的图象。BMP位图文件默认的文件扩展名是BMP或者bmp(有时它也会以.DIB或.RLE作扩展名)。

二.BMP格式结构

BMP文件的数据按照从文件头开始的先后顺序分为四个部分:

◆位图文件头(bmp file header):提供文件的格式、大小等信息

◆位图信息头(bitmap information):提供图像数据的尺寸、位平面数、压缩方式、颜色索

引等信息

◆调色板(color palette):可选,如使用索引来表示图像,调色板就是索引与其对应的颜色

的映射表

◆位图数据(bitmap data):图像数据区

BMP图片文件数据表如下:

三.BMP文件头

BMP文件头结构体定义如下:

typedef struct tagBITMAPFILEHEADER

{

UINT16 bfType; //2Bytes,必须为"BM",即0x424D 才是Windows位

图文件

DWORD bfSize; //4Bytes,整个BMP文件的大小

UINT16 bfReserved1; //2Bytes,保留,为0

UINT16 bfReserved2; //2Bytes,保留,为0

DWORD bfOffBits; //4Bytes,文件起始位置到图像像素数据的字节偏移量} BITMAPFILEHEADER;

BMP文件头数据表如下:

四.BMP信息头

BMP信息头结构体定义如下:

typedef struct _tagBMP_INFOHEADER

{

DWORD biSize; //4Bytes,INFOHEADER结构体大小,存在其他版本I

NFOHEADER,用作区分

LONG biWidth; //4Bytes,图像宽度(以像素为单位)

LONG biHeight; //4Bytes,图像高度,+:图像存储顺序为Bottom2Top,

-:Top2Bottom

WORD biPlanes; //2Bytes,图像数据平面,BMP存储RGB数据,因此总为1 WORD biBitCount; //2Bytes,图像像素位数

DWORD biCompression; //4Bytes,0:不压缩,1:RLE8,2:RLE4

DWORD biSizeImage; //4Bytes,4字节对齐的图像数据大小

LONG biXPelsPerMeter; //4 Bytes,用象素/米表示的水平分辨率

LONG biYPelsPerMeter; //4 Bytes,用象素/米表示的垂直分辨率

DWORD biClrUsed; //4 Bytes,实际使用的调色板索引数,0:使用所

有的调色板索引

DWORD biClrImportant; //4 Bytes,重要的调色板索引数,0:所有的调色

板索引都重要

}BMP_INFOHEADER;

BMP信息头数据表如下:

五.BMP调色板

BMP调色板结构体定义如下:

typedef struct _tagRGBQUAD

{

BYTE rgbBlue; //指定蓝色强度

BYTE rgbGreen; //指定绿色强度

BYTE rgbRed; //指定红色强度

BYTE rgbReserved; //保留,设置为0 } RGBQUAD;

1,4,8位图像才会使用调色板数据,16,24,32位图像不需要调色板数据,即调色板最多只需要256项(索引0 - 255)。

颜色表的大小根据所使用的颜色模式而定:2色图像为8字节;16色图像位64字节;256色图像为1024字节。其中,每4字节表示一种颜色,并以B(蓝色)、G(绿色)、R(红色)、alpha(32位位图的透明度值,一般不需要)。即首先4字节表示颜色号1的颜色,接下来表示颜色号2的颜色,依此类推。

颜色表中RGBQUAD结构数据的个数有biBitCount来确定,当biBitCount=1,4,8时,分别有2,16,256个表项。

当biBitCount=1时,为2色图像,BMP位图中有2个数据结构RGBQUAD,一个调色板占用4字节数据,所以2色图像的调色板长度为2*4为8字节。

当biBitCount=4时,为16色图像,BMP位图中有16个数据结构RGBQUAD,一个调色板占用4字节数据,所以16像的调色板长度为16*4为64字节。

当biBitCount=8时,为256色图像,BMP位图中有256个数据结构RGBQUAD,一个

调色板占用4字节数据,所以256色图像的调色板长度为256*4为1024字节。

当biBitCount=16,24或32时,没有颜色表。

五.BMP图像数据区

位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上。位图的一个像素值所占的字节数:

当biBitCount=1时,8个像素占1个字节;

当biBitCount=4时,2个像素占1个字节;

当biBitCount=8时,1个像素占1个字节;

当biBitCount=24时,1个像素占3个字节;

Windows规定一个扫描行所占的字节数必须是4的倍数(即以long为单位),不足的以0填充,

一个扫描行所占的字节数计算方法:

DataSizePerLine= (biWidth* biBitCount+31)/8;

// 一个扫描行所占的字节数

DataSizePerLine= DataSizePerLine/4*4; // 字节数必须是4的倍数

位图数据的大小(不压缩情况下):

DataSize= DataSizePerLine* biHeight;

颜色表接下来位为位图文件的图像数据区,在此部分记录着每点像素对应的颜色号,其记录方式也随颜色模式而定,既2色图像每点占1位(8位为1字节);16色图像每点占4位(半字节);256色图像每点占8位(1字节);真彩色图像每点占24位(3字节)。所以,整个数据区的大小也会随之变化。究其规律而言,可的出如下计算公式:图像数据信息大小=(图像宽度*图像高度*记录像素的位数)/8。

bmp文件格式详解

b m p文件格式详解 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

BMP文件格式,又称为Bitmap(位图)或是DIB(Device-IndependentDevice,设备无关位图),是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。Windows的图形用户界面(graphicaluserinterfaces)也在它的内建图像子系统GDI中对BMP格式提供了支持。 下面以Notepad++为分析工具,结合Windows的位图数据结构对BMP文件格式进行一个深度的剖析。 BMP文件的数据按照从文件头开始的先后顺序分为四个部分: bmp文件头(bmpfileheader):提供文件的格式、大小等信息 位图信息头(bitmapinformation):提供图像数据的尺寸、位平面数、压缩方式、颜色索引等信息 调色板(colorpalette):可选,如使用索引来表示图像,调色板就是索引与其对应的颜色的映射表 位图数据(bitmapdata):就是图像数据啦^_^ 下面结合Windows结构体的定义,通过一个表来分析这四个部分。 我们一般见到的图像以24位图像为主,即R、G、B三种颜色各用8 个bit来表示,这样的图像我们称为真彩色,这种情况下是不需要调色 板的,也就是所位图信息头后面紧跟的就是位图数据了。因此,我们 常常见到有这样一种说法:位图文件从文件头开始偏移54个字节就是

位图数据了,这其实说的是24或32位图的情况。这也就解释了我们 按照这种程序写出来的程序为什么对某些位图文件没用了。 下面针对一幅特定的图像进行分析,来看看在位图文件中这四个数据 段的排布以及组成。 我们使用的图像显示如下: 这是一幅16位的位图文件,因此它是含有调色板的。 在拉出图像数据进行分析之前,我们首先进行几个约定: 1.在BMP文件中,如果一个数据需要用几个字节来表示的话,那么该数据的存放字节顺序为“低地址村存放低位数据,高地址存放高位数据”。如数据 0x1756在内存中的存储顺序为: 这种存储方式称为小端方式(littleendian),与之相反的是大端方式(bigendian)。对两者的使用情况有兴趣的可以深究一下,其中还是有学问的。 2.以下所有分析均以字节为序号单位进行。 下面我们对从文件中拉出来的数据进行剖析: 一、bmp文件头 Windows为bmp文件头定义了如下结构体: typedef struct tagBITMAPFILEHEADER {?

常用图片后缀格式识别常识

一、BMP格式 BMP是英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。随着Windows操作系统的流行与丰富的Windows应用程序的开发,BMP位图格式理所当然地被广泛应用。这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来的缺点--占用磁盘空间过大。所以,目前BMP在单机上比较流行。 二、GIF格式 GIF是英文Graphics Interchange Format(图形交换格式)的缩写。顾名思义,这种格式是用来交换图片的。事实上也是如此,上世纪80年代,美国一家著名的在线信息服务机构CompuServe针对当时网络传输带宽的限制,开发出了这种GIF图像格式。 GIF格式的特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛的应用。最初的GIF只是简单地用来存储单幅静止图像(称为GIF87a),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续的动画,使之成为当时支持2D动画为数不多的格式之一(称为GIF89a),而在GIF89a图像中可指定透明区域,使图像具有非同一般的显示效果,这更使GIF风光十足。目前Internet上大量采用的彩色动画文件多为这种格式的文件,也称为GIF89a格式文件。 此外,考虑到网络传输中的实际情况,GIF图像格式还增加了渐显方式,也就是说,在图像传输过程中,用户可以先看到图像的大致轮廓,然后随着传输过程的继续而逐步看清图像中的细节部分,从而适应了用户的"从朦胧到清楚"的观赏心理。目前Internet上大量采用的彩色动画文件多为这种格式的文件。 但GIF有个小小的缺点,即不能存储超过256色的图像。尽管如此,这种格式仍在网络上大行其道应用,这和GIF图像文件短小、下载速度快、可用许多具有同样大小的图像文件组成动画等优势是分不开的。 三、JPEG格式 JPEG也是常见的一种图像格式,它由联合照片专家组(Joint Photographic Experts Group)开发并以命名为"ISO 10918-1",JPEG仅仅是一种俗称而已。JPEG文件的扩展名为.jpg 或.jpeg,其压缩技术十分先进,它用有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像质量。 同时JPEG还是一种很灵活的格式,具有调节图像质量的功能,允许你用不同的压缩比例对这种文件压缩,比如我们最高可以把1.37MB的BMP位图文件压缩至20.3KB。当然我们完全可以在图像质量和文件尺寸之间找到平衡点。 1

常见医学图像格式

附录C 图像格式 译者:Synge 发表时间:2012-05-03浏览量:1604评论数:0挑错数:0 翻译:xiaoqiao 在fMRI的早期,由于大多数据都用不同研究脉冲序列采集,然后离线大量重建,而且各研究中心文件格式各不相同、大多数的分析软件也都是各研究单位内部编写运用。如果这些数据不同其他中心交流,数据的格式不影响他们的使用。因此图像格式就像巴别塔似的多式多样。随着fMRI领域的不断发展,几种标准的文件格式逐渐得到了应用,数据分析软件包的使用促进了这些文件格式在不同研究中心和实验室的广泛运用,直到近期仍有多种形式的文件格式存在。这种境况在过去的10年里随着公认的NIfTI格式的发展和广泛认可而优化。该附录就fMRI资料存储的常见问题以及重要的文件格式做一概述, 3.1 数据存储 正如第2章所述,MRI数据的存储常采用二进制数据格式,如8位或16位。因此,磁盘上数据文件的大小就是数据图像的大小和维度,如保存维度128 ×128×96的16位图像需要25,165,824位(3 兆字节)。为了保存图像的更多信息,我们希望保存原始数据,即元数据。元数据包含了图像的各种信息,如图像维度及数据类型等。这点很重要,因为可以获得二进制数据所不知道的信息,例如,图像是128 ×128×96维度的16位图像采集还是128 ×128×192维度的8位图像采集。在这里我们主要讨论不同的图像格式保存不同的数量及种类的元数据。 MRI的结构图像通常保存为三维的资料格式。fMRI数据是一系列的图像采集,可以保存为三维格式,也可以保存为四维文件格式(第4维为时间)。通常,我们尽可能保存为四维数据格式,这样可以减少文件数量,但是有些数据分析软件包不能处理四维数据。3.2 文件格式

BMP格式结构详解

位图文件(B it m a p-File,BMP)格式是Windows采用的图像文件存储格式,在Windows环境下运行的所有图像处理软件都支持这种格式。Windows 3.0以前的BMP位图文件格式与显示设备有关,因此把它称为设备相关位图(d evice-d ependent b itmap,DDB)文件格式。Windows 3.0以后的BMP位图文件格式与显示设备无关,因此把这种BMP位图文件格式称为设备无关位图(d evice-i ndependent b itmap,DIB)格式,目的是为了让Windows能够在任何类型的显示设备上显示BMP位图文件。BMP位图文件默认的文件扩展名是BMP或者bmp。 6.1.2 文件结构 位图文件可看成由4个部分组成:位图文件头(bitmap-file header)、位图信息头(bitmap-information header)、彩色表(color table)和定义位图的字节阵列,它们的名称和符号如表6-01所示。 表6-01 BMP图像文件组成部分的名称和符号 位图文件的组成结构名称符号 位图文件头(bitmap-file header)BITMAPFILEHEADE R bmfh 位图信息头(bitmap-information header)BITMAPINFOHEADE R bmih 彩色表(color table)RGBQUAD aColors[] 图像数据阵列字节BYTE aBitmapBits[ ] 位图文件结构可综合在表6-02中。 表6-02 位图文件结构内容摘要 偏移量域的名称大小内容 图像文件头0000h标识符 (Identifie r) 2 bytes两字节的内容用来识别位图的类型: ‘BM’ : Windows 3.1x, 95, NT, linux ‘BA’ :OS/2 Bitmap Array ‘CI’ :OS/2 Color Icon ‘CP’ :OS/2 Color Pointer ‘IC’ : OS/2 Icon ‘PT’ :OS/2 Pointer 0002h File Size 1 dword用字节表示的整个文件的大小 0006h Reserved 1 dword保留,设置为0 000Ah Bitmap Data Offset 1 dword从文件开始到位图数据开始之间的数据(bitmap data)之间的偏移量 000Eh Bitmap Header Size 1 dword位图信息头(Bitmap Info Header)的长度,用来 描述位图的颜色、压缩方法等。下面的长度表示: 28h - Windows 3.1x, 95, NT, … 0Ch - OS/2 1.x F0h - OS/2 2.x 0012h Width 1 dword位图的宽度,以像素为单位 0016h Height 1 dword位图的高度,以像素为单位 001Ah Planes 1 word位图的位面数 图像001Ch Bits Per Pixel 1 word每个像素的位数 1 - Monochrome bitmap

常用图片文件格式

总的来说,有两种截然不同的图像格式类型:即有损压缩和无损压缩。 1.有损压缩 有损压缩可以减少图像在内存和磁盘中占用的空间,在屏幕上观看图像时,不会发现它对图像的外观产生太大的不利影响。因为人的眼睛对光线比较敏感,光线对景物的作用比颜色的作用更为重要,这就是有损压缩技术的基本依据。 有损压缩的特点是保持颜色的逐渐变化,删除图像中颜色的突然变化。生物学中的大量实验证明,人类大脑会利用与附近最接近的颜色来填补所丢失的颜色。例如,对于蓝色天空背景上的一朵白云,有损压缩的方法就是删除图像中景物边缘的某些颜色部分。当在·屏幕上看这幅图时,大脑会利用在景物上看到的颜色填补所丢失的颜色部分。利用有损压缩技术,某些数据被有意地删除了,而被取消的数据也不再恢复。 无可否认,利用有损压缩技术可以大大地压缩文件的数据,但是会影响图像质量。如果使用了有损压缩的图像仅在屏幕上显示,可能对图像质量影响不太大,至少对于人类眼睛的识别程度来说区别不大。可是,如果要把一幅经过有损压缩技术处理的图像用高分辨率打印机打印出来,那么图像质量就会有明显的受损痕迹。 2.无损压缩 无损压缩的基本原理是相同的颜色信息只需保存一次。压缩图像的软件首先会确定图像中哪些区域是相同的,哪些是不同的。包括了重复数据的图像(如蓝天) 就可以被压缩,只有蓝天的起始点和终结点需要被记录下来。但是蓝色可能还会有不同的深浅,天空有时也可能被树木、山峰或其他的对象掩盖,这些就需要另外记录。从本质上看,无损压缩的方法可以删除一些重复数据,大大减少要在磁盘上保存的图像尺寸。但是,无损压缩的方法并不能减少图像的内存占用量,这是因为,当从磁盘上读取图像时,软件又会把丢失的像素用适当的颜色信息填充进来。如果要减少图像占用内存的容量,就必须使用有损压缩方法。 无损压缩方法的优点是能够比较好地保存图像的质量,但是相对来说这种方法的压缩率比较低。但是,如果需要把图像用高分辨率的打印机打印出来,最好还是使用无损压缩几乎所有的图像文件都采用各自简化的格式名作为文件扩展名。从扩展名就可知道这幅图像是按什么格式存储的,应该用什么样的软件去读/写等等。 一、BMP图像文件格式 BMP是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BblP文件所占用的空间很大。BMP文件的图像深度可选lbit、4bit、8bit及24bit。BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。 由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows 环境中运行的图形图像软件都支持BMP图像格式。

BMP图像格式详解

BMP格式图像文件详析 首先请注意所有的数值在存储上都是按“高位放高位、低位放低位的原则”,如12345678h放在存储器中就是7856 3412)。下图是导出来的开机动画的第一张图加上文件头后的16进制数据,以此为例进行分析。T408中的图像有点怪,图像是在电脑上看是垂直翻转的。在分析中为了简化叙述,以一个字(两个字节为单位,如424D就是一个字)为序号单位进行,“h”表示是16进制数。 424D 4690 0000 0000 0000 4600 0000 2800 0000 8000 0000 9000 0000 0100*1000 0300 0000 0090 0000 A00F 0000 A00F 0000 0000 0000 0000 0000*00F8 0000 E007 0000 1F00 0000 0000 0000*02F1 84F1 04F1 84F1 84F1 06F2 84F1 06F2 04F2 86F2 06F2 86F2 86F2 ...... BMP文件可分为四个部分:位图文件头、位图信息头、彩色板、图像数据阵列,在上图中已用*分隔。 一、图像文件头 1)1:图像文件头。424Dh=’BM’,表示是Windows支持的BMP 格式。

2)2-3:整个文件大小。4690 0000,为00009046h=36934。 3)4-5:保留,必须设置为0。 4)6-7:从文件开始到位图数据之间的偏移量。4600 0000,为00000046h=70,上面的文件头就是35字=70字节。 5)8-9:位图图信息头长度。 6)10-11:位图宽度,以像素为单位。8000 0000,为00000080h=128。 7)12-13:位图高度,以像素为单位。9000 0000,为00000090h=144。 8)14:位图的位面数,该值总是1。0100,为0001h=1。 二、位图信息头 9)15:每个像素的位数。有1(单色),4(16色),8(256色),16(64K色,高彩色),24(16M色,真彩色),32(4096M色,增强

常用图片格式简介

图形图像文件大致上可以分为两大类:一类为位图文件;另一类称为描绘类、矢量类或面向对象图形图像文件。前者以点阵形式描述图形图像,后者是以数学方法描述的一种由几何元素组成的图形图像。一般说来,后者对图像的表达细致、真实,缩放后图形图像的分辨率不变,在专业级的图形图像处理中应用较多。 1、点阵图形图像文件 *.bmp(Bitmap) *.bmp是Windows中的标准图像文件格式,已成为PC机Windows系统中事实上的工业标准,有压缩和不压缩两种形式。它以独立于设备的方法描述位图,可用非压缩格式存储图像数据,解码速度快,支持多种图像的存储,常见的各种P C图形图像软件都能对其进行处理。在PhotoShop中,最多可以使用16M的色彩渲染bmp图像。 *.dib(Device Independent Bitmap) *.dib是一种类似于*.bmp的图形文件格式,描述图像的能力与*.bmp基本相同,并且能够运行在多种硬件平台上,只是文件较大。常见的各种P C图形图像软件都能够对其进行处理。 *.gif(Graphics Interchange Format) *.gif是在各种平台的各种图形处理软件上均能够处理的、经过压缩的一种图形文件格式。它是可在Macintosh、Amiga、Atati、IBM 机器间进行移植的一种标准位图格式。该格式由C ompuserver 公司创建,存储色彩最高只能达到256种。在颜色深度和图像大小上,*.gif 类似于*.pcx;在结构上,*.gif类似于*.tiff。正因为它是经过压缩的图像文件格式,所以大多用在网络传输上,速度要比传输其他图像文件格式快得多。它的最大缺点是最多只能处理2 56种色彩,故不能用于存储真彩色的图像文件,但其GIF89a格式能够存储成背景透明的形式,并且可以将数张图存成一个文件,从而形成动画效果。 *.png (Portable Network Graphics) *.png是一种能存储32位信息的位图文件格式,其图像质量远胜过*.gif。同*.gif一样,*.pn g也使用无损压缩方式来减少文件的大小。在压缩位图数据时,它采用了颇受好评的l z77算法的一个变种。目前,越来越多的软件开始支持这一格式,在不久的将来,它可能会在整个Web上广泛流行。*.png图像可以是灰阶的(1 6位)或彩色的(48位),也可以是8位的索引色。*.png图像使用的是高速交替显示方案,显示速度很快,只需要下载1/64的图像信息就可以显示出低分辨率的预览图像。与* .gif不同的是,*.png图像格式不支持动画。 *.rle(Run Length Compressed) *.rle是一种压缩过的位图文件格式。RLE压缩方案是一种极其成熟的压缩方案,特点是无损失压缩(Lossless),既节省了磁盘空间,又不损失任何图像数据。但是,有利就有弊,在打开这种压缩文件时,要花费更多的时间。此外,一些兼容性不太好的应用程序可能会打不开* .rle文件。

各种图片格式的区别

数码图像的基本概念 像素 像素(pixel)是计算机上用来记录图像的基本组成单位,也是组成“位图”的最小单位。“像素”数量越多,越可以表现图像细微的部分,品质和文件也会相应增加:反之“像素”数量越少,当图像放大到一定程度时,在图像边缘处容易产生失真的锯齿状(一种类似马赛克德色块)。 一般最常用的判断数码相机品质的因素就是看它的最高像素是多少。 许多不同颜色拼凑起来的“像素”所构成的集合称之为“分辨率”(resolution) 如果作品要用在杂志类高品质的纸张上,建议“分辨率”设置为300dpi以上,而一般文书报告或报纸则是150dpi,网页、多媒体等在屏幕上显示的作品设置为72~96dpi即可。 注因每张照片所含的颜色组成组成数字不同,文件的大小也不相同。一般使用在图像上的分辨率单位为ppi,指每英寸所包含的像素点;而打印机上的分辨率单位为dpi,指每英寸所包含的图点。 位图和矢量图 1、位图 位图(Raster Image)是以像素点为基础,用点的方式来记录图形中所有使用的颜色色码,像拼图一样组成整张图像。位图能真实呈现图像的原貌以及色彩上的细微差异,但放大后会产生如马赛克色块般的锯齿边缘。 2、矢量图 矢量图(V ector Image)以“数学运算”为基础,就像“两点成一条直线”的概念,这两点的距离可以是1cm,也可以10cm,所形成直线是根据两点的距离重新计算出来的,因此不会涉及“分辨率”的问题,当然也就没有“放大后会失真产生锯齿状”的问题。所以,矢量图的文件大多比位图要少,这也是为什么网络上flash矢量动画会如此盛行的一个很重要的原因。 3、位图和矢量图的应用范围 一般而言,位图适合如人物、风景、产品等这类需要表示真实图像的地方,因为“像素”可以真实地记录下所有的图像信息;而矢量图则是适合卡通、线条画等表现抽象意念的地方,因为矢量图在色彩的表现上不及位图来的细腻(尤其是在渐变色上),它无法完整地记录下图像的信息,只能用线条模拟出类似的效果,因此矢量图一般给人的印象多为仿真的感觉,不易产生像照片拍摄出来的细腻质感,但却是讲究精准的设计图最好的选择。 颜色模式 1、CMYK颜色(青色cyan、洋红magenta、黄色yellow、黑色black) 用“减色法”来混合出各种色彩,色彩,颜色在相互混合后,重叠的部分越加越暗。理论上CMY三种原色经过混色后,便能展现不同层次的灰度色彩,常应用于实际印刷的出版物中,但为求得更细腻的表现,所以特别将黑色独立出来,例如市场上销售的彩色喷墨打印机所使用的墨盒,就是应用印刷时的配色方式。 注印刷用分辨率最好在1000~3000dpi以上,才能用于大图输出。 2、RGB颜色(红red、绿green、蓝blue)——全彩图像 以“加色法”来将色彩的三原色(红、绿、蓝)混合出各种色彩,如(r255、g255、b255)会产生白色,颜色在混合后重叠的部分越加越亮。以一张24位全彩图像来说,每个像素以8位所组成,以28计算每个原色从最暗到最亮共有256种明暗变化,数值为0时最暗、255时最亮,所以共计有256*256*256近1600万种涵盖大部分肉眼可辨识的颜色。而当RGB 为最大混色时(数值皆为255),就会形成白色。

BMP头文件格式

bmp头文件格式 1:BMP文件组成 BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成。2:BMP文件头(14字节) BMP文件头数据结构含有BMP文件的类型、文件大小和位图起始位置等信息。 其结构定义如下: typedef struct tagBITMAPFILEHEADER { WORDbf Type; // 位图文件的类型,必须为BMP(0-1字节) DWORD bfSize; // 位图文件的大小,以字节为单位(2-5字节) WORD bfReserved1; // 位图文件保留字,必须为0(6-7字节) WORD bfReserved2; // 位图文件保留字,必须为0(8-9字节) DWORD bfOffBits; // 位图数据的起始位置,以相对于位图(10-13字节) // 文件头的偏移量表示,以字节为单位 } BITMAPFILEHEADER; 3:位图信息头(40字节) BMP位图信息头数据用于说明位图的尺寸等信息。 typedef struct tagBITMAPINFOHEADER{ DWORD biSize; // 本结构所占用字节数(14-17字节) LONG biWidth; // 位图的宽度,以像素为单位(18-21字节)

LONG biHeight; // 位图的高度,以像素为单位(22-25字节) WORD biPlanes; // 目标设备的级别,必须为1(26-27字节) WORD biBitCount;// 每个像素所需的位数,必须是1(双色),(28-29字节) // 4(16色),8(256色)或24(真彩色)之一 DWORD biCompression; // 位图压缩类型,必须是0(不压缩),(30-33字节) // 1(BI_RLE8压缩类型)或2(BI_RLE4压缩类型)之一 DWORD biSizeImage; // 位图的大小,以字节为单位(34-37字节) LONG biXPelsPerMeter; // 位图水平分辨率,每米像素数(38-41字节) LONG biYPelsPerMeter; // 位图垂直分辨率,每米像素数(42-45字节) DWORD biClrUsed;// 位图实际使用的颜色表中的颜色数(46-49字节) DWORD biClrImportant;// 位图显示过程中重要的颜色数(50-53字节) } BITMAPINFOHEADER; 4:颜色表 颜色表用于说明位图中的颜色,它有若干个表项,每一个表项是一个RGBQUAD类型的结构,定义一种颜色。RGBQUAD结构的定义如下: typedef struct tagRGBQUAD {

常用多媒体素材的类型和格式

常用多媒体素材的类型和格式 常用多媒体素材的类型有文本素材、图像素材、音频素材、视频素材、动画素材等。其中,图像素材的常见文件格式有jpg、gif、bmp等;音频素材的常见文件格式有wav、mp3、wma、mid等;视频素材的常见文件格式有wmv、rm、avi或mpg等;动画素材的常见文件格式有gif、swf等。常用多媒体素材和文件格式总结如下图所示。 下面对图片文件和视频文件进行详细介绍。 1.图片文件

在课件制作中,我们常用到的图片文件分为图形(矢量图)和图像两种。应用于多媒体教学课程中的图片格式常见的有jpg、tiff、和bmp等图像格式。 JPEG图像格式:扩展名为jpg或jpeg,其全称为Joint Photographic Experts Group。它用有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,其压缩比通常在10:1~40:1之间,很适合应用在网页的图像中,目前各类浏览器均支持JPEG这种图像格式。同时JPEG还是一种很灵活的格式,具有调节图像质量的功能,允许你用不同的压缩比例对这种文件压缩,已广泛应用于彩色传真、静止图像、电话会议、印刷及新闻图片的传送上。但*.jpg/*.jpeg文件并不适合放大观看,输出成印刷品时品质也会受到影响。 TIFF图像格式:扩展名是tif,全名是Tagged Image File Format。它是一种非失真的压缩格式(最高也只能做到2-3倍的压缩比),能保持原有图像的颜色及层次,但占用空间却很大。TIFF常被用于较专业的用途,如书籍出版、海报等,极少应用于互联网或多媒体课件上。 GIF图像格式:扩展名是gif,全称为Graphics Interchange Format(图形交换格式)。它在压缩过程中,图像的资料不会被丢失,丢失的是图像的色彩。格式最多只能储存256色,所以通常用来显示简单图形及字体,在课件中常用来制作小动画或图形元素。 BMP图像格式:扩展名是bmp,是Windows中标准图像文件格式,已成为PC机Windows 系统中事实上的工业标准,有压缩和不压缩两种形式。它以独立于设备的方法描述位图,可用非压缩格式存储图像数据,解码速度快,支持多种图像的存储,各种PC图形图像软件都能对其进行处理。 SVG格式:扩展名是svg,全称为,意思为可缩放的矢量图形。SVG是W3C(World Wide Web ConSor—tium)在2000年8月制定的一种新的二维矢量图形格式,也是规范中的网络矢

bmp图像的读取

BMP图像文件由三部分组成:位图文件头数据结构,它包含BMP图像文件的类型、显示内容等信息;位图信息数据结构,它包含有BMP图像的宽、高、压缩方法,以及定义颜色等信息。 位图文件主要分为如下3个部分: 1、文件信息头BITMAPFILEHEADER 结构体定义如下: typedef struct tagBITMAPFILEHEADER { WORD bfType; DWORD bfSize; WORD bfReserved1; WORD bfReserved2; DWORD bfOffBits; } BITMAPFILEHEADER; 其中: 2、位图信息头BITMAPINFOHEADER

结构体定义如下: typedef struct tagBITMAPINFOHEADER { DWORD biSize; LONG biWidth; LONG biHeight; WORD biPlanes; WORD biBitCount; DWORD biCompression; DWORD biSizeImage; LONG biXPelsPerMeter; LONG biYPelsPerMeter; DWORD biClrUsed; DWORD biClrImportant; } BITMAPINFOHEADER; 其中:

BMP头文件格式以及C语言读取头文件(二) 具体数据举例: 如某BMP文件开头: 424D 4690 0000 0000 0000 4600 0000 2800 0000 8000 0000 9000 0000 0100*1000 0300 0000 0090 0000 A00F 0000 A00F 0000 0000 0000 0000 0000*00F8 0000 E007 0000 1F00 0000 0000 0000*02F1 84F1 04F1 84F1 84F1 06F2 84F1 06F2 04F2 86F2 06F2 86F2 86F2 .... .... BMP文件可分为四个部分:位图文件头、位图信息头、彩色板、图像数据阵列,在上图中已用*分隔。 一、图像文件头 1)1:(这里的数字代表的是"字",即两个字节,下同)图像文件头。424Dh=’BM’,表示是Windows支持的BMP格式。 2)2-3:整个文件大小。4690 0000,为00009046h=36934。 3)4-5:保留,必须设置为0。 4)6-7:从文件开始到位图数据之间的偏移量。4600 0000,为00000046h=70,上面的文件头就是35字=70字节。 5)8-9:位图图信息头长度。 6)10-11:位图宽度,以像素为单位。8000 0000,为00000080h=128。 7)12-13:位图高度,以像素为单位。9000 0000,为00000090h=144。 8)14:位图的位面数,该值总是1。0100,为0001h=1。 二、位图信息头 9)15:每个像素的位数。有1(单色),4(16色),8(256色),16(64K 色,高彩色),24(16M色,真彩色),32(4096M色,增强型真彩色)。1000为0010h=16。 10)16-17:压缩说明:有0(不压缩),1(RLE 8,8位RLE压缩),2(RLE 4,4位RLE压缩,3(Bitfields,位域存放)。RLE简单地说是采用像素数+像素值的方式进行压缩。T408采用的是位域存放方式,用两个字节表示一个像素,位域分配为r5b6g5。图中0300 0000为00000003h=3。 11)18-19:用字节数表示的位图数据的大小,该数必须是4的倍数,数值上等于位图宽度×位图高度×每个像素位数。0090 0000为 00009000h=80×90×2h=36864。

图片常用文件几种格式

图片文件格式简介 一、格式 是英文(位图)地简写,它是操作系统中地标准图像文件格式,能够被多种应用程序所支持.随着操作系统地流行与丰富地应用程序地开发,位图格式理所当然地被广泛应用.这种格式地特点是包含地图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来地缺点占用磁盘空间过大.所以,目前在单机上比较流行. 二、格式 是英文(图形交换格式)地缩写.顾名思义,这种格式是用来交换图片地.事实上也是如此,上世纪年代,美国一家著名地在线信息服务机构针对当时网络传输带宽地限制,开发出了这种图像格式. 格式地特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛地应用. 最初地只是简单地用来存储单幅静止图像(称为),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续地动画,使之成为当时支持动画为数不多地格式之一(称为),而在图像中可指定透明区域,使图像具有非同一般地显示效果,这更使风光十足.目前上大量采用地彩色动画文件多为这种格式地文件,也称为格式文件. 此外,考虑到网络传输中地实际情况,图像格式还增加了渐显方式,也就是说,在图像传输过程中,用户可以先看到图像地大致轮廓,然后随着传输过程地继续而逐步看清图像中地细节部分,从而适应了用户地"从朦胧到清楚"地观赏心理.目前上大量采用地彩色动画文件多为这种格式地文件. 但有个小小地缺点,即不能存储超过色地图像.尽管如此,这种格式仍在网络上大行其道应用,这和图像文件短小、下载速度快、可用许多具有同样大小地图像文件组成动画等优势是分不开地. 三、格式 也是常见地一种图像格式,它由联合照片专家组()开发并以命名为" ",仅仅是一种俗称而已.文件地扩展名为或,其压缩技术十分先进,它用有损压缩方式去除冗余地图像和彩色数据,获取得极高地压缩率地同时能展现十分丰富生动地图像,换句话说,就是可以用最少地磁盘空间得到较好地图像质量. 同时还是一种很灵活地格式,具有调节图像质量地功能,允许你用不同地压缩比例对这种文件压缩,比如我们最高可以把地位图文件压缩至.当然我们完全可以在图像质量和文件尺寸之间找到平衡点. 由于优异地品质和杰出地表现,它地应用也非常广泛,特别是在网络和光盘读物上,肯定都能找到它地影子.目前各类浏览器均支持这种图像格式,因为格式地文件尺寸较小,下载速度快,使得页有可能以较短地下载时间提供大量美观地图像,同时也就顺理成章地成为网络上最受欢迎地图像格式. 四、格式 同样是由组织负责制定地,它有一个正式名称叫做" ",与相比,它具备更高压缩率以及更多新功能地新一代静态影像压缩技术. 作为地升级版,其压缩率比高约左右.与不同地是,同时支持有损和无损压缩,而只能

photoshop支持的常用图片格式及其介绍

PSD(*.PSD) PSD格式是Adobe Photoshop软件自身的格式,这种格式可以存储Photoshop中所有的图层,通道、参考线、注解和颜色模式等信息。在保存图像时,若图像中包含有层,则一般都用Photoshop(PSD)格式保存。保存后的图像将不具有任何图层。 PSD格式在保存时会将文件压缩,以减少占用磁盘空间,但PSD格式所包含图像数据信息较多(如图层、通道、剪辑路径、参考线等),因此比其他格式的图像文件还是要大得多。由于PSD文件保留所有原图像数据信息,因而修改起来较为方便,大多数排版软件不支持PSD格式的文件,必须到图像处理完以后,再转换为其他占用空间小而且存储质量好的文件格式。 BMP(*.BMP) BMP文件格式是一种Windows或OS2标准的位图式图像文件格式,它支持RGB、索引颜色、灰度和位图样式模式,但不支持Alpha通道。该文件格式还可以支持1~24位的格式,其中对于4~8位的图像,使用Run Length Encodlng(RLE.运行长度编码)压缩方案,这种压缩方案不会损失数据,是一种非常稳定的格式。BMP格式不支持CMYK模式的图像。 TIFF(*.TIf) TIFF的英文全名是Tagged Image File Format(标记图像文件格式)。它是一种无损压缩格式,TIFF格式便于应用程序之间和计算机平台之间图像数据交换。因此,TIFF格式是应用非常广泛的一种图像格式,可以在许多图像软件和平台之间转换。TIFF格式支持RGB、CMYK和灰度3种颜色模式中还支持使用通道(Channels)、图层(Layers)和裁切路径

(Paths)的功能,他可以将图像中裁切路径以外的部分在置入到排版软件中(如PageMaker)时变为透明。 在Photoshop中另存为Basic TIFF的文件格式会出现一对话框,从中可以选择PC机或Macintosh苹果机的格式,并且在保存时可以选择用LZW压缩保存的图像文件。Enhanced TIFF格式不支持裁切路径,在另存的对话框中可以选择多种压缩方式,如在Compression(压缩)下拉列表中选择LZW、ZIP和JPEG的压缩方式,以减少文件所占的磁盘空间。虽然可以减少文件大小,但会增加打开文件和存储文件的时间。也可以选择OC机或Macintosh苹果机的格式。 JPEG(*.JPG) JPEG的英文全名是Jont Picture Expert Group(联合图像专家组),它是一种有损压缩格式。此格式的图像通常用于图像预览和一些超文本文档中(HTML文档)。JPEG格式的最大特色就是文件比较小,可以进行高倍率的压缩,是目前所有格式中压缩率最高的格式之一。但是JPEG格式在压缩保存的过程中会以失量最小的方式丢掉一些肉眼不易察觉得数据。因而保存的图像与原图有所差别,没有原图的质量好,因此印刷品最好不要用此图像格式。 JPEG格式支持CMYK、RGB和灰度的颜色模式,但不支持Alpha通道。当将一个图像另存为JPEG的图像格式是,会打开JPEG Options对话框,从中可以选择图像的品质和压缩比例,通常大部分的情况下选择“最大”选择来压缩图像所产生的品质与原来图像的质量差别不大,但文件大小会减少很多。 Photoshop EPS(*.EPS) EPS格式为压缩的PostScript格式,是为在PostScript打印机上输出图像开发的格式。其最大优点在于可以在排版软件中以低分辨率预览,而在打印时以高分辨率输出。它不支持

BMP图像格式分析

BMP图像格式分析 BMP图像文件格式是微软公司为其Windows环境设置的标准图像格式,而且 Windows系统软件中还同时内含了一系列支持BMP图像处理的API函数,随着Windows 在世界范围内的不断普及,BMP文件格式无疑也已经成为PC机上的流行图像文件格式。它的主要特点可以概括为:文件结构与PCX文件格式类似,每个文件只能存放一幅图像;图像数据是否采用压缩方式存放,取决于文件的大小与格式,即压缩处理成为图像文件的一个选项,用户可以根据需要进行选择。其中,非压缩格式是BMP图像文件所采用的一种通用格式。但是,如果用户确定将BMP文件格式压缩处理,则Windows设计了两种压缩方式:如果图像为16色模式,则采用RLE4压缩方式,若图像为256色模式,则采用RLE8压缩方式。同时,BMP 图像文件格式可以存储单色、16色、256色以及真彩色四种图像数据,,其数据的排列顺序与一般文件不同,它以图像的左下角为起点存储图像,而不是以图像的左上角为起点;而且BMP图像文件格式中还存在另外一个与众不同的特点,即其调色板数据所采用的数据结构中,红、绿、蓝三种基色数据的排列顺序也恰好与其它图像文件格式相反。总之,BMP图像文件格式拥有许多适合于Windows环境的新特色,而且随着Windows版本的不断更新,微软公司也在不断改进其BMP 图像文件格式,例如:当前BMP图像文件版本中允许采用32位颜色表,而且针对32位Windows 的产生,相应的API 函数也在不断地报陈出新,这些无疑都同时促成了BMP文件格式的不断风靡。但由于BMP文件格式只适合于Windows上的应用软件,而对于DOS环境中的各种应用软件则无法提供相应的支持手段,因此这无疑是阻碍BMP文件格式的流通程度超过PCX文件格式的一个重要因素。 Windows中定义了两种位图文件类型,即一般位图文件格式与设备无关位图文件格式。其中,由于设备无关位图(DIB)文件格式具有更强的灵活性与完整的图像数据、压缩方式等定义。BMP图像文件的结构可以分为如下三个部分:文件头、调色板数据以及图像数据。其中文件头的长度为固定值54个字节;调色板数据对所有不超过256色的图像模式都需要进行设置,即使是单色图像模式也不例外,但是对于真彩色图像模式,其对应的BMP文件结构中却不存在相应调色板数据的设置信息;图像数据既可以采用一定的压缩算法进行处理,也可以不必对图像数据进行压缩处理,这不仅与图像文件的大小相关,而且也与对应的图像处理软件是否支持经过压缩处理的BMP图像文件相关。以下将分别介绍BMP图像文件结构中的这三个重要组成部分。特别值得注意的是:BMP 图像文件结构设计得相当简单,这无疑有利于图像文件的处理速度,但是同时也使得 BMP图像文件格式具有一定的局限性,即一个BMP图像文件只能存储一幅图像。 BMP图像文件的文件头定义 Windows中将BMP图像文件的文件头分成两个数据结构,其中一个数据结构中包含BMP文件的类型、大小和打印格式等信息,称为BITMAPFILEHEADERl另外一个数据结构中则包含BMP文件的尺寸定义等信息,称为BITMAPINFOHEADERl 如果图像文件还需要调色板数据,则将其存放在文件头信息之后。 BITMAPFIlEHEADER数据结构在Windows.h中的定义为: typedef struCttagBITMAPFIlEHEADER { WORD bftype; DWORD bfsiZe: WORD bfReservedl; WORD bgReserved2: DWORD bfoffBits: }BITMAPFILEHEADER; 其中,bfrype在图像文件存储空间中的数据地址为0,数据类型为unsignedchar,内容为固定值“BM”,用于标志文件格式,表示该图像文件为BMP文件。 bfsize的数据地址为2,类型为unsignedlong,它以字节为单位,定义位图文件的大小。 bfReservedl与bfReserved2的数据地址分别为6和8,数据类型则都为unsignedint,二者都是BMP文件的保留字,没有任何意义,其值必须为0. bfoffBits的数据地址为10,数据类型为unsignedlong,它以字节为单位,指示图像数据在文件内的起始地址,即图像数

BMP文件格式

BMP文件格式 简介 BMP(Bitmap-File)图形文件是Windows采用的图形文件格式,在Windows环境下运行的所有图象处理软件都支持BMP图象文件格式。Wi ndows系统内部各图像绘制操作都是以BMP为基础的。Windows 3.0以前的BMP图文件格式与显示设备有关,因此把这种BMP图象文件格式称为设备相关位图DDB(device-dependent bitmap)文件格式。Windows 3.0以后的BMP图象文件与显示设备无关,因此把这种BM P图象文件格式称为设备无关位图DIB(device-independent bitmap)格式(注:Windows 3.0以后,在系统中仍然存在DDB位图,象BitBl t()这种函数就是基于DDB位图的,只不过如果你想将图像以BMP格式保存到磁盘文件中时,微软极力推荐你以DIB格式保存),目的是为了让Windows能够在任何类型的显示设备上显示所存储的图象。BMP位图文件默认的文件扩展名是BMP或者bmp(有时它也会以.DIB 或.RLE作扩展名)。 此图用WinHex软件打开后结果如下:(在介绍完bmp文件格式后会具体分析这些数字,最后也有matlab对此图的分析)注:此图是24位真彩色图。 文件结构 位图文件可看成由4个部分组成:位图文件头(bitmap-file header)、位图信息头(bitmap-information header)、彩色表(color table)和定义位图的字节阵列,它具有如下所示的形式。

位图文件结构可综合在表6-01中。表01 位图文件结构内容摘要

构件详解 1. 位图文件头 位图文件头包含有关于文件类型、文件大小、存放位置等信息,在Windows 3.0以上版本的位图文件中用BITMAPFILEHEADER结构来定义: typedef struct tagBITMAPFILEHEADER { /* bmfh */ UINT bfType; DWORD bfSize; UINT bfReserved1; UINT bfReserved2; DWORD bfOffBits; } BITMAPFILEHEADER; 其中: bfType 说明文件的类型.(该值必需是0x4D42,也就是字符'BM'。我们不需要判断OS/2的位图标识,这么做现在来看似乎已经没有什么意义了,而且如果要支持OS/2的位图,程序将变得很繁琐。所以,在此只建议你检察'BM'标识) bfSize 说明文件的大小,用字节为单位bfReserved1 保留,必须设置为0

相关文档
最新文档