我正在尝试在 VB6 中开发 OCR,但 BMP 格式存在一些问题。我一直在研究 OCR 过程,第一步是使用阈值将图像转换为“黑白”。转换过程很容易理解,我已经做到了。但是,我试图减小生成图像的大小,因为它使用较少的颜色(每个像素只有 256 个可能的灰度值)。在原始图像中,我有 3 种颜色(红色、绿色和蓝色),但现在我只需要一种颜色(灰度值)。在这一刻,我已经实现了转换,但生成的灰度图像与原始彩色图像具有相同的大小(我在三个通道中分配了相同的颜色值)。
我试图修改 BMP 文件的标题,但我没有取得任何成果,现在我不明白它是如何工作的。例如,如果我使用绘画转换图像,则标题中指定的偏移量会更改其值。如果标头是恒定的,为什么偏移量会改变它的值?