如何从opencv中的svmPredict()获得分类结果?

时间:2013-12-18 22:40:17

标签: c++ opencv

我希望在opencv中看到svmPredcit()完成分类的结果。我已经实现了两种查看结果的方法。首先,要看分类边界的距离。第二,看预测结果(是或否)。

    float predict = svm.predict(tryme, true);
    cout<<"\n The result of prediction is:  "<<predict;

    bool result = svm.predict(tryme, false);
    cout<<"\n The result of prediction in bool:  "<<result<<"\n";

问题:虽然预测值随着输入图像的变化而变化(有时候-ve有时+ ve)但是我仍然总是从第二个cout语句得到“1”(即值结果总是一个)。

1 个答案:

答案 0 :(得分:0)

假设您的代码为+1-1,则代码应为

    bool result = svm.predict(tryme, false) > 0.0f;

将+ 1.0f和-1.0f转换为bool会导致true