用于行李检测的OpenCV和SVM培训

时间:2017-02-09 15:31:21

标签: opencv classification svm libsvm training-data

在我的项目中,我试图将行李与其他任何东西区分开来,通常是人。

目前,我使用OpenCV和SVM训练方法,有2个类,一个有行李,另一个有人。在注入帧之前,我将它们转换为灰度,但我不应用其他过滤器。预测的结果不是很准确。

我想知道在训练之前是否在框架上应用额外的过滤器可能会产生更好的结果。例如轮廓检测。如果轮廓接近'矩形'那么它就是一个行李箱,否则就是'别的'。我也在考虑切换到ONE_CLASS方法。

你怎么看?或者你有更好的想法吗?

此致

于连。

2 个答案:

答案 0 :(得分:0)

在考虑了这个问题后,我认为异常检测是最好的方法。自从你提到ONE_CLASS method后,我就明白了这个想法。

假设行李在图像中呈矩形,你建议“任何接近矩形的东西都是行李箱”,这也是一种可行的方法。因此,您只有一个班级“行李”。

如该术语所暗示的,“异常检测”用于检测不符合特定模式的对象。换句话说,它用于检测 异常值 (除数据集中存在的对象之外的对象)。

由于你只关注行李箱,我认为这种做法是最好的。

如果遇到任何问题,您也可以尝试其他方法。

答案 1 :(得分:0)

因此矩形近似方法似乎符合我的要求。我还没有用很多图像进行测试,所以我并不是百分之百确定我会去做。与往常一样,有例外:当行李箱的颜色接近背景颜色时,结果不准确。有没有办法放大两种近色之间的差异?

此致

于连。