您的位置:首页 > 其它

数字图像处理,BMP图像操作( biWidth*biBitCount+31)/32*4

2013-11-09 16:31 337 查看
准备知识:

位:"位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1,是计算机处理、存储、传输数据时使用的二进制格式。

字节:8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。

像素:

位图的一个像素值所占的字节数:

当biBitCount=1时,8个像素占1个字节;

当biBitCount=4时,2个像素占1个字节;

当biBitCount=8时,1个像素占1个字节;

当biBitCount=24时,1个像素占3个字节,此时图像为真彩色图像。

即:1个像素所占的字节数是biBitCount/8

解决:

 

Windows规定图像文件中一个扫描行所占的字节数必须是4的倍数(即以字为单位),不足的以0填充,图像文件中一个扫描行所占的字节数计算方法:

( biWidth*biBitCount+31)/32*4               一个扫描行所占的字节数

biWidth                                                        是图像的宽度以像素为单位,

biBitCount                                                   是每个像素的位数,

biWidth*biBitCount                                    是一行所占的位数

( biWidth*biBitCount+31)                          把不满4字节的补满,使最终结果得出来的位数只会比原来的多(结尾有余数,不满4字节),或者不变(刚好以4个字节(32位)结束)

( biWidth*biBitCount+31)/32                    分成一块块4字节(32位)

( biWidth*biBitCount+31)/32*4                前面对齐4字节结束。得出字节总和
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐