欧拉角与旋转矩阵

这篇具有很好参考价值的文章主要介绍了欧拉角与旋转矩阵。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 欧拉角

欧拉角与旋转矩阵

1.1欧拉角的表示

我们想描述刚体在现实世界的旋转时,可以用旋转矩阵、旋转向量,四元数等来表示,虽然它们能描述旋转,但对我们人类是非常不直观的。很难说,给你一个旋转矩阵R或者四元数q,我们能想象出他是怎么旋转的。

欧拉角就可以很直观的展现这种旋转的过程。因为他把整个旋转过程分解成了绕指定坐标轴顺序的三次旋转。当然,由于分解方式有许多种,所以欧拉角也存在着不同的定义方法。

①绕轴顺序, 比如按ZYX顺序来转如下图。
欧拉角与旋转矩阵
当然,也有别的顺序,比如XYZ,ZXY,XZY等。
②围绕的轴的类型,是绕固定轴还是绕自身轴,上面那个例子就是绕自身轴转的,下面给出一个绕固定轴转的欧拉角情况。
可以看到下面每次的旋转都绕黑色实线构成的坐标系转动。
欧拉角与旋转矩阵

1.2内旋和外旋

有了1.1的介绍,知道了欧拉角的表示有两个条件,一个是绕轴顺序,一个是绕的轴是不是固定轴,那么就有了内旋和外旋的概念。

①每次旋转是绕固定轴(一个固定参考系,比如世界坐标系)旋转,称为外旋。
②每次旋转是绕自身旋转之后的轴旋转,称为内旋。

人们对概念的理解很容易,最容易忽视的点就是我们通过欧拉角来进行旋转矩阵的计算的时候,用公式怎么表示这两种旋转方式:
下面我们用公式来表示上面两个图的表示情况:
欧拉角与旋转矩阵
解析:首先旋转顺序是ZYX,其次是绕自身轴旋转的,这种情况就叫做内旋。
注意:内旋是右乘
欧拉角与旋转矩阵
我们按照ZYX的顺序从左到右依次相乘。
欧拉角与旋转矩阵
解析:首先旋转顺序是XYZ,其次是绕固定轴旋转的,这种情况就叫做外。
注意:内旋是左乘
欧拉角与旋转矩阵
我们按照XYZ的顺序从右到左依次相乘。
值得注意的是在旋转相同的角度的情况下不同的旋转顺序得到的姿态是不一样的。这个你可以自己去验证。
但是上面的例子得出来的旋转矩阵是一样的,这说明了绕ZYX顺序的内旋方式和绕XYZ的外旋方式,得到的姿态一样的,也就是他俩等价

1.3 欧拉角的缺点

欧拉角的缺点就是万向锁问题。
欧拉角与旋转矩阵
上方为 ZYX 角定义。下方为 pitch=90 度时,第三次旋转与第一次滚转角相同,使得系统丢失了一个自由度。也就是说第一次旋转和第三次旋转虽说是绕各自不同的轴转动的,但实际上他绕的就是同一个轴。按照欧拉角的思想,只用两个角就可以表示出来啊,就是想让除了绕Z轴之外的两个轴,其中一个先转180°,然后再只调整一个轴就好了。
关于万向锁的理解这里有一篇博客,可以参考一下。

2 欧拉角到旋转矩阵的表示

假设绕XYZ三个轴旋转的角度分别为α , β , γ,则三次旋转的旋转矩阵计算方法如下:
欧拉角与旋转矩阵
把这个套到1.2节的公式中就可以了。

3 值得注意的点

一般情况下,每一个领域有自己默认的欧拉角定义,也就是24种的其中之一。比如经典力学中使用zxz,量子力学使用的是zyz,航空航天使用zyx/zxy。所以在跨行业或者跨模块协作的时候,一定要问清楚对方是哪一种欧拉角。

为什么不同专业选用的欧拉角不同呢?一个是传统,另一重要的原因是不同的转序和不同的轴对应的万向节死锁的位置是不一样的,因此每个专业都想把万向节死锁的位置安排在自己最不常用的位置。但是,无论哪一种欧拉角都是避免不了万向节死锁的。

欧拉角不可以做连续旋转的计算。
假设我们对物体进行一次欧拉角描述的旋转,三个欧拉角分别是(a1,a2,a3),之后我们再进行一次旋转,三个欧拉角描述是(b1,b2,b3),那么我们能否只用一次旋转(使用欧拉角描述(c1,c2,c3))来达到这两次旋转相同的效果呢?事实上这样是非常困难的,我们不能够仅仅使用(a1+b1,a2+b2,a3+b3)来得到这三个角度。一般来说我们会将欧拉角转换成旋转矩阵或者是四元数来进行连续旋转的叠加计算,之后再转换回欧拉角。但是这样做的次数多了可能会引入很大的误差导致旋转结果出错。因此比较好的方案是直接使用旋转矩阵或四元数来计算这类问题。

4. 非常感谢您的阅读!

5 期待您加入

也非常期待您能关注我的微信公众号–“过千帆”,里面不仅有技术文章还有我的读书分享,希望您在那里也有收获。我们一起进步。文章来源地址https://www.toymoban.com/news/detail-408675.html

到了这里,关于欧拉角与旋转矩阵的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【欧拉角,旋转矩阵】

        内在旋转与外在旋转的转换关系:互换第一次和第三次旋转的位置则两者结果相同。例如Z-Y-X旋转的内部旋转和X-Y-Z旋转的外部旋转的旋转矩阵相同。   一、绕定轴X-Y-Z旋转(RPY角)(外旋)  假设两个坐标系A和B,二者初始时完全重合。   过程如下:B绕A的X轴旋转γ角,

    2024年02月13日
    浏览(30)
  • 转换矩阵、平移矩阵、旋转矩阵关系以及python实现旋转矩阵、四元数、欧拉角之间转换

    由于在平时总是或多或少的遇到平移旋转的问题,每次都是现查资料,然后查了忘,忘了继续查,这次弄明白之后干脆写一篇文章,给人方便同时于己方便,后续如有扩充或变动也方便添加。 假设有两个向量 a 1 = ( x 1 , y 1 , z 1 ) a_1 = (x_1, y_1, z_1) a 1 ​ = ( x 1 ​ , y 1 ​ , z 1 ​

    2024年02月03日
    浏览(67)
  • 数学概率 | 旋转矩阵、欧拉角、四元数

    目录 一,旋转矩阵 二维旋转矩阵 三维旋转矩阵 二,欧拉角 三,四元数 四,矩阵、欧拉角、四元数相互转换 四元数转矩阵 矩阵转四元数 欧拉角转矩阵 矩阵转欧拉角 欧拉角转四元数 四元数转欧拉角 二维旋转矩阵 R() =  推导,以二维平面为例旋转:  = cos( + ) = coscos - si

    2024年02月06日
    浏览(37)
  • 欧拉角和旋转矩阵之间的转换

    在3D 空间中,表示物体的旋转可以由三个欧拉角来表示:  pitch围绕X轴旋转,叫俯仰角。  yaw围绕Y轴旋转,叫偏航角。  roll围绕Z轴旋转,叫翻滚角。  这三个角的顺序对旋转结果有影响。     此处得到结论: 自旋转的“先转的放前面”  将旋转矩阵表示如下:    则可以

    2024年02月13日
    浏览(22)
  • eigen旋转矩阵与欧拉角的转换

    2024年02月11日
    浏览(36)
  • 四元数,旋转矩阵,欧拉角互转(python)

    运行代码之前需要安装pyquaternion和scipy。 pip install pyquaternion pip install scipy 代码之前放下面,main函数有使用的方式

    2024年02月12日
    浏览(30)
  • 欧拉角,轴角,四元数与旋转矩阵详解

    入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。 目录 一、欧拉角 1、静态定义 2、欧拉角的表示  3、欧拉角表示的优缺点  4、欧拉角的万向节死锁(静态不存在万向锁的问题) 二、四元数 1、提出意义和定

    2024年01月17日
    浏览(32)
  • 四元数,欧拉角和旋转矩阵相互转换

    打印输出: 在线转换网站:1、三维在线旋转变换网站 https://www.andre-gaschler.com/rotationconverter/ 2、 Rotation Conversion Tool https://danceswithcode.net/engineeringnotes/quaternions/conversion_tool.html 3、角度、弧度在线转换工具 https://www.osgeo.cn/app/sc210 参考链接:https://www.jianshu.com/p/4fda4c34b829 https://

    2024年02月14日
    浏览(30)
  • Unity --- 三维数学 --- 欧拉角与四元数

      1.Transfrom中的Rotation中的x,y,z三个值就是对应着三个方向上的欧拉角 2.注意物体沿Y轴方向旋转时,是沿世界坐标系的Y轴旋转,而不是沿自身的Y轴旋转 3.一个物体三个方向上的欧拉角是用一个Vector3三维向量对象来表示的 --- (x,y,z)分别对应三个方向上的欧拉角 1.接下来开始

    2024年01月15日
    浏览(30)
  • 将欧拉角转换为旋转矩阵(手眼标定)python版本

    1、欧拉角版 2、四元数版 3、旋转矩阵版本 4、齐次矩阵

    2024年02月16日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包