emgucv(opencv)byte[]数组转Image并显示于ImageBox的问题

tomchen008 2017-01-09 02:24:47
代码如下:

int dFaceWidth = 0;
int dFaceHeight = 0;
int dFaceLength = 921600;
byte[] dFaceBytes = new byte[921600]; //640*480
int code = sdk.IDFace_GetCropImage(iContext, 0, dFaceBytes, ref dFaceWidth, ref dFaceHeight, ref dFaceLength); //上面的函数返回获取图像的Bgr24位数组、图像宽、图像高,数据长度
Image<Bgr, byte> m = new Image<Bgr, byte>(640, 480);
m.Bytes = dFaceBytes;
picturebox1.Image = m.ToBitmap();
// dface.Save("f.bmp");
picturebox1.Update();

显示图像不正确,花屏,请指导一下如何正确显示,emgucv版本为3.10

...全文
876 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
花雨落成殇 2017-01-17
  • 打赏
  • 举报
回复
opencv需要把byte数组4字节对齐。
tomchen008 2017-01-13
  • 打赏
  • 举报
回复
我发现只要是获取的小图长宽被4整除,就可以正常显示图片,其它情况不行
Mr_Zhouzl 2017-01-11
  • 打赏
  • 举报
回复
能确认图像是单通道的吗?

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧