opencv - 具有唯一标识符的行人检测

标签 opencv detection video-tracking

您好,我目前正在使用 HOG 和 Haar Cascade 的 OpenCV 实现来执行行人检测并将他们限制在视频源上。

但是,我想为每个进入视频源的行人分配一个唯一的 ID(编号),该 ID 保持不变,直到行人离开视频源。由于在不考虑前一帧的情况下一个接一个地处理帧,我不确定如何以最简单但有效的方式实现这一点。

我真的需要使用像 camshift 或 Kalman 这样的跟踪算法吗?我对这些算法一无所知,但确实需要一些帮助。或者有没有更简单的方法来实现我想要的?

附言:这个video这就是我想要实现的。事实上,我之前在这里发布了一个类似的问题,但更多的是针对检测技术,这是针对分配唯一标识符的下一步。

最佳答案

一个简单的解决方案:

跟踪矢量中的对象。
如果您计算一个新帧,对于每个对象:搜索存储在您的 Vector 中最近的对象。如果存储的对象和您当前对象之间的距离低于某个阈值,则它是同一个对象。

如果未找到匹配项,则对象是新的。最后,删除 Vector 中与当前帧的对象无关的所有对象。

关于opencv - 具有唯一标识符的行人检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20145076/

相关文章:

python - numpy 中的直方图反投影如何工作?

python - 如何从任何给定大小的图像中仅获取可能的非重叠 block 并将其显示在Python中

bash - 以编程方式检测已安装的 Common Lisp 实现

opencv - 无法检测到图像上的等号

python - 如何使用 Mediapipe Pose 更改输出视频上的跟踪点和连接线的颜色?

opencv - 人员检测和跟踪

java - 错误 : make. exe:***没有规则可创建目标

c++ - 姿态估计 : Where is my error in reasoning?

java - 检查文档是否受密码保护

c++ - 使用opencv在受控环境中进行视频跟踪的跟踪标记和跟踪算法选择