Нужна помощь по CvSVM - PullRequest
6 голосов
/ 07 марта 2011

Я не смог найти правильные ссылки о том, как передать параметры SVM в класс opencv cvSvm. У меня есть список параметров, но нет руководства по преобразованию параметров в структуры данных CV.

Можно мне помочь, пожалуйста?

1 Ответ

10 голосов
/ 07 марта 2011

Создание объекта CvSVMParams.

Его члены:

  • svm_type: алгоритм SVM для использования
  • kernel_type: форма ядра SVM
  • degree: степень для ядра полинома
  • gamma: шкала для ядра полинома, RBF или сигмоида
  • coef0: смещение для ядра полинома или сигмоида
  • C: коэффициент C для выбора векторов поддержки
  • nu: значение nu для алгоритма nu-SVR
  • p: значение p для eps-SVR
  • 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

...