【自动驾驶】Eigen:矩阵Matrix的使用

矩阵的使用可参考系列博客:https://blog.csdn.net/caomin1hao/category_7898685.html


1.Eigen::Matrix

定义一个 3*4的浮点型矩阵


2.Eigen::Matrix4f

4*4矩阵,定义见下:

typedef Matrix<float, 4, 4> Matrix4f;   // 4*4矩阵

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


3.Eigen::Vector3f

3*1列向量,定义见下:

typedef Matrix<float, 3, 1> Vector3f;  //列向量,3*1

4.Eigen::RowVector2i

1*2行向量,定义见下:

typedef Matrix<int, 1, 2> RowVector2i;  //行向量 1*2

Matrix3f a; a是一个3*3的矩阵,分配了float[9]的空间,但未初始化内部元素;


MatrixXf b; b是一个动态大小的矩阵,定义是未分配空间(0*0)


MatrixXf a(10,15); a是一个10*15的动态大小的矩阵,分配了空间但未初始化元素


5. 块操作

原文

  1. 块操作

    块是matrixarray中的矩形子部分

  2. 使用块

    函数.block(),有两种形式

operation 构建一个动态尺寸的block 构建一个固定尺寸的block
起点(i,j),块大小(p,q) .block(i,j,p,q) .block< p,q >(i,j)

Eigen中,索引从0开始。


求矩阵的逆:

.inverse()

你可能感兴趣的:(自动驾驶,矩阵,自动驾驶,线性代数)