Eigen入门系列 —— Eigen::Matrix矩阵特征值、特征向量计算

Eigen入门系列 —— Eigen::Matrix矩阵特征值、特征向量计算


前言

随着工业自动化、智能化的不断推进,机器视觉(2D/3D)在工业领域的应用和重要程度也同步激增(识别、定位、抓取、测量,缺陷检测等),而针对不同作业场景进行解决方案设计时,通常会借助PCL、OpenCV、Eigen等简单方便的开源算法库进行方案的快速验证和迭代以满足作业场景下的目标需求。

为了让对工业机器视觉方向感兴趣的同学能够少走一些弯路,故推出了此一系列简易入门教程示例,让初次使用者能够最简单直观地感受到当前所用算法模块的执行效果。

后续会逐步扩增与工业机器视觉相关的一些其它内容,如:

项目案例剖析场景数据分析基础算法模块相机评测 等;

如有兴趣可加入群聊(若入群二维码被屏蔽,则可以通过Q群(1032861997)或评论、私信博主“群聊”,邀请入群),与同道同学及圈内同行一起交流讨论。

在这里插入图片描述


程序说明

展示Eigen::Matrix矩阵特征值、特征向量计算;

输出结果

在这里插入图片描述

代码示例

/*
 * @File: eigenvalue_eigenvector.cpp
 * @Brief: eigen course
 * @Description: 展示Eigen::Matrix矩阵特征值、特征向量计算
 * @Version: 0.0.1
 * @Author: MuYv
 */
#include <iostream>
#include <Eigen/Dense>



int main(int argc, char** argv){
    
    // 使用随机数填充初始化创建
    Eigen::Matrix3f matrix_3f = Eigen::Matrix3f::Random();
    // 确保可以对角化成功
    matrix_3f = matrix_3f.transpose()*matrix_3f;
    std::cout<<"matrix_3f:\n"<<matrix_3f<<std::endl<<std::endl;

    Eigen::SelfAdjointEigenSolver<Eigen::Matrix3f> eigen_solver(matrix_3f);
    std::cout<<"Eigen values:\n"<<eigen_solver.eigenvalues()<<std::endl<<std::endl;
    std::cout<<"Eigen vectors:\n"<<eigen_solver.eigenvectors()<<std::endl<<std::endl;
    
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值