繁体   English   中英

在opencv中使用imshow显示字节数组的最快方法是什么?

[英]What is the fastest way to display a byte array using imshow in opencv?

我有一个指向图像缓冲区(字节数组)的指针,我知道行和列的数量。 在opencv中显示此图像数据的最快方法是什么。 请参阅下面的详细信息。

int               rows, cols;
unsigned char     *ImageBuffer;

if (err = WFS_GetSpotfieldImage(instr.handle, &ImageBuffer, &rows, &cols))
    handle_errors(err);

// what goes here to construct "MAT image" using the "ImageBuffer" which is a pointer?
Mat image(rows, cols, CV_8UC3, Scalar(255, 0, 0));

cv::namedWindow("Spot Field", cv::WINDOW_AUTOSIZE);
cv::imshow("Spot Field", image); 

使用此构造函数:

Mat :: Mat(int行,int列,int类型,void *数据,size_t步长= AUTO_STEP)

data –指向用户数据的指针。 带有数据和步骤参数的矩阵构造函数不分配矩阵数据。 相反,它们只是初始化指向指定数据的矩阵头,这意味着不会复制任何数据。 此操作非常有效,可用于使用OpenCV功能处理外部数据。 外部数据不会自动释放,因此您应该注意这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM