在Qgis中使用Orfeo工具箱,我标记了图像像素并训练了svm,并以yaml格式生成了模型。据我所知,Qgis(Orfeo)使用OpenCV进行机器学习。
模型在这里:
SVM model in yaml format generated by Qgis
之后,我在Opencv中编写了一个简短的片段来加载yaml模型并对新图像进行分类(测试)。但是,此代码段失败。
Opencv's svm snippet
OpenCV Error: Assertion failed (samples.cols == var_count && samples.type() == CV_32F) in predict, file /home/john/Desktop/OpenCV/opencv-3.0.0/modules/ml/src/svm.cpp, line 1919
terminate called after throwing an instance of 'cv::Exception'
what(): /home/john/Desktop/OpenCV/opencv-3.0.0/modules/ml/src/svm.cpp:1919: error: (-215) samples.cols == var_count && samples.type() == CV_32F in function predict
Aborted (core dumped)
有人能弄明白这里发生了什么吗?我很失落。顺便说一下,我正在使用OpenCV 3.0。
THKS。