#include <eigen3/Eigen/core>
#include <eigen3/Eigen/dense>
#include <eigen3/Eigen/Geometry>
//如果想要省略eigen3,需要在CMakeLists.txt文件当中添加:
include_directories("/usr/include/eigen3")
矩阵定义
Eigen::Matrix matrix_name = Eigen::Matrix <double, 3, 4>//知道矩阵的大小3*4大小的矩阵
Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic>matrix_notknow_size//不知道矩阵的大小 ,这样定义
Eigen::MatrixXd matrix_nSize//更简单地定义矩阵,不知道矩阵的大小。
矩阵数据格式的变换
matrix_nSize.cast<double>() //把矩阵数据格式转换成double格式,因为矩阵只能相同格式地相乘。
基本的矩阵 *** 作:转置、求逆、求迹、求和、数乘、行列式
matrix_nSize.transpose() //转置
matrix_nSize.sum() //矩阵各元素求和
matrix_nSize.trace() //求迹
matrix_nSize.inverse() //求逆
10 * matrix_nSize //矩阵数乘,数乘是可以不同类型来做的.
matrix_nSize.determinant() //求行列式
矩阵特征值求解
matrix_real = Eigen::Matrix3d::Random()
matrix_realSymentry = matrix_real.transpose() * matrix_real//这是一个实对称矩阵
Eigen::SelfAdjointEigenSolver<Eigen::Matrix3d>eigen_solver (matrix_realSymentry) //特征求解器
cout <<"Eigen values = " <<eigen_solver.eigenvalues() <<endl//输出特征值
cout <<"Eigen vectors = " <<eigen_solver.eigenvectors() <<endl//输出特征向量
矩阵QR分解求方程的解
x = matrix_NN.colPivHouseholderQr().solve(v_Nd)
/********************************************************
旋转矩阵、旋转向量、四元数的使用
********************************************************/
旋转向量的定义
Eigen::AngleaAxisd rotation_vector (M_PI/4, Eigen::Matrix3d::Identity())
rotation_matrix = rotation_vector.toRoationMatrix()//把旋转向量转换成旋转矩阵
rotation_matrix = rotation_vector.Matrix()// 另外一种旋转矩阵的表达形式
欧拉角
Eigen::vector3d euler_angles = rotation_matrix.eulerAngles(2, 1, 0)// z y x 顺序, yaw, pitch, row
变换矩阵
Eigen::Isometry3d T = Eigen::Isometry3d::Identity()
T.rotate(rotation_vector)
T.pretranslate(Eigen::Vector3d(1, 3, 4))
cout <<"Transform matrix is \n" <<T.matrix() <<endl
cout <<"Rotation vector is \n" <<rotation_vector.axis() <<endl
四元数
Eigen::Quaterniond q = Eigen::quaterniond (rotation _vector)
cout <<" quaterniond = \n" <<q.coeffs() <<endl
v_rotated = q * v
参考书目《视觉SLAM十四讲:从理论到实践》
您好,添加源文件的下拉菜单没有个并列的添加include的选项?sdk源码里有没有目录Eigen/Dense?如果运行的 是通过“打开工程或文件”的原程序,运行就有错。如果运行的是通过“新建”的程序,就没有错。
http://blog.csdn.net/abcjennifer/article/details/7781936
正好刚在研究这个
多看看博客,仔细研究下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)