关闭

BMP文件格式

2384人阅读 评论(0) 收藏 举报
   最近的工作,需要用到YUV文件,鉴于手头没有YUV转换工具,所以打算自己做一个。工具就选用VB了,用起来毕竟简单。
   想法是从BMP文件转成YUV格式,就选用YUV422(UYVY)好了。
   既然选用了BMP文件,那么就需要了解一下bmp文件的格式,下面是我拿到的相关资料:
以下面这幅图为例

 
offset  
size(byte)
field
data
0x 0
0x 2
0x 6
0x 8
0x a
0x e
0x12
0x16
0x1a
0x1c
0x1e
0x22
0x26
0x2a
0x2e
0x32
0x36
0x36
+4*n
2  
4  
2  
2  
4  
4  
4   
4   
2   
2   
4   
4   
4   
4   
4   
4   
4*n
“BM”                      
File Size(byte)             
(Reserved)                  
(Reserved)                  
start offset of image data  
size of Bitmap Header       
width of image data(pixel)  
height of image data(pixel) 
‘1’                        
bit / pixel (1,2,8,16,24)   
compress mode               
compressed image size       
level resolution( pixel /1m)
vertical resolution(pixel/1m)
numbers of use color        
important color             
color map ( if exists)      
image Data                  
B,G,R,B,G,R,B,G,R .......   
0x42 0x4d         
0x0000e136             
                              
                                
0x00000036                  
0x00000028                   
0x000000a0                      
0x00000078                       
0x0001         
0x0018                     
0                          
0x0000e100                     
N/A                          
N/A                           
0                           
0                       
N/A                       
                                
f0,c0,50,                   
f0,c1,4e,
 
 上面就是此幅24位图的图像结构,真正的RGB数据是从0x36这位开始的。而且还提供了图片的尺寸width of image data & height of image data。对我们后边进行转换提供了充足的信息。
  差点就忘记说了:bmp文件中还有一个特殊的地方,就是它的数据存储方式是从左下角开始的,如下图所示:
所以在转成YUV格式的时候,还需要将行进行颠倒才能看到正常的YUV图像。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:371140次
    • 积分:5078
    • 等级:
    • 排名:第5465名
    • 原创:153篇
    • 转载:27篇
    • 译文:0篇
    • 评论:87条
    最新评论
    镜像链接