从10个先前帧中找到运动矢量

时间:2015-07-10 12:22:09

标签: opencv computer-vision

我希望通过将帧划分为8x8子块来找到前10帧的运动矢量,并将当前帧的每个块与前10帧的相邻块进行比较。

我可以使用单帧进行操作,但我觉得难以使用N帧。

如果有人知道我需要opencv / c ++中的这个模块的代码,我需要别人的帮助。

提前致谢

1 个答案:

答案 0 :(得分:1)

我相信你一直在询问光流。

目前有two quick and easy methods for optical flow in Python。它不是C ++,但你可以从那里开始,看看它是否符合你的要求。

  1. Lucas-Kanade,它使用从您选择的算法(SIFT,SURF,ORB,BRISK,Brief等)中找到的特征描述符。我链接的例子使用Shi-Tomasi。所有这些点都是逐帧跟踪的。
  2. Farneback的密集光流,它给出了图像中每个像素的运动。该算法为您提供了更多信息,但计算时间更长。
  3. 如果这些算法中的任何一个似乎都有效,你可以找到一些示例代码(可能只是通过谷歌搜索" opencv c ++光流示例")并从那里开始工作。