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

How to compute optical flow using tvl1 opencv function

我正在尝试寻找 python 使用 tvl1 opencv 函数计算光流的示例 createOptFlow_DualTVL1,但似乎没有足够的文档。

有人可以让我这样做吗?我已经使用了这里提到的 calcOpticalFlowFarneback http://docs.opencv.org/master/d7/d8b/tutorial_py_lucas_kanade.html 但它没有给我准确的结果,tvl1 是否足够好,如果没有,我应该寻找另一种方法吗?

[[编辑]]

我有一些区域来自选择性搜索,我只想保留其中有运动的区域,因此可以计算给定帧的 OF,然后获取每个区域的平均值。 paper 第 3.1 节

中也对此进行了描述

谢谢。

更改此行(http://docs.opencv.org/master/d7/d8b/tutorial_py_lucas_kanade.html 中的密集光学示例):

flow = cv2.calcOpticalFlowFarneback(prvs, next, None, 0.5, 3, 15, 3, 5, 1.2, 0)

通过这些:

optical_flow = cv2.DualTVL1OpticalFlow_create()
flow = optical_flow.calc(prvs, next, None)

参数说明可以在这里找到: http://docs.opencv.org/3.3.0/dc/d47/classcv_1_1DualTVL1OpticalFlow.html