我想训练数据并使用HOG算法来检测行人。
现在我可以在defaultHog.setSVMDetector(HOGDescriptor::getDefaultPeopleDetector());
中使用opencv
进行检测,但结果对我的测试视频效果不佳。所以我想训练使用我的数据库。
我准备了1000多个阳性样本和1000多个阴性样本。它们被裁剪为50 * 100,我已经完成了列表文件。
我在互联网上阅读了一些教程,它们都非常复杂,有时甚至是深奥的。他们中的大多数都是分析HOG的源代码和算法。但只有更少的例子和简单的任意大小。
有些说明表明libsvm\windows\svm-train.exe
可以用于训练,任何人都可以根据1000 + 50 * 100个阳性样本给出一个例子吗?
例如,与haartraing
类似,我们可以从opencv
开始执行此操作,例如haartraining.exe –a –b
使用一些参数,并获得*.xml
作为结果用于人员检测?
或者还有其他培训和检测方法吗?
我更喜欢知道如何使用它和详细程序。作为细节算法,对我来说并不重要。我只是想实现它。
如果有人知道,请给我一些提示。
答案 0 :(得分:7)
我提供了一些示例代码和说明,以便使用openCV开始训练您自己的HOG描述符: 请参阅https://github.com/DaHoC/trainHOG/wiki/trainHOG-Tutorial。
该算法确实过于复杂而无法提供,但基本思路是:
祝你好运