美文网首页
VR-四元素、欧拉角转换条件

VR-四元素、欧拉角转换条件

作者: Weller0 | 来源:发表于2021-09-28 09:27 被阅读0次

转自欧拉角细节/旋转顺序/内旋外旋

1欧拉角简介

欧拉角是由Leonhard Euler 提出的概念,用来描述刚体/移动坐标系在一个固定坐标系中的姿态.简单的说是使用XYZ三个轴的旋转分量,来描述一个6自由度的旋转.

欧拉角一般具有两大类表示方式,每类按照旋转次序的不同分为6小类:

Proper Euler angles (z-x-z, x-y-x, y-z-y, z-y-z, x-z-x, y-x-y)

Tait–Bryan angles (x-y-z, y-z-x, z-x-y, x-z-y, z-y-x, y-x-z).

每个大类都使用了3个变量描述三次旋转过程中的旋转角度, 差别在于Proper Euler angles只涉及两个转轴.而Tait–Bryan angles涉及三个转轴.一般在SLAM中我们使用的是Tait–Bryan angles.

Tait–Bryan angles 也被称为Cardan angles, nautical angles, (heading, elevation, and bank),(yaw, pitch, and roll). 我们接触的比较多的是yaw(偏航), pitch(俯仰), roll(横滚).三个变量一般对应(车体,飞行器的)z,y,x三个坐标轴.

2欧拉角描述旋转

2.1一些欧拉角特性

一般对于旋转矩阵(33),旋转向量/角轴(31),四元数(4*1),我们给定一串数字,就能表示清楚一个姿态/旋转.比如这里给出一个旋转矩阵R:

旋转矩阵

表示刚体在A某坐标系下的姿态, 我们就可以确切的画出刚体A的姿态.

但如果我给出一组欧拉角(后面都是指Tait–Bryan angles),绕x,y,z三个轴的转角分别为(α,β,γ),我们不能能确定一个明确的姿态.需要再追加两个属性:(1)旋转顺序(2)内旋/外旋.才能确定的给出这组欧拉角对应的姿态.

2.2关于旋转顺序

旋转顺序就是我们上文提到的Tait–Bryan angles (x-y-z, y-z-x, z-x-y, x-z-y, z-y-x, y-x-z).

我们指定绕x轴旋转α,绕y轴旋转β.但是可以有多个旋转顺序, 比如:

情况1:先绕x轴旋转α,再绕y轴旋转β.得到姿态O1
情况2:先绕y轴旋转β,再绕x轴旋转α,得到姿态O2

得到的O1一般是不等于O2的.

对于x,y,z三个轴的不同旋转顺序一共有(x-y-z, y-z-x, z-x-y, x-z-y, z-y-x, y-x-z)六种组合.我们需要明确旋转顺序,才能确定欧拉角所指的姿态.

2.3关于内旋/外旋

首先列出几种等价的概念:
内旋(intrinsic rotations) = 旋转轴(rotated axis)
外旋(extrinsic rotations) = 固定轴(static/fixed axis)

我们后面直接用内旋/外旋来描述.

内旋/外旋的定义:

假设在世界坐标系中XYZ中存在物体,物体自身坐标系为xyz,假设初始状态物体相对XYZ的旋转为(0,0,0),即xyz与XYZ重合.我们定义旋转顺序为z->y->x,转角分别为γ,β,α.
先绕z轴旋转γ,旋转过后,物体的x,y轴的坐标系发生了改变,z轴不变,得到新的物体自身坐标系,此时的坐标轴
不再与世界坐标系的坐标轴XY重合.

内旋,外旋的区别在于:
在转β(第二个转角)时:
内旋按照旋转后物体的坐标y轴.
外旋按照世界坐标系中的Y轴旋转.

旋转最后一个角度时亦然.

因此, 增加了这两个概念(旋转顺序, 内外旋)后,我们描述一个能表示确定姿态/旋转的欧拉角,应该这样:

旋转角度(α,β,γ),旋转顺序(z->y->x),外旋.
旋转角度(α,β,γ),旋转顺序(x->y->z),内旋.
等等, 三个元素缺一不可.

相关文章

  • VR-四元素、欧拉角转换条件

    转自欧拉角细节/旋转顺序/内旋外旋[https://zhuanlan.zhihu.com/p/85108850] ...

  • VR-四元素、旋转矩阵、欧拉角转换

  • 2020-07-13

    关于turtlebot 的 imu数据的读取,并将四元素转换成了欧拉角。

  • 机器臂matlab篇

    1.Matlab ——旋转矩阵,四元数,欧拉角之间的转换 matlab练习程序(旋转矩阵、欧拉角、四元数互转) 2...

  • iOS SceneKit欧拉角转四元数

    使用欧拉角 使用欧拉角会造成万向锁,转成四元数就没有问题了

  • Cocos 3.x 四元数 rotateAroundLocal

    一、欧拉角 如何通俗地解释欧拉角?之后为何要引入四元数?[https://www.zhihu.com/questi...

  • 学习笔记2

    欧拉角和四元数 笔记主要摘自下列博文和回答中 如何通俗地解释欧拉角?之后为何要引入四元数? - 知乎 【Unity...

  • UE4 三种旋转(二)

    UE4 三种旋转(二) UE4 中旋转操作常用的方式:欧拉角、四元数和旋转矩阵。 欧拉角 四元数 利用四元数进行旋...

  • SLAM学习笔记3

    三维空间刚体运动,笔记内容有向量内积,向量外积,欧氏变换,旋转向量,欧拉角,旋转矩阵,四元数以及它们的转换关系,代...

  • unity-四元数

    什么是四元数? 欧拉角和四元数,都是表示物体旋转的。但欧拉角有个万向节死锁的问题,为了解决这个问题,因此引入了四元...

网友评论

      本文标题:VR-四元素、欧拉角转换条件

      本文链接:https://www.haomeiwen.com/subject/nkplnltx.html