Eigen基本应用

原创 2016年08月28日 19:55:07

Eigen适用范围广,支持包括固定大小、任意大小的所有矩阵操作,甚至是稀疏矩阵;支持所有标准的数值类型,并且可以扩展为自定义的数值类型;支持多种矩阵分解及其几何特征的求解;它不支持的模块生态系统提供了许多专门的功能,如非线性优化,矩阵功能,多项式解算器,快速傅立叶变换等。

Eigen支持多种编译环境。

1、矩阵操作:
#include <iostream>
#include <Eigen/Dense>
using namespace Eigen;
int main()
{
MatrixXd m(2,2);
m(0,0) = 3;
m(1,0) = 2.5;
m(0,1) = -1;
m(1,1) = m(1,0) + m(0,1);
std::cout << "Here is the matrix m:\n" << m << std::endl;
VectorXd v(2);
v(0) = 4;
v(1) = v(0) - 1;
std::cout << "Here is the vector v:\n" << v << std::endl;
}
输出为
Here is the matrix m: 
  3  -1
2.5 1.5
Here is the vector v:
4
3
2、求解特征值和特征向量
#include <iostream>
#include <Eigen/Dense>
using namespace std;
using namespace Eigen;
int main()
{
Matrix2f A;
A << 1, 2, 2, 3;
cout << "Here is the matrix A:\n" << A << endl;
SelfAdjointEigenSolver<Matrix2f> eigensolver(A);
if (eigensolver.info() != Success) abort();
cout << "The eigenvalues of A are:\n" << eigensolver.eigenvalues() << endl;
cout << "Here's a matrix whose columns are eigenvectors of A \n"
<< "corresponding to these eigenvalues:\n"
<< eigensolver.eigenvectors() << endl;
}
输出为
Here is the matrix A:
1 2
2 3
The eigenvalues of A are:
-0.236  
4.24
Here's a matrix whose columns are eigenvectors of A corresponding to these eigenvalues:
-0.851 -0.526 
0.526 -0.851

原文链接:http://eigen.tuxfamily.org/index.php?title=Main_Page

                  http://baike.baidu.com/linkurl=2IZYOsGgCFEpJSF8HhYghkj6cn6suIBfuWvcjGcQAp8Rbo1nrvlBGrH0ZWdfxx9aTbY36rIzfE1gcVkTY8wg2K

相关文章推荐

有关eigen库的一些基本使用方法

矩阵、向量初始化#include #include "Eigen/Dense" using namespace Eigen; int main() { MatrixXf m1(3,4); ...
  • r1254
  • r1254
  • 2015年08月11日 13:35
  • 13373

Eigen基本用法

#include using namespace std;#include #include int main( ) { // 矩阵类模板的前三个参数为:数据类型,行,列 Eige...

C++Eigen库的配置和基本使用

1.配置 1.下载 http://bitbucket.org/eigen/eigen/get/3.2.5.tar.bz2 2.配置 2.基本使用 // testEigen3.cpp : 定义控制...

Eigen 基本类型的使用

转自:《视觉SLAM十四讲》 #include using namespace std; #include // Eigen 部分 #include // 稠密矩阵的代数运算(逆,特征值等) ...
  • u79501
  • u79501
  • 2017年06月02日 23:18
  • 768

Eigen中的基本函数

Eigen中的基本函数Eigen中矩阵的定义#include // 基本函数只需要包含这个头文件 Matrix A; // 固定了行...

eigen库的基本操作

Eigen 矩阵定义 #include Matrixdouble, 3, 3> A; // Fixed rows and cols. Same as Matrix3...

opencv, image处理注意点,eigen库的应用

1. 传统的MSR,是分别对RGB三个channel进行多尺寸滤波,为了保证颜色不失真,或是节省时间取RGB最大值对RGB整体滤波,均需要分清RGB的存储,下图为RGB图像被opencv中imread...
  • LL1256
  • LL1256
  • 2014年11月26日 13:07
  • 1212

Eigen 3.2.2 帮助文档

  • 2014年09月23日 20:10
  • 11.76MB
  • 下载

Eigen教程3 - 稀疏矩阵操作

稀疏矩阵操作操作和求解稀疏问题需要的模块: * SparseCore * SparseMatrix 和 SparseVector 类,基本线性代数(包括三角求解器) * SparseC...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Eigen基本应用
举报原因:
原因补充:

(最多只允许输入30个字)