Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/133.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ opencv C++;-形状处理和跟踪_C++_Opencv_Shapes_Motion - Fatal编程技术网

C++ opencv C++;-形状处理和跟踪

C++ opencv C++;-形状处理和跟踪,c++,opencv,shapes,motion,C++,Opencv,Shapes,Motion,我需要在opencv中跟踪移动的形状 到目前为止,我能够围绕移动的形状绘制计数: cv::Mat lastFrame, maskFrame; std::vector <std::vector <cv::Point>> contours; // background substraction and frame processing ... findContours(maskFrame, contours, CV_RETR_EXTERNAL, CV_CHAIN_APPR

我需要在opencv中跟踪移动的形状

到目前为止,我能够围绕移动的形状绘制计数:

cv::Mat lastFrame, maskFrame;
std::vector <std::vector <cv::Point>> contours;
// background substraction and frame processing  ... 
findContours(maskFrame, contours, CV_RETR_EXTERNAL, CV_CHAIN_APPROX_NONE);
drawContours(lastFrame, contours, -1, cv::Scalar(0), 2);
cv::Mat lastFrame,maskFrame;
矢量轮廓;
//背景减法和帧处理。。。
findContours(maskFrame、轮廓、CV_RETR_外部、CV_CHAIN_近似值_NONE);
绘制等高线(lastFrame,等高线,-1,cv::Scalar(0),2);
但我不知道如何追踪他们

如果我在框架(n)中有一个形状,我想知道该形状是否也存在于框架(n-1)中,可能知道两个框架中每个形状的区域和位置

你对怎么做有什么建议吗?
也许用一些我显然不知道的课程

最简单的方法是计算每个轮廓的中心(每个轮廓由一组点表示)并存储它。在下一帧中,你做同样的操作,检查从上一帧和当前帧检测到的具有相似形状和大小的轮廓之间的距离。这很好。我看到,通过矩类,我可以确定形状的中心。伟大的