使用 cv2 和 svm 的 setTermCriteria
Using setTermCriteria of cv2 and svm
我正在尝试将 setTermCriteria 与 SVM 结合使用。但是当我使用它时,出现以下错误:
AttributeError: 'cv2.ml_SVM' object has no attribute 'setTermCritera_MAX_ITER'
这就是我的使用方式
svm.setTermCritera_MAX_ITER=10000
svm.setTermCriteria_EPS = 1e-3
我没有收到错误消息,但发现它在我按以下方式使用时没有用处:
cv2.setTermCritera_MAX_ITER=10000
cv2.setTermCriteria_EPS = 1e-3
当我尝试以下方法时
svm.setTermCriteria(10000)
SystemError: new style getargs format but argument is not a tuple
在 Python 和 OpenCV
中使用它的正确方法是什么
错误信息很清楚,需要一个元组。让我们看看默认值:
svm = cv2.ml.SVM_create()
svm.getTermCriteria()
returns(3, 1000, 1.1920928955078125e-07)
。所以如果你只想设置最大迭代次数应该调用:
svm.setTermCriteria((cv2.TermCriteria_MAX_ITER, 10000, 0))
如果想保持相同的 epsilon 标准并设置最大 iter:
svm.setTermCriteria((cv2.TermCriteria_MAX_ITER + cv2.TermCriteria_EPS, 10000, 1.1920928955078125e-07))
我正在尝试将 setTermCriteria 与 SVM 结合使用。但是当我使用它时,出现以下错误:
AttributeError: 'cv2.ml_SVM' object has no attribute 'setTermCritera_MAX_ITER'
这就是我的使用方式
svm.setTermCritera_MAX_ITER=10000
svm.setTermCriteria_EPS = 1e-3
我没有收到错误消息,但发现它在我按以下方式使用时没有用处:
cv2.setTermCritera_MAX_ITER=10000
cv2.setTermCriteria_EPS = 1e-3
当我尝试以下方法时
svm.setTermCriteria(10000)
SystemError: new style getargs format but argument is not a tuple
在 Python 和 OpenCV
中使用它的正确方法是什么错误信息很清楚,需要一个元组。让我们看看默认值:
svm = cv2.ml.SVM_create()
svm.getTermCriteria()
returns(3, 1000, 1.1920928955078125e-07)
。所以如果你只想设置最大迭代次数应该调用:
svm.setTermCriteria((cv2.TermCriteria_MAX_ITER, 10000, 0))
如果想保持相同的 epsilon 标准并设置最大 iter:
svm.setTermCriteria((cv2.TermCriteria_MAX_ITER + cv2.TermCriteria_EPS, 10000, 1.1920928955078125e-07))