OpenCV SVM - 对象不属于任何训练过的类

时间:2017-04-19 15:02:03

标签: c++ opencv svm

我正在使用OpenCV(3.1)SVM和3个类。有没有办法处理输入数据,这些数据不属于任何这些类?是否有可能从预测中获得概率?

我只是想将未知类中的数据标记为“不属于任何训练过的类”。

谢谢

1 个答案:

答案 0 :(得分:0)

查看SVM docs(特别是预测函数),你可以做的最好的事情就是从支持向量得到距离,看起来你甚至只能从二进制文件中得到它分类

不确定您对OpenCV的约束程度如何,但如果您可以使用scikit来解决您的问题,那么他们的SVM会有一个predict_proba函数,应该会有所帮助。还有一个predict_log_proba函数,如果这是您的偏好。另外,请注意,如果你走这条路线,你在调用fit函数时需要设置probability = true。

如果你与C / C ++有关,你可能会调查LibSVM,因为他们也有能力提供概率,尽管我并不熟悉他们的api。另请注意,OpenCV和scikit学习实现都基于LibSVM

希望其中一个适合你!