四元数

来源:互联网 发布:ubuntu与fedora的异同 编辑:程序博客网 时间:2024/04/30 01:14

一.四元数定义

四元数的通用定义为 :     根据 Haniton 公式    且有如下关系,,,,      ,,形象的表示如下图所示:


四元数有序对表示法:   , 注意此处的V为向量,其中i,j,k  性质 已经没有上述四元数中 i,j,k 的性质

二. 四元数运算

1. 加法

假设  , ,则 , 即两部分分别相加

 2.乘法

假设          , 则    

            

三.四元数相关概念

单元四元数     

四元数对            则 

模运算            假设,则  ,另外,有关系式成立    

逆运算 (Inverse)        四元数和自身的逆乘积为1    

三. 四元数旋转

  • 优点:
    • 可以避免万向节锁现象;
    • 只需要一个4维的四元数就可以执行绕任意过原点的向量的旋转,方便快捷,在某些实现下比旋转矩阵效率更高;
    • 可以提供平滑插值;
  • 缺点:
    • 比欧拉旋转稍微复杂了一点点,因为多了一个维度;
    • 理解更困难,不直观;

首先考虑一种简单的情况,如下图,p垂直于q,   P绕q旋转45°

       

            令  则 

   j角度为 45°, ,则  ,此时模为 2,和原来是一样的

                 

可是如果p 和 q 不垂直,如上图右所示, 如果还是直接计算 p' = qp ,得到的计算结果模就不再是 2,所以需要再乘以 q 的逆


p' = qpq-1 ,       

四. 四元数插值

计算角度的差距                   

     

Reference:

http://www.3dgep.com/understanding-quaternions/

http://www.zhihu.com/question/23005815

http://blog.csdn.net/silangquan/article/details/39008903

0 0
原创粉丝点击