calcOpticalFlowSF的更快替代品

Dan*_*lho 2 performance opencv opticalflow

calcOpticalFlowSF有更快的替代方案吗?它只是太慢了,想用一系列来自视频的帧来运行这个东西.我怎样才能做到这一点?

Tob*_*nst 5

有几种基于光流的运动估计方法,但你必须考虑几件事:

  • 您是否仅限于CPU实施/ GPU的实施可能会大幅缩短运行时间
  • 你需要密集运动场还是只需要一组稀疏运动矢量/稀疏OF方法可扩展性更高,因此需要更少的运行时间
  • 精度/密集方法的高精度最重要的只是运动边界.在许多应用中,您可以通过稀疏运动矢量网格逼近密集运动场,因此可以使用稀疏方法作为金字塔形Lucas Kanade(OpenCV)

当前的库/方法是:

密集方法:

  • OpenCV 2.4.4在GPU BroxOpticalFlow上提供的速度也很快
  • FlowLib的GPU4Vision集团提供了高精确的GPU实现
  • GPU上的TV-L1的 GPU实现由.提供

稀疏方法:

  • OpenCV自2.4.2以来在GPU /早期版本上提供了金字塔形的Lucas Kanade,在CPU上也实现了非常快速的实现
  • RLOFLib提供GPU/CPU和Matlab一个更准确地执行
  • 增益自适应卢卡斯金出武雄/ KLT也可用于GPU

您还可以查看当前的光流基准,研究人员有时会提供链接.通用光流基准是MiddleburyKITTI