基于误差状态卡尔曼滤波(ESKF)的四元数运动学

文章作者:Joan Sol`a
发表时间:October 12, 2017(注:Quaternion kinematics for the error-state Kalman filter 貌似有好几个版本,我这里选择翻译的是2017年10月的版本)
原文:Quaternion kinematics for the error-state Kalman filter
目录:

  • 1 四元数的定义和性质

    • 1.1 四元数定义

      • 1.1.1 四元数的替代表示
    • 1.2 主要的四元数属性
      • 1.2.1 求和
      • 1.2.2 乘积
      • 1.2.3 同一性(Identity)
      • 1.2.4 共轭
      • 1.2.5 范数
      • 1.2.6 逆
      • 1.2.7 单位或归一化的四元数
    • 1.3 额外的四元数属性
      • 1.3.1 四元数交换子
      • 1.3.2 纯四元数的乘积
      • 1.3.3 纯四元数的自然幂
      • 1.3.4 纯四元数的指数
      • 1.3.5 一般四元数的指数
      • 1.3.6 单位四元数的对数
      • 1.3.7 一般四元数的对数
      • 1.3.8 qt\mathbf{q}^tqt类型的指数形式
  • 2 旋转和互相关
    • 2.1 3D向量旋转公式
    • 2.2 旋转群SO(3)SO(3)SO(3)
    • 2.3 旋转群和旋转矩阵
      • 2.3.1 指数映射
      • 2.3.2 大写的指数映射
      • 2.3.3 旋转矩阵和旋转向量:罗德里格斯旋转公式
      • 2.3.4 对数映射
      • 2.3.5 旋转动作
    • 2.4 旋转群和四元数
      • 2.4.1 指数映射
      • 2.4.2 大写的指数映射
      • 2.4.3 四元数和旋转向量
      • 2.4.4 对数映射
      • 2.4.5 旋转动作
      • 2.4.6 SO(3)SO(3)SO(3)流型的双覆盖
    • 2.5 旋转矩阵和四元数
    • 2.6 旋转组成
    • 2.7 球面线性插值
    • 2.8 四元数和等轴旋转:解释魔法
  • 3 四元数约定,我的选择
    • 3.1 四元数特色

      • 3.1.1 四元数分量的顺序
      • 3.1.2 四元数代数的规范
      • 3.1.3 旋转操作的函数
      • 3.1.4 旋转操作的方向
  • 4 扰动,导数和积分
    • 4.1 SO(3)SO(3)SO(3)中的加法和减法运算符
    • 4.2 四个可能的导数定义
      • 4.2.1 从向量空间到向量空间的函数
      • 4.2.2 从SO(3)SO(3)SO(3)到SO(3)SO(3)SO(3)的空间
      • 4.2.3 从向量空间到SO(3)SO(3)SO(3)的函数
      • 4.2.4 从SO(3)SO(3)SO(3)到向量空间的函数
    • 4.3 有用的,且非常有用的,旋转的雅可比
      • 4.3.1 关于向量的雅可比
      • 4.3.2 关于四元数的雅可比
      • 4.3.3 SO(3)SO(3)SO(3)的右雅可比
      • 4.3.4 关于旋转向量的雅可比
    • 4.4 扰动,不确定性,噪声
      • 4.4.1 局部扰动
      • 4.4.2 全局扰动
    • 4.5 时间导数
      • 4.5.1 全局与局部的关系
      • 4.5.2 四元数乘的时间导数
      • 4.5.3 其他有用的导数表达式
    • 4.6 旋转率的时间积分
      • 4.6.1 零阶积分
      • 4.6.2 一阶积分
  • 5 基于IMU驱动系统的误差状态运动学
    • 5.1 运动
    • 5.2 误差状态卡尔曼滤波解释
    • 5.3 持续时间的系统运动学
      5.3.1 真实状态运动学
      5.3.2 标称状态运动学
      5.3.3 误差状态运动学
    • 5.4 离散时间的系统运动学
      • 5.4.1 标称状态运动学
      • 5.4.2 误差状态运动学
      • 5.4.3 误差状态雅可比和扰动矩阵
  • 6 用将IMU与互补的感知数据融合
    • 6.1 通过滤波校准的误差状态观测

      • 6.1.1 用于滤波器校正的雅可比计算
    • 6.2 将观测误差引入标称状态
    • 6.3 ESKF 重置
      • 6.3.1 关于定位误差的复位操作的雅可比
  • 7 使用全局角度误差的ESKF
    • 7.1 持续时间的系统运动学

      • 7.1.1 真实和标称状态运动学
      • 7.1.2 误差状态运动学
    • 7.2 离散时间的系统运动学
      • 7.2.1 标称状态
      • 7.2.2 误差状态
      • 7.2.3 误差状态雅可比和扰动矩阵
    • 7.3 与互补的传感数据融合
      • 7.3.1 误差状态观测
      • 7.3.2 将观测到的误差引入标称状态
      • 7.3.3 ESKF重置
  • A 龙格-库塔数值积分方法
    • A.1 欧拉方法
    • A.2 中间点方法
    • A.3 RK4方法
    • A.4 一般的龙格-库塔方法
  • B 闭式积分方法
    • B.1 角度误差的积分
    • B.2 简化的IMU例子
    • B.3 完整的IMU例子
  • C 使用截断序列的近似方法
    • C.1 系统截断

      • C.1.1 一阶截断:有限差分法
      • C.1.2 N阶截断
    • C.2 逐块截断
  • D 通过龙格-库塔积分的转移矩阵
    • D.1 误差状态示例
  • E 随机噪声和扰动的积分
    • E.1 噪声和扰动脉冲
    • E.2 完整的IMU例子
      • E.2.1 噪声和扰动脉冲

前言,开始入门SLAM行业有几年了,知道自己还是处于刚刚入门的水平,对于卡尔曼滤波等一些算法公式以及推导能看懂个大概,但又不是完全地了解,这种半吊子水平让我很苦恼,也很有危机感,感觉需要做点什么来系统的提高下算法基础上的水平,在各种机缘之下,决定通过全文翻译一遍这篇文章的方式来学习它。至于目的,一是,因为我的英文水平也是半吊子,长时间看这种英文的教材,估计自己很难坚持下去,但又不想让对这篇文章的学习半途而费,所以才想出了这么个笨办法,总比什么都不做要强;二也是为了将它分享给和我有相同的苦恼的同行,希望能对大家有帮助。

说明,关于翻译部分,为了保持习惯的一致性,这里做一些说明,方便读者阅读起来更清晰。虽然我检查多遍,但仍然难免翻译过程中出错,如果公式打错或者翻译有误的地方,欢迎并感谢广大读者提出改正意见。

  • 1,如图1所示,对于文章中,用斜体格式的专有名词,我在译文中,加粗表示,并在旁边用中文括号写出其对应的中文翻译名称(如图2所示)。

图1

图2
  • 2,文章中作者自己写有一些脚注(如图3所示),我这里翻译时用“【1】”来表示,对应的备注信息的翻译用有缩进的【注1,***】这样的方式表示(如图4所示)。

图3

图4
  • 3,【注:****】,这种没有对应的脚注号的格式内容,是译者自己写的一个人备注,用于总结前文或者在一些自己容易忘记的知识点处,对自己进行提醒和备忘。

  • 4,文章中重要的公式用矩形框框起来表示,译文里是将对应的公式标红处理的(如图5,6所示)。

图5

图6
  • 5,”norm“,这个词有“模”,“范数”两个比较合适的翻译,译文中可能会根据语境混用,但请注意它们对应的是同一个词。

文章翻译—基于误差状态卡尔曼滤波器的四元数运动学—前言相关推荐

  1. 文章翻译—基于误差状态卡尔曼滤波器的四元数运动学—第4章

    文章目录 基于误差状态卡尔曼滤波器的四元数运动学 4. 扰动,导数和积分 4.1 SO(3)SO(3)中的加法和减法运算符 4.2 四个可能的导数定义 4.2.1 从向量空间到向量空间的函数 4.2. ...

  2. 基于误差状态的卡尔曼滤波ESKF

    本文主要参考高博的知乎:https://zhuanlan.zhihu.com/p/441182819 ESKF的优点 在现在的大多数惯性系统中,人们往往更倾向于使用误差状态卡尔曼滤波器(Error s ...

  3. 基于误差状态卡尔曼滤波惯性导航理论

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨擦擦擦大侠 编辑丨古月居 点击进入->3D视觉工坊学习交流群 惯性导航备注 1.坐标系之间 ...

  4. 信号去噪,基于Sage-Husa自适应卡尔曼滤波器实现海浪磁场噪声抑制及海浪磁场噪声的产生附Matlab代码

    信号去噪,基于Sage-Husa自适应卡尔曼滤波器实现海浪磁场噪声抑制及海浪磁场噪声的产生附Matlab代码 信号处理中的一个关键问题就是信号去噪.在实际应用中,很多信号可能会受到环境噪声的干扰,这些 ...

  5. 基于自适应扩展卡尔曼滤波器(AEKF)的锂离子电池SOC估计(附MATLAB代码)

    AEKF_SOC_Estimation函数使用二阶RC等效电路模型(ECM)和自适应扩展卡尔曼滤波器(AEKF)估计电池的端电压(Vt)和充电状态(SOC).该函数将以下内容作为输入: · 电流(A) ...

  6. 【目标定位】基于matlab扩展卡尔曼滤波器多机器人定位【含Matlab源码 2327期】

    ⛄一.简介 1 机器人运动模型分析 1.2 坐标系 一个是全局坐标系(Xw,Yw), 另一个是机器人的局部坐标系(Xr,Yr). 如下图所示: 图1 机器人坐标系 室内环境用二维平面表示在全局坐标系X ...

  7. 优达学城,基于激光的卡尔曼滤波器的C++实现。

    measurement_package.h #ifndef MEASUREMENT_PACKAGE_H_ #define MEASUREMENT_PACKAGE_H_#include "Ei ...

  8. 误差卡尔曼中的四元数运动学-第二章

    第二章 旋转和交叉关系 2.1 三维矢量旋转公式 公式54的向量旋转公式,是从向量分解的角度推导来的,对于一个旋转来说,就是可以分解为垂直方向和平行方向. 2.2 旋转群SO(3) 在机器人中,刚体的 ...

  9. 1. 简明误差卡尔曼滤波器(ESKF)及其推导过程

    文章目录 1. 简明误差卡尔曼滤波器(`ESKF`)及其推导过程 简介 `ESKF`基本过程及优点 `ESKF`参数含义 连续时间上的 `ESKF`状态方程 误差状态方程推导 误差状态的旋转项 误差状 ...

最新文章

  1. python 判断节假日_[宜配屋]听图阁
  2. python pdf-浅谈Python处理PDF的方法
  3. 1077篇!ICCV2019接收结果公布,你中了吗?(附7篇论文链接,含Oral)
  4. 理解 | 理解a: float=10
  5. 玻璃体定点注入(个人猜想)
  6. 通过反射获取方法返回的类型
  7. 前端学习(1410):多人管理30数据分页
  8. [转载] 中国象棋软件-引擎实现(二)棋局表示
  9. DW Basic Knowledge1
  10. mysql的update怎么恢复_mysql误update数据恢复
  11. matlab有限差分法求解温度场,动静压轴承油膜温升MATLABFLuENT有限差分法硕士论文...
  12. 南开大学2019年高等代数考研试题不全
  13. python正则表达式:贪婪与非贪婪
  14. 测试一下Pinia,Vuex 要出局了?
  15. jpa级联添加_jpa级联(Cascade)操作
  16. android点击按钮打开自带浏览器,android – 如何在默认浏览器或webview中打开按钮单击URL...
  17. python程序设计心得体会感想-从Python学习中得到的一点感悟
  18. 根据字体的中文名 获取 字体的路径 和 英文名
  19. IDEA Git 复制分支到新分支 提交到新分支
  20. 双模控制器很耗电_电动车双电双核控制系统是在说什么?这个部件的发展一日千里!...

热门文章

  1. JavaScript学习第十一天(Date、定时器)
  2. qpc之qk调度学习笔记
  3. python标准库math中用来计算平方根的函数_python考试复习题库
  4. Java基础的学习、知识点总结
  5. 韩顺平java制作记事本_2011-05-21——Java从入门到精通(韩顺平)自己整理的笔记(包括记事本的开发)...
  6. 教育部计算机英语怎么说,教育部课题、国家社科基金、国家自然基金的英文翻译???...
  7. 自己动手丰衣足食之移动端日期选择插件(强烈推荐)
  8. Java新手上路--算数运算符
  9. Android 11 变更及适配攻略
  10. 初探“Android Instant Apps”