我问你一个非常简单的问题。我想使用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
我找到了解决方案here。
调用该函数的方法与最新的openCV版本不同。这是做什么的:
更换
optical_flow = cv2.DualTVL1OpticalFlow_create()
通过
optical_flow = cv2.optflow.DualTVL1OpticalFlow_create()