我看了一本关于数字图像处理的书,他提供的算法如下:
lLineBytes=WIDTHBYTES(m_nWidth*8),其中WIDTHBYTES的定义是:
#define WIDTHBYTES(bits) (((bits) + 31) / 32 * 4)我不明白为何用此公式;
m_nWidth是图像的宽度;请大侠帮忙解释一下公式.谢谢啦!
lLineBytes=WIDTHBYTES(m_nWidth*8),其中WIDTHBYTES的定义是:
#define WIDTHBYTES(bits) (((bits) + 31) / 32 * 4)我不明白为何用此公式;
m_nWidth是图像的宽度;请大侠帮忙解释一下公式.谢谢啦!
满意了吧,什么都有。
出到第二版了.我用的还是一版.大一点的书店应该都有吧.还有N多图像处理的书.没MONEY
没有买.怕把老板给买急了.
比如灰度图吧,每行宽度是191个象素即191bytes
如果要保存所有图像信息,你在写文件时每行字节数必须为
192=(191*1+3)/4*4;(也可通过位运算:(191*1+3)&~3)
如果是24位的彩色图,即每个象素有3个Bytes,只要把上式中*1换成*3即可。