2011-06-13 77 views
6

如何使用Emgu CV或OpenCV进行运动跟踪? 做什么是不同的方式?使用Emgu CV(或OpenCV)进行运动跟踪

我想跟踪固定背景下的对象。

最好的问候

+0

你跟踪什么?反对固定背景的对象?一种特殊的颜色?一个特定的对象?请更具体一些。 – damian 2011-06-13 08:08:48

+0

感谢您的评论。我已经更新了这个问题。 – 2011-06-13 08:12:45

+0

请参阅http://stackoverflow.com/questions/3803061/how-to-implement-optical-flow-tracker – 2012-01-11 18:53:16

回答

7

由于我不知道Emgu CV,我会推荐OpenCV。 我建议你使用Lucas Kanade跟踪(光流)。从区域

  1. 从源中读取的图像(摄像头/视频文件等)
  2. 预处理它(可选的,但可以证明是有用的)
  3. 提取物(: 您跟踪通过执行以下操作对象例如从一个人的头上)指向跟踪。您可以使用cvGoodFeaturesToTrack方法自动执行此操作。
  4. 然后你可以用cvCalcOpticalFlowPyrLK跟踪这些点,它会给你跟踪点的新位置。

查看更好的教程here

如果你想了解这些功能背后的概念,我强烈建议阅读Learning OpenCV - 不幸的是,链接的书只是一个预览,缺页。

无论如何,我相信你可以想一个地方,你可以得到这本书;)。

+0

感谢您的回答。我已经完成了你对Emgu所说的话。现在如何将点(像素)分组为一个对象(有多个对象)?我怎样才能找出方向? (行;这是一个新的问题也许:) – 2011-06-14 19:18:50

+0

你可以采取区域的边界矩形,例如:http://i54.tinypic.com/15d5ncj.png – Matyas 2011-06-16 12:01:53

+0

请你指导我如何采取边界矩形? – 2011-06-19 05:57:13