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;

 

三、演示图像

 

posted on 2022-05-05 16:36  飘杨......  阅读(548)  评论(0编辑  收藏  举报