2011-03-07 89 views
6

我无法找到关于如何将SVM参数传递给opencv cvSvm类的正确参考。我得到了参数列表,但没有关于如何将参数转换为CV数据结构的教程。在CvSVM上需要帮助

我可以帮忙吗?

回答

10

构造一个CvSVMParams对象。

其成员包括:

  • svm_type:SVM算法使用
  • kernel_type:SVM核形式
  • degree:度的多项式内核
  • gamma:规模为多项式,RBF或乙状结肠内核
  • coef0:多项式或S形内核的偏移量
  • C:用于选择支持向量
  • nu C比:对于NU-SVR算法NU值
  • p:对于p值EPS-SVR
  • class_weights:类的权重为C-SVM
  • term_crit:端接标准CvTermCriteria

更改相应的字段并将其传递给CvSVM构造函数。 SVM将用您的参数进行训练。 CvSVM的更多信息

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

查看文档: http://opencv.willowgarage.com/documentation/cpp/support_vector_machines.html