OpenCV - 培训新的LatentSVMDetector模型

时间:2013-07-09 11:30:22

标签: opencv

我还没有找到任何使用openCV训练新的潜伏svm探测器模型的方法。我目前正在使用xml文件中给出的现有模型,但我想自己训练。

有没有这样做的方法?

谢谢,

吉尔。

2 个答案:

答案 0 :(得分:8)

截至目前,只有DPM检测在OpenCV中实现,而不是训练。 如果你想训练自己的模型,最可靠的方法是使用Felzenszwalb和Girshick的matlab代码(大多数重要的东西用C实现)http://www.cs.berkeley.edu/~rbg/latent/({{3它是可靠的,并且工作得相当快

如果你想在仅限C语言中进行,那么这里有一个实现(http://www.rossgirshick.info/latent/)我没有尝试过。

答案 1 :(得分:0)

我认为这里的作者代码的八度版本中有一个函数 (Octave Version of DPM)。它在步骤#5,

mat2opencvxml('./INRIA/inriaperson_final.mat', 'inriaperson_cascade_cv.xml');

我会尝试并让你知道结果。

修改

  • 我尝试将.mat文件从前面提到的八度版本转换为.xml文件,并将结果与​​内置的opencv .xml模型和构造进行比较2 xmls的不同之处(标签,#component,..),似乎这个版本的octave dpm会为以后的opencv版本生成xml文件(我使用的是2.4)。

  • VOC-release3.1与opencv2.4.14匹配。我尝试使用opencv中提供的mat2xml函数从此版本转换已经训练过的模型,并且结果xml文件已成功加载并使用opencv。以下是一些有用的链接:

mat2xml code

VOC-release-3.1

How To Train DPM on a New Object