四元数定义 Hamilton vs JPL
不管是卡尔曼滤波或者BA优化形式的SLAM或者VIO系统中,都需要用到单位四元数(Quaternion)来表示旋转,主要是单位四元数表示旋转相对于其他旋转表示方式如旋转矩阵、欧拉角或者旋转向量等具有优势,它既是紧凑(自由度3)同时还没有奇异性。本系列主要是介绍在SLAM&VIO系统中涉及到的公式(ESKF,IMU预积分等)所涉及的四元数的一些基础性质的推导和整理,关于四元数的更基础的定义建议参考引用【1】到【4】。该系列主要包括:
- [SLAM四元数基础系列一] 四元数定义 Hamilton vs JPL
- [SLAM四元数基础系列二] 四元数和旋转矩阵
- [SLAM四元数基础系列三] 四元数求导
- [SLAM四元数基础系列四] 四元数积分
注:除了[SLAM四元数基础系列一] 四元数定义 Hamilton vs JPL中,后面的介绍中都采用Hamilton形式表示四元数。
简介
根据四元数实部虚部顺序、乘法定义、旋转操作定义以及旋转方向定义等四种概念的不同组合有将近12种不同的四元数表示方式,其中最常用的是Hamilton(引用1)和JPL(引用2)方式。本文就上面的四种不同概念以及常用的两种四元数表示方式详细介绍。
首先定义四元数为:
q = q w + q x i + q y j + q z k \mathbf{q} = q_w + q_xi + q_yj+q_zk q=qw+qxi+qyj+qzk
这里 i , j , k i,j,k i,j,k为三个虚单位数,其中
i 2 = j 2 = k 2 = i j k = − 1 i^2 = j^2 = k^2 = ijk = −1 i2=j2=k2=ijk=−1
四种区分方式
简介中提到可以根据四元数实部虚部顺序、乘法定义、旋转操作定义以及旋转方向定义对四元数进行分类,下面详细介绍下:
- 实部虚部顺序
主要是根据实部在前或者虚部在前予以区分,如下
q = [ q w q v ] v s . q = [ q v q w ] \mathbf{q} = \left[ \begin{matrix} q_w \\ \mathbf{q}_v \end{matrix} \right] \qquad vs. \qquad \mathbf{q} = \left[ \begin{matrix} \mathbf{q}_v \\ q_w \end{matrix} \right] q=[qwq

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



