c++稀疏表示框架搭建的过程中遇到的错误

来源:互联网 发布:获取url的ip和端口 编辑:程序博客网 时间:2024/06/03 16:52

因为项目需要,所以得用c++开发一套稀疏编码的分类算法,期间遇到很多小问题记录一下。

1.训练完的字典,对其进行稀疏表示后,需用分类器进行分类,如果用残差最小的方法错误率很高,因为,字典进过训练后表达能力变强,所以这一类的一小部分可以表达另一类的部分,所以需要用分类器分类

2.opencv SVM中遇到错误

OpenCV Error: Bad argument (train data must be floating-point matrix) in cvCheckTrainData, file ..\..\..\src\opencv\modules\ml\src\inner_functions.cpp, line 857
Exception in thread "main" CvException

遇到这种情况可以检查下

// check parameter types and sizes
if( !CV_IS_MAT(train_data) || CV_MAT_TYPE(train_data->type) != CV_32FC1 )
    CV_ERROR( CV_StsBadArg, "train data must be floating-point matrix" );

我把数据类型改成cv_32FC1后就没有错误了

0 0
原创粉丝点击