Я тренирую модель, используя SVM, и сохраняю ее, используя:
svm.save("my_svm.xml")
Когда я пытаюсь загрузить модель, используя
svm = cv2.ml.SVM_load('my_svm.xml')
Я получаю ошибку:
cv2.error: OpenCV(4.0.0) /Users/travis/build/skvark/opencv-python/opencv/modules/ml/src/svm.cpp:2203: error: (-212:Parsing error) Missing or invalid SVM type in function 'read_params
Я проверил файл xml, и поле определенно существует в
<opencv_storage>
<opencv_ml_svm>
<format>3</format>
<svmType>C_SVC</svmType>
....
Я проверил файл онлайн , и он выглядит так:
// check for old naming
String svm_type_str = (String)(fn["svm_type"].empty() ? fn["svmType"] : fn["svm_type"]);
int svmType =
svm_type_str == "C_SVC" ? C_SVC :
svm_type_str == "NU_SVC" ? NU_SVC :
svm_type_str == "ONE_CLASS" ? ONE_CLASS :
svm_type_str == "EPS_SVR" ? EPS_SVR :
svm_type_str == "NU_SVR" ? NU_SVR : -1;
if( svmType < 0 )
CV_Error( CV_StsParseError, "Missing or invalid SVM type" );
У кого-нибудь есть идеи, почему он может потерпеть неудачу?