1 bitmap filesize pixels image-size
我试图用C++代码分析车牌.重点不是如何快速实现目标,因为我想自己去创建这个C++代码并学习如何实现.
问题:
位图文件中的字节不加起来!位图文件:
http://ictmdeklerk.nl/cor.bmp
为什么他们不加起来:
我正在使用24位位图图像(*.BMP文件).我知道位图是用BMPFILEHEADER和BMPINFOHEADER构建的,它占用了54个字节.
现在,图像宽1350像素,高740像素,产生999000像素.
因为文件是24位,所以每个像素有3个字节.图像需要999000*3 = 2997000字节.但是BMPINFOHEADER中的图像大小(biSizeImage)表示图像是2998480字节!文件大小为2.998.534字节 - 确实54个头字节= 2.998.480.所以标题仍然是54个字节.那里没有额外的元数据.当我每像素除2.998.480/3字节时,得到999493,33像素!它甚至不是一个圆形的数字!
这让我疯了.Windows如何知道如何在不移动像素或颜色或任何东西的情况下显示此图像?
谁能解释一下这些额外的像素/字节来自哪里?以及如何处理它们?
提前致谢!
BMP文件将每行填充到4字节边界.
你的形象是
(1350px宽)x(每像素3个字节)=每行4050个字节.4050不能被4整除,但4052 是每行2个字节(2*740 = 1480字节)被添加为图像的填充.
因此,文件大小为2997000图像字节+ 54字节标头+ 1480字节行填充= 2998534字节,这是实际文件大小.
| 归档时间: |
|
| 查看次数: |
823 次 |
| 最近记录: |