5 视觉SLAM十四讲读书笔记P40-P52

目录
Q:什么是eigen
Q:正交矩阵的定义和性质
Q:什么是特殊正交群
Q:什么叫齐次坐标
Q:什么是特殊欧氏群
Q:什么是运算符重载
Q:什么是g2o
Q:什么是
Q:什么是eigen
Eigen是一个C++模板库 , 提供了线性代数运算的基本功能 , 包括矩阵、向量、数值分解、求解线性方程组等等 。它的设计目标是高性能、易用性和通用性 。
Eigen提供了类似于和NumPy的API , 可以简单易懂地进行各种矩阵和向量计算 。它还提供了多种算法来处理各种矩阵运算 , 比如求解特征值、SVD分解、QR分解等 。
Eigen是一个开源库 , 可以自由地使用和分发 。它使用头文件实现 , 因此很容易将其集成到您的项目中 。它支持各种平台和编译器 , 包括、Linux、Mac OS和多种编译器 , 如GCC、Clang、MSVC等 。
由于Eigen的设计优秀 , 实现高效 , 因此在很多领域得到广泛应用 , 包括计算机图形学、机器人学、信号处理等等 。
Q:正交矩阵的定义和性质
正交矩阵是指矩阵的列向量(或行向量)两两正交且模长为1的矩阵 。具体地 , 设Q是一个n阶矩阵 , 则Q为正交矩阵当且仅当满足以下两个条件:
Q^TQ=QQ^T=I_n , 其中I_n为n阶的单位矩阵 。
Q的每一列(或每一行)都是单位向量 , 即|q_i|=1 , 其中q_i为Q的第i列(或第i行) 。
正交矩阵的性质如下:
正交矩阵的逆矩阵是其转置矩阵 , 即Q^{-1}=Q^T 。
正交矩阵的行列式的绝对值为1 , 即|det(Q)|=1 。
正交矩阵的列向量(或行向量)组成一个标准正交基 , 即任何向量都可以由这组向量线性表示 。
正交矩阵保持向量的长度和角度不变 , 即对于任意向量x , 有|Qx|=|x| , 且angle(Qx,Qy)=angle(x,y) 。
正交矩阵的转置矩阵仍然是正交矩阵 。
两个正交矩阵的乘积仍然是正交矩阵 。
正交矩阵在许多数学和应用领域中都有重要的应用 , 例如在线性代数中用于求解特征值和特征向量 , 以及在计算机图形学中用于变换和旋转等操作 。
Q:什么是群
群(Group)是代数学中的一个基本概念 , 是一种带有代数结构的集合 。群的定义包含了一个二元运算和一些基本公理 , 它们决定了群的性质 。
具体地说 , 设G是一个集合 , 
是一个在G上的二元运算 , 若满足以下四个基本公理:
封闭性:对于任意的
 , 有

结合律:对于任意的
 , 有

单位元素:存在一个元素
 , 称为单位元素 , 满足对于任意的
 , 有

逆元素:对于任意的
 , 存在一个元素
 , 称为
的逆元素 , 满足

则称
为一个群 。如果群
中的运算满足交换律 , 即对于任意的
 , 有
 , 则称
为交换群或阿贝尔群 。
Q:什么是特殊正交群
特殊正交群(Group)通常记作SO(n) , 是由所有n阶行列式为1的正交矩阵所组成的群 。其中的元素都是n阶的矩阵 , 满足矩阵的逆等于它的转置矩阵 。在二维中 , 特殊正交群是一个圆周 , 因为旋转矩阵可以由一个角度参数表示;在三维中 , 它是一个球面 , 因为旋转矩阵可以由三个角度参数表示 。SO(n)群在物理学中经常用来描述空间的对称性 , 例如在旋转对称的体系中 。