图像转bitmap格式
【代码】图像转bitmap格式。
·
用构造函数将图片转bitmap
Bitmap bitmap = new Bitmap(img.Width(), img.Height(), stride, pixelFormat, img.ImageData());
构造函数解析
- 第一个参数:图像的宽度
- 第二个参数:图像的高度
- 第三个参数:
stride通常指的是图像在内存中存储时,每一行数据所占用的字节数。以下是单通道图像stride的计算方法:
1.确定每个像素的字节数:这取决于图像的位深度(每个像素的位数)。例如,8位灰度图像每个像素占用1个字节,16位灰度图像每个像素占用2个字节。
2.计算stride:将图像的宽度(以像素为单位)乘以每个像素的字节数。这给出了基础stride,即不考虑内存对齐时的stride。
3.如果需要考虑内存对齐(例如,为了确保内存访问效率,stride需要是4的倍数或其他特定值的倍数),则可能需要添加填充字节来调整stride。
//channel是图像通道(像素位深度除以8)
int stride = (img.Width() * img.Channel() + 3) / 4 * 4;
- 第四个参数:新bitmap的像素格式
- 第五个参数:指向包含像素数据的字节数组的指针。
更多推荐
所有评论(0)