所以我有一個矩陣與我的樣本圖像(全部變成矢量),它是通過PCA/LDA運行的,並且是一個表示每個圖像屬於哪一類的向量。現在我想使用OpenCV SVM類來訓練我的SVM(我正在使用Python,OpenCV 2.3.1)。但是我有一個定義的參數有問題:Python OpenCV支持向量機實現
test = cv2.SVM()
test.train(trainData, responses, ????)
我被困在如何定義SVM(線性等)和其他的東西的類型。在C++中,你可以通過聲明來定義它:svm_type = CvSVM :: C_SVC ... Python沒有。 C++也有一個特殊的類來存儲這些參數 - > CvSVMParams。有人可以給我一個Python的例子嗎?像定義SVM類型,伽瑪等
2.3.1文檔說,它是這樣的:
Python: cv2.SVM.train(trainData, responses[, varIdx[, sampleIdx[, params]]]) → retval
什麼是varIdx和sampleIdx,以及如何定義的PARAMS?
我正在閱讀文檔,但與此同時,您可以使用替代解決方案:將您的矩陣轉換爲numpy並使用sk-learn進行機器學習任務。 – timgluz 2012-01-01 00:23:16
嗨!試試這些例子:https://code.ros.org/svn/opencv/trunk/opencv/samples/python2/letter_recog.py – timgluz 2012-01-01 00:59:07
timgluz THX這正是我在找的東西......你能否複製SVM部分在答案中的鏈接,我可以接受它(以便其他人可以立即找到答案,你得到信用)... SVM部分是從79行到91 ... – Veles 2012-01-01 10:41:18