我一直致力于基于HOG特征的行人检测分类器的训练。目前,我所做的工作如下:
( a)提取所有文件的HOG特征,即正和负特征,并使用标签保存这些特征,即+1表示正,-1表示文件中为阴性。
B)下载svmlight,提取二进制文件,即svm_learn、svm_classify。
( c)将“培训文件”(features )传递给svm_learn二进制文件,该二进制文件为我提供了一个模型文件。
( d)将“测试文件”传递给svm_classify二进制文件,并在预测文件中得到结果。
现在我的问题是“下一步做什么,怎么做?”我想我知道现在我需要使用openCV中的“模型文件”而不是“预测文件”来检测视频中的行人,但是在某个地方我读到openCV只使用了一个支持向量,但是我得到了295 SV,所以我如何将它转换成一种适当的格式并使用它,以及任何进一步的强制步骤(如果有)。
我真的很感激你的好意!
发布于 2014-08-02 02:33:54
OpenCV (想必您正在谈论的CvSVM) )只使用一个支持向量是不正确的。正如QED所指出的,OpenCV所做的是将线性支持向量机优化到一个支持向量机上。我认为这里的思想是支持向量定义分类裕度,但是要进行实际的分类,只需要分离超平面,并且可以用一个向量来定义。
由于您有一个svmlight模型文件,而且CvSVM无法读取该文件,因此您有以下选项:
有关如何转换支持向量以便与HOG检测器一起使用支持向量的想法,请参阅训练自定义支持向量机与HOGDescriptor在OpenCV中使用
https://stackoverflow.com/questions/25087898
复制相似问题