【问题标题】:How am I supposed to use featureExtractors with SimpleCV's SVMClassifier?我应该如何将特征提取器与 SimpleCV SVM 分类器一起使用?
【发布时间】:2013-04-29 13:23:33
【问题描述】:

我一直在尝试使用 SimpleCV 的 SVMClassifier 进行简单的二进制分类。这是我尝试过的,然后是错误:

svm = SVMClassifier([HueHistogramFeatureExtractor])
svm.train([train_airplanes, train_leaves], ['Airplanes', 'Leaves'])

错误:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-31-50d09bd20b62> in <module>()
      1 svm = SVMClassifier([HueHistogramFeatureExtractor])
----> 2 svm.train([train_airplanes, train_leaves], ['Airplanes', 'Leaves'])

/usr/local/lib/python2.7/dist-packages/SimpleCV/MachineLearning/SVMClassifier.pyc in train(self, paths, classNames, disp, subset, savedata, verbose)
    229         colNames = []
    230         for extractor in self.mFeatureExtractors:
--> 231             colNames.extend(extractor.getFieldNames())
    232 
    233         if(count <= 0):

TypeError: unbound method getFieldNames() must be called with HueHistogramFeatureExtractor instance as first argument (got nothing instead)

文档很少,所以我不确定我应该做些什么不同。

【问题讨论】:

    标签: python machine-learning computer-vision simplecv


    【解决方案1】:

    我知道这个答案在你的情况下可能为时已晚,但也许它会帮助其他人:

    您必须为分类器提供 FeatureExtractors 的实例,而不是类,所以您应该这样做:

    svm = SVMClassifier([HueHistogramFeatureExtractor()])
    

    【讨论】:

    • 信不信由你,你的答案仍然是相关的。非常感谢您的帮助!
    猜你喜欢
    • 2013-04-23
    • 2017-09-19
    • 2018-10-25
    • 1970-01-01
    • 2019-06-09
    • 2020-10-19
    • 1970-01-01
    • 2018-11-29
    • 2019-11-14
    相关资源
    最近更新 更多