Opencv 3 SVM training

后端 未结 3 1890
一整个雨季
一整个雨季 2020-12-13 16:34

As you may know, many things changed in OpenCV 3 (in comparision to the openCV2 or the old first version).

In the old days, to train SVM one would use:



        
3条回答
  •  醉酒成梦
    2020-12-13 16:39

    with opencv3.0, it's definitely different , but not difficult:

    Ptr svm = ml::SVM::create();
    // edit: the params struct got removed,
    // we use setter/getter now:
    svm->setType(ml::SVM::C_SVC);
    svm->setKernel(ml::SVM::POLY);
    svm->setGamma(3); 
    
    Mat trainData; // one row per feature
    Mat labels;    
    svm->train( trainData , ml::ROW_SAMPLE , labels );
    // ...
    Mat query; // input, 1channel, 1 row (apply reshape(1,1) if nessecary)
    Mat res;   // output
    svm->predict(query, res);
    

提交回复
热议问题