使用opencv CvSVM的一些问题
它使用什么样的svm?它使用svmlight吗? OpenCV2.2有svmlight,但我找不到太多的引用。
如果我正在使用CvSVM,我是否需要手动创建80%的训练数据和20%的测试数据,并重复5次重新验证以获得更好的输出?
< / LI>我正在使用HOG做一个探测器,我正密切关注包中的opencv样本行人探测器。我需要学习一个分类器来检测行人以外的其他物体。任何建议将不胜感激。
谢谢!
答案 0 :(得分:4)
我很确定OpenCV 2.1和2.2使用libsvm。看看openCV's documentation。 libSVM有很好的文档记录
是的,您需要创建培训和测试数据。但是,CvSVM会自动对您的训练数据进行交叉验证,无需自行拆分训练集。在函数train_auto
中,查看默认参数int k_fold = 10,
对于任何具有刚性结构的物体,HOG都是一个相当不错的探测器。只需下载任何数据库,然后运行你的HOG。您可以找到许多数据库here。或者,为简单起见,请转到Caltech 101,这是一个很好的101课程。如果还不够,那么他们就已经制造了Caltech 256 =)
编辑:如果你说你想做一些与HOG不同的事情,我建议你使用本地补丁,例如SIFT或SURF,它们都在OpenCV中(Link to OpenCV's features2d
< / LI> 醇>