6

我找不到有关如何将 SVM 参数传递给 opencv cvSvm 类的正确参考资料。我得到了参数列表,但没有任何关于如何将参数转换为 CV 数据结构的教程。

请问我可以帮忙吗?

4

1 回答 1

10

构造一个CvSVMParams对象。

其成员为:

  • svm_type:要使用的 SVM 算法
  • kernel_type: SVM 内核形式
  • degree: 多项式核的度数
  • gamma: 多项式、RBF 或 sigmoid 内核的尺度
  • coef0: 多项式或 sigmoid 内核的偏移量
  • C: 用于选择支持向量的 C 比率
  • nu: nu-SVR 算法的 nu 值
  • p: eps-SVR 的 p 值
  • class_weights: C-SVM 的类权重
  • term_crit:在终止标准CvTermCriteria

更改适当的字段并将其传递给CvSVM构造函数。将使用您的参数训练 SVM。

CvSVMParams params ;
params.svm_type = CvSVM::C_SVC ;
params.kernel_type = CvSVM::RBF ;
params.gamma = 0.5 ;
CvSVM svm(&samples, &labels, 0, 0, params) ;

有关更多信息,请参阅 CvSVM 的文档:http: //opencv.willowgarage.com/documentation/cpp/support_vector_machines.html

于 2011-03-07T09:38:55.763 回答