在使用svm训练分类器时,输入需要是Mat类,故需要将vector类转化成Mat类,代码如下:
void vector2Mat(vector< vector<double> > src,Mat & dst,int type)
{
Mat temp(src.size(),src.at(0).size(),type);
for(int i=0; i<temp.rows; ++i)
for(int j=0; j<temp.cols; ++j)
temp.at<double>(i, j) = src.at(i).at(j);
temp.copyTo(dst);
}
一维向量转Mat类:
vector<float> label;
Mat labelsMat(label);
labelsMat = labelsMat.reshape(1,label.size());