如何使用tvl1 opencv函数计算光流

7
我正在寻找使用tvl1 opencv函数createOptFlow_DualTVL1计算光流的Python示例,但似乎没有足够的文档。请问有人可以帮忙吗?我已经尝试了这里提到的calcOpticalFlowFarnebackhttp://docs.opencv.org/master/d7/d8b/tutorial_py_lucas_kanade.html),但结果不准确,tvl1是否足够好?如果不是,还有其他方法吗?
[[编辑]]
我有一些来自选择性搜索的区域,我只想保留其中有运动的区域,因此对给定帧计算光流,然后在每个区域中获得平均值即可。这也在paper第3.1节中描述。
谢谢。

我正试图做类似于这里的事情。 - Ehab AlBadawy
我有一些来自选择性搜索的区域,我想只保留其中具有运动的区域,因此计算给定帧的光流,然后在每个区域中获取平均值即可。这也在本文[http://people.eecs.berkeley.edu/~gkioxari/ActionTubes/action_tubes.pdf]第3.1节中描述。 - Ehab AlBadawy
Farneback和tvl1都是密集方法,应该能胜任这项工作。请发布您相关的代码部分。 - A. Sarid
1个回答

9

3
在 OpenCV 4 中,可以使用 cv2.optflow.createOptFlow_DualTVL1 实现双向 TV-L1 光流估计。参考链接:https://docs.opencv.org/4.1.0/d2/d84/group__optflow.html。 - gerrit
2
@gerrit 是正确的,但是您需要安装 opencv-contrib-python 包才能获取 cv2.optflow 模块。 - rgov
1
值得一提的是,CUDA加速的光流计算是通过cudaoptflow模块完成的。https://docs.opencv.org/4.5.4/d6/d39/classcv_1_1cuda_1_1OpticalFlowDual__TVL1.html - jodag

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接