【发布时间】:2013-11-24 09:01:08
【问题描述】:
我正在开发一个项目,用于跟踪具有多种纹理和多种颜色变化的对象。 与使用颜色遮罩的普通跟踪不同,我的目标对象有很大不同,因为它包含几种主要颜色分布。
我想检测对象并开始跟踪。对于跟踪,有像卡尔曼滤波器这样的方法,但是,为了跟踪纹理对象,我需要跟踪我认为的局部关键点。如果我在每一帧中计算 SURF 描述符,那么我认为这将失去对跟踪的使用(也许我在这里错了)。
我觉得我应该只在第一帧中使用 SURF 来初始化目标对象,然后再跟踪它。我的问题是如何跟踪纹理对象的特征。我做了一些研究,但我似乎不知道如何解决这个问题。
如果我能得到一些建议或论文链接来阅读和实施它,那就太好了。
【问题讨论】:
-
您必须检测每一帧中的对象才能跟踪它。为什么不使用 SURF 呢?还是 haar 检测器?
-
我想实时计算,但在 Windows 中计算单个帧的 SURF 大约需要 10 秒。
-
您可以尝试二进制描述符,它们在提取和比较方面都比 SURF 更有效。也许使用更少的关键点并用二进制描述符描述它们将实时工作。此外,在跟踪时,您将对对象的位置进行估计,因此您可能不必计算整个图像中的描述符,而只需在估计的对象位置处计算。如果您需要有关二进制描述符的更多信息,请告诉我。
-
非常感谢。是的,如果你能给我更多关于二进制描述符实现的想法,那就太好了。我发现很难理解这些特征是如何形成的。
标签: opencv image-processing filter feature-detection surf