用于描述三维矢量旋转的四元数法的一点理解

描述三维矢量的空间旋转主要有三种方法:欧拉角法,轴角法以及四元数法,故首先对这个三种方法的特点进行描述与比较

1.欧拉角法:使用三个元素[α,β,γ],以及世界坐标系[Xw,Yw,Zw]来描述一个矢量在经过旋转后的空间姿态。

                    分析其特点:旋转不具有顺序性,且很难在某一次旋转过程中使用插值的办法进行分析

2.轴角法:  使用四个元素[x,y,z,θ]来描述每次旋转过程的转轴和转角

                    分析其特点:旋转具有顺序性,但很难对其进行插值,且不能直接用于与目标矢量进行计算

3.四元数法:使用四个元素[w,i,j,k]来描述一次旋转。根据其与轴角法的转换关系不难看出各元素的含义

w = cos(θ/2)  
i  = x * sin(θ/2)  
j  = y * sin(θ/2)  
k  = z * sin(θ/2)

                    分析其特点:旋转具有顺序性,且可在某次旋转中使用插值的办法分析其过程,同时可直接用其进行矢量计算,

                    得到旋转后的目标矢量状态

四元数法描述三维旋转,该四元数实质上为四维空间上的三维超平面子集,从而实现,当出现旋转变换(及四元数矢量乘积)时,其结果仍处于三维空间内。

对一个三维矢量 f[0,x,y,z] 进行一次绕轴[wx,wy,wz]的θ角度旋转,首先根据上述变换得到去四元数 q[w,i,j,k]

则新的矢量 f'=q * f * q^(-1)

你可能感兴趣的:(嵌入式开发边缘知识)