0

コードに問題があります。コード リストは次のとおりです。

import os
os.getcwd()
from SimpleCV import EdgeHistogramFeatureExtractor, HueHistogramFeatureExtractor, MorphologyFeatureExtractor
from SimpleCV.MachineLearning import *
from SimpleCV.ImageClass import Image, ImageSet, ColorSpace
edgeExtractor = EdgeHistogramFeatureExtractor(20) 
hueExtractor = HueHistogramFeatureExtractor(10) 
morphoExtractor = MorphologyFeatureExtractor()
extractorsList = [edgeExtractor, hueExtractor, morphoExtractor]
svm = SVMClassifier(extractorsList)
tree = TreeClassifier(extractorsList, flavor='Boosted')
naiveBayes = NaiveBayesClassifier(extractorsList)
trainPaths = ['C:\\Users\\abi\\Documents\\program coba\\ImageTrain', 'C:\\Users\\abi\\Documents\\program coba\\ImageTest']
trainPaths = ['C:\\Users\\abi\\Documents\\program coba\\ImageTrain\\Positive1', 'C:\\Users\\abi\\Documents\\program coba\\ImageTrain\\Negative1']
classes = ['Negative', 'Positive']
svm.train(trainPaths, classes, savedata="mydata.txt", verbose=False)
testPaths = ['C:\\Users\\abi\\Documents\\program coba\\ImageTest\\Positive1', 'C:\\Users\\abi\\Documents\\program coba\\ImageTest\\Negative1']
print "SVM:", svm.test(testPaths, classes, verbose=False) # [good, bad, confusion]

edgeExtractor = EdgeHistogramFeatureExtractor(20)
svm = SVMClassifier(extractorsList)

listImages = ImageSet()
   for p in ['C:\\Users\\abi\\Documents\\program coba\\NewImages\\coba']: 
        listImages += ImageSet(p)

   for image in listImages:
        className = svm.classify(image)
        image.drawText(className,25,25,fontsize=60)       
listImages.show() 

その後、次のような問題が発生します

Traceback (most recent call last):
  File "C:\Users\abi\Documents\program coba\imnew", line 28, in <module>
    className = svm.classify(image)
  File "C:\Python27\lib\site-packages\SimpleCV\MachineLearning\SVMClassifier.py", line 153, in classify
       featureVector.extend([self.mClassNames[0]])
IndexError: list index out of range

IndexError のメッセージが表示されていますが、どのコードが間違っているのかわかりません。現在、Python 2.7.3 を使用しています。お願い助けて

4

1 に答える 1