相关疑难解决方法(0)

在OpenCV中训练自定义SVM以与HOGDescriptor一起使用

我正在尝试训练自己的探测器与OpenCV :: HOGDescriptor一起使用,但我无法使现有的HOGDescriptor与我新训练的SVM一起工作.

我已经为正面和负面训练图像计算了HOG特征,标记了它们并使用CvSVM训练了SVM.我使用的参数是:

    CvSVMParams params;
    params.svm_type =CvSVM::EPS_SVR;
    params.kernel_type = CvSVM::LINEAR;
    params.C = 0.01;
    params.p = 0.5;
Run Code Online (Sandbox Code Playgroud)

然后我计算支持向量的原始形式,这样我只得到一个向量而不是多个向量,并使用HOGDescriptor.setSVMDetector(向量)设置计算的支持向量;

这是原始形式

当我使用CvSVM.predict()时,我能够使用SVM正确地对对象进行分类,但是HOGDescriptor.detect()或detectMultiScale()总是返回许多正匹配,并且不能给出准确的预测.

CvSVM.predict()使用原始支持向量进行分类,因此我计算原始形式的方式可能有问题.

是否有人训练过他们自己的探测器谁能指出我正确的方向?

c++ opencv svm

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

opencv ×1

svm ×1