我目前正在完成我的最后一年项目。目标是使用轨迹分析来检测停车场环境中的“正常”事件(例如在停车场中行走的人)。我已完成背景扣除和斑点检测。我想通过使用边界框的质心的坐标来绘制移动物体的轨迹(例如:人类,汽车等)。这样做是否有预定义的功能?任何帮助,将不胜感激。提前致谢。
答案 0 :(得分:0)
假设你有X和Y像素坐标,你总是可以使用opencv的基本绘图库来绘制一条跟随对象路径的线。下面是一个例子。
int iLastX = -1;
int iLastY = -1;
Mat imgLines = Mat::zeros( imgTmp.size(), CV_8UC3 );;
while(true){
Mat imgOriginal;
if (iLastX >= 0 && iLastY >= 0 && posX >= 0 && posY >= 0)
{
//Draw a red line from the previous point to the current point
line(imgLines, Point(posX, posY), Point(iLastX, iLastY), Scalar(0,0,255), 2);
}
iLastX = posX;
iLastY = posY;
imgOriginal = imgOriginal + imgLines;
imshow("Original", imgOriginal); //show the original image
}