这是多么奇怪的系统.我遇到了与此问题相同的问题: AttributeError:'module'对象没有属性'SVM_LINEAR' 但是我不能再向该问题添加任何问题或评论,所以我不得不问几乎相同的问题.无论如何,请帮助以下:
所以我只注意到CV-3.0.1有卡方和交叉核,而我以前的2.4.9没有,所以我升级了(gentoo btw).一切都在2.4.9中工作,我只是想要moar内核选择(并且交叉与我正在做的事情很好地说Yang et al 2009).
但是按照上面的说法对我来说并没有用.
除了我平时:
import cv2
Run Code Online (Sandbox Code Playgroud)
我试过添加:
import cv2.ml
Run Code Online (Sandbox Code Playgroud)
和/或
from cv2 import ml
Run Code Online (Sandbox Code Playgroud)
他们没有修复任何东西(我对python也不熟悉,所以不确定哪些是我的意思).
我的专栏:
svm = cv2.SVM()
Run Code Online (Sandbox Code Playgroud)
是导致问题的原因,我已经尝试将其更改为:
svm = cv2.ml.SVM()
Run Code Online (Sandbox Code Playgroud)
这并没有解决它,我得到的仍然是:
Traceback (most recent call last):
File "05traintestsift.py", line 12, in svm = cv2.SVM()
AttributeError: 'module' object has no attribute 'SVM'
Run Code Online (Sandbox Code Playgroud)
要么:
Traceback (most recent call last):
File "05traintestsift.py", line 12, in svm = cv2.ml.SVM()
AttributeError: 'module' object has no attribute 'SVM'
Run Code Online (Sandbox Code Playgroud)
当然有一些基本的方法可以让我的东西再次运作,我错过了吗?
nb:除了尝试新的内核类型之外的所有内容都是在半小时前在2.4.9中工作的,所以它纯粹是3.0.1-r2中的一些新语法发生了变化.
我还要注意他们在这里的文档中的例子:http://docs.opencv.org/3.1.0/dd/d3b/tutorial_py_svm_opencv.html也没有输入任何'.ml',所以即便如此没有更新(我从他们的例子btw的第48行复制了svm = cv2.SVM()语法). …