OpenCV无法从字节数组加载Bitmap(带有额外的跨步字节)

时间:2015-11-30 04:01:47

标签: c++ opencv bitmap

我有问题。当我从字节数组加载mat时,存在一个很大的问题;额外的字节导致mat加载错误。如果我发送字节数组(宽度:4-8-12-16-20等)这不是问题,因为宽度和步幅相等。但如果我的字节数组有额外的跨步字节图像已损坏。有没有办法让它成为正确的?

我正在使用的功能:

Mat bytesToMat(byte * bytes,int height,int width)
{
    Mat image = Mat(height,width,CV_8UC3,bytes).clone(); // make a copy
    return image;
}

实施例)

23宽幅图片加载为:enter image description here

加载24幅宽图像(正确):enter image description here

1 个答案:

答案 0 :(得分:0)

链接格式在评论中搞砸了,所以我会写一个答案。

请参阅构造函数stepsteps参数in the documentation。它允许您告诉OpenCV每行中有多少字节(包括填充)。

您还必须检查您用作输入的字节数组是否有任何添加的填充。