四元数的理解(简单入门应用)

本人做的一个项目(配准)需要用单位四元数来求解相关参数,利用的是四元数在旋转上的优势。

1.基本定义:

首先明确,四元数是超复数。

复数是什么呢?

  • 复数是由实数加上虚数单位 i 组成,其中i^2 = -1。

四元数都是由实数加上三个虚数单位 i、j、k 组成,而且它们有如下的关系:
i^2 = j^2 = k^2 = -1, i^0 = j^0 = k^0 = 1
每个四元数都是 1、i、j 和 k 的线性组合,即是四元数一般可表示为a + bi+ cj + dk,其中a、b、c 、d是实数。

2.几何意义:

对于i、j、k本身的几何意义可以理解为一种旋转,其中:

  • i旋转代表X轴与Y轴相交平面中X轴正向向Y轴正向的旋转
  • j旋转代表Z轴与X轴相交平面中Z轴正向向X轴正向的旋转
  • k旋转代表Y轴与Z轴相交平面中Y轴正向向Z轴正向的旋转
  • -i、-j、-k分别代表i、j、k旋转的反向旋转。
    在这里插入图片描述

3.矩阵表示:

四元数可以由矩阵表示,这便于将矩阵的加法、乘法应用于四元数的加、乘。
四元数的矩阵表示有两种:

1.第一种是以二阶复数矩阵表示。

若 h = a + bi + cj + dk 则它的复数形式为:
在这里插入图片描述
这种表示法有如下优点:

  • 所有复数 (c = d = 0) 就相应于一个实矩阵。
  • 四元数的绝对值的平方就等于矩阵的行列式。
  • 四元数的共轭值就等于矩阵的共轭转置。
2. 第二种则是以四阶实数矩阵表示:

在这里插入图片描述
其中四元数的共轭等于矩阵的转置。

4.基本运算:

百度百科介绍的很详细了,需要注意的就是,四元数乘法非可换

5.旋转跳跃,我不停歇

从之前四元数的几何意义就可以看出,其在旋转领域独树一帜。

空间坐标变换无非是平移、缩放和旋转,旋转应该是其中最复杂的变换。

旋转的表示,主要有三种:矩阵旋转、欧拉旋转和本文的四元数旋转。

下面对比一下这三种旋转方式的优缺点:

1.矩阵旋转

  • 优点:

    • 旋转轴可以是任意向量;
  • 缺点:

    • 旋转其实只需要知道一个向量+一个角度,一共4个值的信息,但矩阵法却使用了16个元素;
    • 而且在做乘法操作时也会增加计算量,造成了空间和时间上的一些浪费

2.欧拉旋转

  • 优点:

    • 很容易理解,形象直观;
    • 表示更方便,只需要3个值(分别对应x、y、z轴的旋转角度);但按我的理解,它还是转换到了3个3*3的矩阵做变换,效率不如四元数;
  • 缺点:

    • 这种方法是要按照一个固定的坐标轴的顺序旋转的,因此不同的顺序会造成不同的结果;
    • 会造成万向节锁(Gimbal Lock)的现象。这种现象的发生就是由于上述固定坐标轴旋转顺序造成的。理论上,欧拉旋转可以靠这种顺序让一个物体指到任何一个想要的方向,但如果在旋转中不幸让某些坐标轴重合了就会发生万向节锁,这时就会丢失一个方向上的旋转能力,也就是说在这种状态下我们无论怎么旋转(当然还是要原先的顺序)都不可能得到某些想要的旋转效果,除非我们打破原先的旋转顺序或者同时旋转3个坐标轴。具体可看视频了解。
    • 由于万向节锁的存在,欧拉旋转无法实现球面平滑插值;

3.四元数旋转

  • 优点:

    • 可以避免万向节锁现象;
    • 只需要一个4维的四元数就可以执行绕任意过原点的向量的旋转,方便快捷,在某些实现下比旋转矩阵效率更高;
    • 可以提供平滑插值;
  • 缺点:

    • 比欧拉旋转稍微复杂了一点点,因为多了一个维度;
    • 理解更困难,不直观;

理解层面感觉到这就可以了,简单的推导和旋转的表达可以参考该文章(基础好的之间从第4节开始),简单的应用参考该文章,旋转矩阵求解参考该文章,真正应用时,都有现成的模板和算法,甚至你不需要知道什么,只要知道你应输入的参数,和接收的结果就行了(个人感觉这方面研究到天花板了,我等凡人没必要深究)。

  • 8
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值