5

嗨,我是 OpenCV 的新手,我正在尝试使用放置在固定位置的相机来实现人体跟踪。我做了一些研究,发现了方向梯度直方图方法,但根据我的理解,它的作用是检测而不是跟踪。因此,我想知道在 OpenCV 上实现人体检测和跟踪的最简单方法是什么?

P/S:我找到了这个视频,这正是我想要实现的。

4

2 回答 2

4

您也可以尝试使用 HAAR 级联进行人体检测。只需使用加载级联CascadeClassifier::CascadeClassifier(),然后用于CascadeClassifier::detectMultiScale()获取给定图像中检测到对象(身体)的区域。调整给定的参数detectMultiScale()以加快和提高检测精度。

你可以在这里找到一堆级联,包括一个用于身体检测的级联。

看看这些 SO 帖子:

于 2013-10-27T15:03:14.640 回答
1

您可以使用带有“人”模型的 HOG 检测器或潜在 svm 检测器来获取人的边界框,然后跟踪该人。

可以通过以下方式跟踪人的质心: 测量新的质心位置。测量它的速度。使用当前帧位置和速度预测下一帧质心的位置。然后检查质心的新测量值是否接近预测值。如果是,那么它与前一帧中的人是同一个人,如果不是,那么它是一个新人进入该帧。

也许您应该跟踪边界框而不是质心。您的帧速率足够高,也许您可​​以只绘制边界框而忘记跟踪。

于 2013-10-21T17:05:24.877 回答