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