我正在尝试使用 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怎么知道如何在不改变像素或颜色或任何东西的情况下显示此图像?
谁能解释我这些额外的像素/字节来自哪里?以及如何处理它们?
提前致谢!