【问题标题】:Multiscale search for HOG+SVM in Matlab在 Matlab 中多尺度搜索 HOG+SVM
【发布时间】:2015-02-02 08:01:59
【问题描述】:

首先这是我在这里的第一个问题,所以我希望我能解释清楚。

我的目标是检测图像中不同类别的交通标志。为此,我按照以下步骤训练了二进制 SVM:

  • 首先,我得到了一个裁剪交通标志的数据库,如链接中的那个。我考虑了不同的类别(禁止、危险等)和负面形象。所有这些都缩放到 40x40 像素。

http://i.imgur.com/Hm9YyZT.jpg

  • 我使用 HOG 作为特征为每个类(1-vs-all)训练了线性 SVM 模型。每个图像都用一个 1728 维的特征来描述。 (我为所有三个图像平面附加了三个特征向量)。我进行了交叉验证以设置参数 C,并在以前看不见的 40x40 图像上进行了测试,我得到了非常准确的结果(所有类别的 F1 得分都超过 0.9)。我使用 libsvm 进行训练和测试。

现在我想检测完整道路图像中的标志,以不同的图像比例滑动窗口。我面临的问题是我找不到任何可以为我做的函数(如 OpenCV 中的 DetectMultiScale),而且我的解决方案非常缓慢且基本(我只是在做一个三重 for 循环,并且对于每个缩放我裁剪连续和重叠的 40x40 图像,获取 HOG 特征并为每个图像应用 svmpredict。

有人可以给我一个线索来找到更快的方法吗?我也考虑过获取整个输入图像的 HOG 特征向量,然后将该向量重新排序为一个矩阵,其中每一行将具有对应于每个 40x40 窗口的特征,但我找不到一种直接的方法。

谢谢,

【问题讨论】:

    标签: matlab svm multiscaleimage


    【解决方案1】:

    我建议使用 SURF 特征检测,但我不知道这是否也会太慢您的需求。

    请参阅:http://morf.lv/modules.php?name=tutorials&lasit=2,了解有关如何实施的更多信息,并认为它是适合您的可行解决方案。

    【讨论】:

      猜你喜欢
      • 2023-03-27
      • 2014-01-29
      • 1970-01-01
      • 1970-01-01
      • 2013-03-10
      • 1970-01-01
      • 2017-11-30
      • 2015-07-17
      • 2021-09-06
      相关资源
      最近更新 更多