1

我一直在尝试使用 C++ 在 OpenCV 中实现跟踪器(CSRT),但是当

tracker->init(firstframe, boundingbox)部分被执行。

这是下面的错误消息,

..../opencv/modules/core/src/merge.dispatch.cpp:129:错误:(-215:断言失败)mv[i].size == mv[0].size && mv[i]。 depth() == 函数“合并”中的深度

这是我的代码。顺便说一句,我正在研究 Jetson Nano,我必须进行一些从 float* 到 cv::Mat 的类型转换。

cv::Mat first_frame;
float* first_imgRGBA = NULL;
camera->CaptureRGBA(&first_imgRGBA, 1000, 1);
first_frame = cv::Mat(camera->GetHeight(), camera->GetWidth(), CV_32FC4, first_imgRGBA);
first_frame /= 255;
cv::cvtColor(first_frame, first_frame, cv::COLOR_RGBA2BGR);
Rect2d bbox(287, 23, 86, 320);
rectangle(first_frame, bbox, Scalar( 255, 0, 0 ), 2, 1 );   
imshow("Tracking", first_frame);
tracker->init(first_frame, bbox);

谢谢你。

4

0 回答 0