【问题标题】:SVM training C++ OpenCVSVM 训练 C++ OpenCV
【发布时间】:2015-04-18 10:38:57
【问题描述】:

我的印象是,用于训练SVMtraining data 包含图像特征,但在再次reading this post 之后,示例中的SVMtraining_mat 只是@ 987654326@ 扁平化为一维。

所以我的问题是,在训练 SVM 时,你是给它完整的图像,逐行,还是你 detectextract 的特征,然后将 Mat 的特征压平变成一维?

【问题讨论】:

    标签: c++ opencv machine-learning svm training-data


    【解决方案1】:

    您可以提取特征,也可以使用像素强度值作为特征。在这个例子中,他们做了后者。在这种情况下,您最终会得到大量功能,其中许多功能可能无用。这使得 SVM 训练的收敛更加困难,但仍然是可能的。根据我的个人经验,如果您提取较少数量的最能描述您的数据的“好”特征,则 SVM 效果会更好。然而,近年来,已经表明,像深度神经网络这样的最先进的估计器(当使用而不是 SVM 时)可以在仅使用像素强度值作为特征的情况下表现得非常好。这消除了在公共数据集(如ImageNet)上产生最先进结果的方法中对特征提取的需求

    【讨论】:

      猜你喜欢
      • 2015-05-04
      • 2015-07-25
      • 2015-01-22
      • 2017-08-25
      • 2015-09-26
      • 2014-12-15
      • 2015-08-14
      • 1970-01-01
      相关资源
      最近更新 更多