我在OpenCV中使用SVM和HOG来实现人员检测。 请使用我自己的数据集:3000个正样本和6000个负样本。 我的问题是,每次检测到人时,SVM是否需要学习? 如果是这样,学习时间和预测时间可能非常耗时。有没有什么方法可以实现实时人员检测? 预先感谢您。每次检测到人时,SVM是否需要进行学习?
谢谢你的回答。我已经获得了训练后的xml结果(3000正数和6000负数),所以我可以使用这个结果来编写另一个独立的程序,只需使用svm.load()和svm.predict()?那很棒。此外,我发现1000个检测窗口大小的图像(128x64)的预测时间也非常耗时(约10秒),因此如何使用1或2像素扫描来处理正常的监控摄像机捕获(320x240或更高)实时步进?我根据原始纸张实现了HOG,每个单元格8x8像素,每个区块2x2个单元格(50%重叠),因此一个检测窗口(128x64)的3780维度矢量。时间问题是由巨大的特征向量造成的吗?我应该减少每个窗口的尺寸吗?
它应该学习一次,让您的SVM“理解”到行人分类的方式(即发现您的功能的参数)。然后,每次做预测时,都会直接预测(即在内部它应该更多或更少(学习参数*特征))。 –