2

我正在尝试使用 OpenCV 进行对象检测工作。但是有一些事情让我感到困惑。像 camshift 和卡尔曼滤波器这样的跟踪和预测算法可以完成跟踪任务,而 SURF 匹配方法也可以做到这一点。

我不太明白这两种方法之间的区别。我已经根据 OpenCV 教程的 feature2d(使用 SURF)和 motion_analysis_and_object_tracking(使用 camshift)进行了一些编码。似乎它们只是一个目的的两种手段。我是对的还是我错过了一些概念?

将 camshift 跟踪与 SURF 特征匹配结合起来是不是一种好方法?...也许可以应用更多的东西,比如轮廓匹配?

4

1 回答 1

5

简短的回答是:

  1. 使用关键点 (SURF) 或任何其他方法检测有趣的对象。
  2. 获取对象的边界矩形并将其作为对象跟踪器的输入(例如 CAMShift)。
  3. 除非对象不会丢失,否则请使用对象跟踪器。

对象跟踪是使用先前帧中的信息找到对象位置的过程。跟踪和检测之间的区别在于,虽然两个过程都定位对象的位置,但 检测不使用来自先前帧的任何信息来定位对象。

查看Alper Yilmaz、Omar Javed 和 Mubarak Shah 的“对象跟踪:调查”。本文包含检测和跟踪技术的全面概述。

于 2013-04-01T20:22:11.700 回答