如何修复TVL1光流算法的opencv导入

问题描述 投票:0回答:1

我问你一个非常简单的问题。我想使用TVL1函数来计算openCV(和python)的光流。但这是我得到的:

AttributeError: 'module' object has no attribute 'DualTVL1OpticalFlow_create'

Traceback (most recent call last):

File "opticalFlowModel.py", line 50, in computeOpticalFlow
optical_flow = cv2.DualTVL1OpticalFlow_create()

AttributeError: 'module' object has no attribute 'DualTVL1OpticalFlow_create'

问题是在这个主题How to compute optical flow using tvl1 opencv function中,他们似乎使用完全相同的代码。我也尝试这个代码:Speed Up Optical Flow algorithm (If applicable) Python OpenCV并得到相同的结果。

这是我的全部导入:

import cv2
import numpy as np
from PyQt4.QtGui import *
from PyQt4.QtCore import *
from PyQt4 import QtCore, QtGui

我正在使用OpenCV 4.0.1

python opencv opticalflow
1个回答
1
投票

我找到了解决方案here

调用该函数的方法与最新的openCV版本不同。这是做什么的:

更换

optical_flow = cv2.DualTVL1OpticalFlow_create()

通过

optical_flow = cv2.optflow.DualTVL1OpticalFlow_create()
© www.soinside.com 2019 - 2024. All rights reserved.