BMP文件格式

本文深入探讨了BMP图像文件的结构组成,包括文件头、图像头、图像数据及其偏移量的概念,并解释了如何通过不同的库(如OpenCV)生成BMP文件时图像数据信息的变化。此外,文章还详细介绍了图像数据的坐标系、字节顺序以及Java中读取BMP文件流时的字节顺序转换过程。

 

 

文件头 + bmp图像头 + bmp图像 + (填充字节)

地址偏移量是以Byte为单位,

图像数据相对于文件头的偏移位置是 bmp 的真正的图像像素数据矩阵相对于文件开头的偏移字节数。

文件大小是整个bmp文件的大小

 不同的库生成的bmp文件可能有些信息会没有,比如使用opencv生成的bmp,在imageSize上就没有,全是0。

bmp图像的大小,记录的是经过按照行进行4byte补足之后的图像数据大小

 

图像数据的坐标是从图像的左下角向右上角进行增长。和通常的 图像处理坐标系不太相同

HexDump 其实部分                        末尾部分                            原始图像

上面的数据是主机字节序(低地址的部分为数据的小字节),但是hexdump好像是按照word(2字节)的顺序组织的。

所以数据结构中设置的都是word为单位    (00 00) (4a36)

 

java中通过FileStream读取的文件流中,从低地址到高地址是 364a 0000    所以hexdump的显示已经是处理了的

转载于:https://www.cnblogs.com/sunniflyer/p/4061677.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值