【OpenCV4】计算对称矩阵特征值和特征向量 cv::eigen() 用法详解和代码示例(c++)

这篇具有很好参考价值的文章主要介绍了【OpenCV4】计算对称矩阵特征值和特征向量 cv::eigen() 用法详解和代码示例(c++)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

函数原型:


bool cv::eigen	(	InputArray 	src,
					OutputArray 	eigenvalues,
					OutputArray 	eigenvectors = noArray() 
					)	

解析:

  • src:输入矩阵,只能是 CV_32FC1 或 CV_64FC1 类型的方阵(即矩阵转置后还是自己)
  • eigenvalues:输出的特征值组成的向量,数据类型同输入矩阵,排列从大到小
  • eigenvectors:输出的特征向量组成的矩阵,数据类型同输入矩阵,每一行是一个特征向量,对应相应位置的特征值

备注: 对于非对称矩阵,可以使用 cv::eigenNonSymmetric() 计算特征值和特征向量。

代码示例:

void TestEigen()
{
    cv::Mat m = (cv::Mat_<float> (3, 3) << 1, 2, 3, 
                                                                   2, 5, 6, 
                                                                   3, 6, 7);
    cv::Mat eigenvalues;
    cv::Mat eigenvectors;

    cv::eigen(m, eigenvalues, eigenvectors);

    return;
}

输入:
cv::eigen,计算机视觉,c++,opencv,计算机视觉
特征值:
cv::eigen,计算机视觉,c++,opencv,计算机视觉
特征向量:
cv::eigen,计算机视觉,c++,opencv,计算机视觉文章来源地址https://www.toymoban.com/news/detail-636228.html

到了这里,关于【OpenCV4】计算对称矩阵特征值和特征向量 cv::eigen() 用法详解和代码示例(c++)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数值分析】用幂法计算矩阵的主特征值和对应的特征向量(附matlab代码)

    用幂法计算下列矩阵的按模最大特征值及对应的特征向量 k= 1 V^T= 8 6 0 m= 8 u^T= 1.0000 0.7500 0 k= 2 V^T= 9.2500 6.0000 -2.7500 m= 9.2500 u^T= 1.0000 0.6486 -0.2973 k= 3 V^T= 9.5405 5.8919 -3.5405 m= 9.5405 u^T= 1.0000 0.6176 -0.3711 k= 4 V^T= 9.5949 5.8414 -3.7309 m= 9.5949 u^T= 1.0000 0.6088 -0.3888 k= 5 V^T= 9.6041 5.8240 -3.7753 m=

    2024年02月01日
    浏览(43)
  • 特征值和特征向量的解析解法--带有重复特征值的矩阵

    当一个矩阵具有重复的特征值时,意味着存在多个线性无关的特征向量对应于相同的特征值。这种情况下,我们称矩阵具有重复特征值。 考虑一个n×n的矩阵A,假设它有一个重复的特征值λ,即λ是特征值方程det(A-λI) = 0的多重根。我们需要找到与特征值λ相关的特征向量。 首

    2024年02月05日
    浏览(45)
  • 线性代数|证明:矩阵特征值的倒数是其逆矩阵的特征值

    性质 1 若 λ lambda λ 是 A boldsymbol{A} A 的特征值,当 A boldsymbol{A} A 可逆时, 1 λ frac{1}{lambda} λ 1 ​ 是 A − 1 boldsymbol{A}^{-1} A − 1 的特征值。 证明 因为 λ lambda λ 是 A boldsymbol{A} A 的特征值,所以有 p ≠ 0 boldsymbol{p} ne 0 p  = 0 使 A p = λ p boldsymbol{A} boldsymbol{p} = lambda

    2024年02月08日
    浏览(49)
  • 【问题证明】矩阵方程化为特征值方程求得的特征值为什么是全部特征值?不会丢解吗?

    这个问题困扰了我好久,一直感觉如果有其他的特征值没法证伪,不过一直存在思想的层面,没有实际解决,今天突然想到动笔来解决,遂得解,证明如下。 这个证明看似证明过后很直观,但实际上思维走向了牛角尖的时候光靠思考是无法得出令人信服的结论的,唯有实际动

    2024年02月05日
    浏览(58)
  • 《数值分析》-3-特征值与特征矩阵

    搜索技术的很多方面的知识发现都依赖于特征值或奇异值问题,涉及到特征值计算问题。 计算特征值没有直接的方法。 定位特征值的计算方法基于幂迭代的思想,这是求解特征值的一类迭代方法。该思想的一个复杂版本被称为QR算法,是确定典型矩阵所有特征值的一般方法。

    2024年02月08日
    浏览(46)
  • 5.1 矩阵的特征值和特征向量

    学习特征值和特征向量的定义和性质,我会采取以下方法: 1. 学习线性代数基础知识:特征值和特征向量是线性代数中的重要概念,需要先掌握线性代数的基础知识,例如向量、矩阵、行列式、逆矩阵、转置、内积、外积等基本概念。 2. 学习特征值和特征向量的定义:特征

    2024年02月02日
    浏览(51)
  • MATLAB矩阵的特征值与特征向量

    设A是n阶方阵,如果存在常数λ和n维非零列向量x,使得等式Ax = λx 成立,则称λ为A的特征值,x是对应特征值λ的特征向量。 在MATLAB中,计算矩阵的特征值与特征向量的函数是eig,常用的调用格式有两种: E = eig(A):求矩阵A的全部特征向量值,构成向量E。 [X,D] = eig(A):

    2024年02月11日
    浏览(41)
  • 特征值与相似矩阵

    应用:求幂,对角化,二次型,动力系统等等 通俗 ​ 向量α在矩阵A的线性变换作用下,保持方向不变,进行比例为λ的伸缩。 官方(注意是方阵) 特征方程 ​ (λE-A)α = 0 (α!=0)特征向量不能为0,但是 特征值可以为0或虚数 。方程中λ的次数应与A的 阶数相同 ,否则不是

    2024年02月06日
    浏览(51)
  • 矩阵分析:特征值分解

    伸缩 一个矩阵其实就是一个线性变换,因为一个矩阵乘以一个向量后得到的向量,其实就相当于将这个向量进行了线性变换。比如说下面的一个矩阵: 因为这个矩阵M乘以一个向量(x,y)的结果是: 旋转 除了伸缩变换,也可以进行旋转变换。 上面的矩阵是对称的,所以这个变

    2023年04月24日
    浏览(43)
  • 线性代数(8):特征值、特征向量和相似矩阵

            有矩阵 A 为 n 阶矩阵,Ax = λx ( λ 为一个实数,x为 n 维非零列向量 ),则称 λ 为方阵 A 的特征值, x 为特征向量; 1.2.1 公式         求特征值:使 | A - λE | = 0,其解的 λ 值即为矩阵 A 的特征值;         求特征向量: 使 ( A - λE )x = 0,设 x 为与 A 具有

    2024年02月11日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包