OpenCV原始图像输入和输出

时间:2019-12-27 21:20:05

标签: c++ opencv winapi

我的项目是在视频编辑器中启用人脸检测。 使用OpenCV时,此代码有效:

using namespace cv;
CascadeClassifier cascade;
cascade.load("....xml");

Mat frame1 = imread("18.jpg");
std::vector<Rect> faces;
Mat gray;

// Optional
cvtColor(img, gray, COLOR_BGR2GRAY);
equalizeHist(gray, gray);


// Detect faces of different sizes using cascade classifier  
cascade.detectMultiScale(gray, faces);

但是我想让Mat充满我的运行时缓冲区,该缓冲区是(用于H.264编码的普通NV12,但是我可以有RGB)带有ARGB的DWORD数组。

Mat mat(H,W, CV_32S, (void*)raw.data());

我不确定从现在开始如何进行。创建的矩阵似乎有效,但是其余代码会崩溃。

是否存在适用于haar级联的特定格式?我的最终目标是将原始缓冲区传递给OpenCV,并获取结果而不必保存到中间JPG。

0 个答案:

没有答案