2016-07-30 3 views
1

내가 OpenCV의의 SVM 훈련하는 다음 코드를 사용OpenCV의 SVM "지원되지 않는 응답 유형"오류

std::vector<std::vector<float>> data; 
// Do stuff and fill data vector 

cv::Mat trainData(data.size(), data.at(0).size(), CV_32FC1); 

for (int i = 0; i < data.size(); ++i) 
    for (int j = 0; j < data.at(0).size(); ++j) 
     trainData.at<float>(i, j) = data.at(i).at(j); 

trainLabels 것은 :

std::vector<unsigned> labels; 
// Do stuff and fill labels 

cv::Mat(labels); 

하지만이 오류가 있습니다 :

C:\builds\2_4_PackSlave-win32-vc12-shared\opencv\modules\ml\src\inner_functions.cpp:675:error: (-210) Unsupported response type in function cvPreprocessCategoricalResponses

이전에 보지 못했지만 검색했을 때 찾을 수 없었습니다.

+0

당신은 그것이 무엇인지, 왜 있는지, 왜 있는지, 또는 어떻게 고쳐야하는지 묻고 있습니까? –

+0

@ VeniVidiVici 나는 그들 모두가 생각하지만 도움이된다. – DimChtz

+0

함수'cvPreprocessCategoricalResponses'는 어디에 있습니까? –

답변

0

좋아요, 문제는 실제로 매우 간단했습니다. cv::SVMunsigned int 레이블 유형을 지원하지 않으며 int으로 변경되었으며 완벽하게 작동합니다.