参考:李群与李代数_详细公式推导
参考:视觉SLAM十四讲
为什么要引入李代数
旋转矩阵(李群)自身是带有约束的,正交且行列式为1,他们作为优化变量时,会引入额外的约束,使得优化变的困难,通过转为李代数,把位姿估计变成无约束的优化问题。
优化过程求极值,求导数的定义式,会涉及矩阵加法,但是矩阵对于加法不封闭,对于乘法封闭
我们可以把李群看做就是变换矩阵的集合,通过转为李代数,李代数是向量,有定义加法,用求导的定义式子就可以求解优化问题了。
指数映射(exponential map)和对数映射(logarithmic map)
ϕ
=
a
r
c
c
o
s
(
t
r
a
c
e
(
R
)
−
1
2
)
,
u
=
(
R
−
R
T
)
∨
2
s
i
n
ϕ
\phi = arccos\left(\frac{trace(\bm R)-1}{2}\right), \\ \bm u = \frac{(\bm R - \bm R^T)^\vee}{2sin\phi}
ϕ=arccos(2trace(R)−1),u=2sinϕ(R−RT)∨
来源于:《Quaternion kinematics for the error-state Kalman filter》
上式如何求证??
李代数 => 向量,so(3)实际上就是旋转向量组成的空间
李群 => 矩阵,se(3)实际上就是旋转向量对应的旋转矩阵
李代数(旋转向量空间) => 李群(矩阵空间):使用罗德里格斯公式(4.22)
李群(矩阵空间) => 李代数(旋转向量空间):使用罗德里格斯公式取两边的迹(对角线元素之和)求解θ,
a由Ra=a解得,视觉SLAM十四讲(3.17)和(3.18)。
公式(10)/(4.10):旋转矩阵R与反对称矩阵φ(t0)^,是通过指数函数exp(.)发生联系的。
假设旋转向量φ为李代数,对应矩阵可以表示为:R=exp(φ^),
是一个反对称矩阵的指数,在李群李代数中,其被称作指数映射(Exponential Map)。
任意矩阵的指数映射可以写成一个泰勒展开的形式,结果还是一个矩阵。
定义旋转向量φ的模长和方向为θ和a,于是φ=θa,R=exp(φ^ )=exp(θa^)
向量φ的模θ是旋转的角度,向量φ本身就是绕着旋转的轴。
对φ给出一个新的定义,φ=ωt,这个运动刻画的是角速度恒定的定点转动:参考SLAM中,李代数so(3)的指数映射就是这个旋转向量对应的旋转矩阵么?
李代数求导和扰动模型
李群乘法与李代数加法互转:
对李代数SE3求导
一、BCH公式与近似形式
二、两种求导方式:
(1)李代数求导
(2)扰动模型(左乘)
参考:李群与李代数:https://blog.csdn.net/andylei777/article/details/79366078