OpenCV使用eigen函数输出特征向量及特征值
一、概述
案例:使用eigen函数输出一组数据的特征向量及特征值
API介绍:
eigen(InputArray src, OutputArray eigenvalues, OutputArray eigenvectors = noArray());
src:输入数据
eigenValues:输出的特征值矩阵
eigenvectors:输出的特征向量矩阵
二、代码演示
Mat src = (Mat_<double>(5,5)<< 1,2,3,4,5, 6,7,8,9,10, 11,12,13,14,15, 16,17,18,19,20, 21,22,23,24,25); if(src.empty()){ qDebug()<<"图片为空"; return; } imshow("src",src); //计算数据特征值及特征向量 Mat eigenValues,//特征值 eigenVectors;//特征向量 //src的输入必须是 CV_32FC1 or CV_64FC1 eigen(src,eigenValues,eigenVectors); cout << "特征值:"<<endl; cout <<eigenValues<<endl; cout <<"特征向量:"<<endl; cout <<eigenVectors<<endl;
三、演示图像