刚体在三维空间的旋转(关于旋转矩阵、DCM、旋转向量、四元数、欧拉角)

本文介绍了三维空间旋转的各种表示方法,包括欧拉角、旋转矩阵、四元数和旋转向量。讨论了欧拉角的顺序影响、旋转矩阵的计算以及四元数在旋转运算上的优势。还提到了陀螺仪在计算机视觉中的应用。
摘要由CSDN通过智能技术生成

最近学习了一些关于三维空间旋转相关的知识,借此梳理一下备忘。


三维空间的旋转(3D Rotation)是一个很神奇的东东:如果对某个刚体在三维空间进行任意次的旋转,只要旋转中心保持不变,无论多少次的旋转都可以用绕三维空间中某一个轴的一次旋转来表示。表示三维空间的旋转有多种互相等价的方式,常见的有旋转矩阵、DCM、旋转向量、四元数、欧拉角等。本篇文章主要梳理一下这些表示方式及相互转换的方法。


1. 欧拉角(Euler Angle)

最直观的表示方式是绕刚体自身的X、Y、Z三个轴分别进行旋转某个角度,这就是所谓的欧拉角(Euler Angle)表示方式。

Euler Angle


需要注意的是,欧拉角的表示方式里,yaw、pitch、roll的顺序对旋转的结果是有影响的。给定一组欧拉角角度值,比如yaw=45度,pitch=30度,roll=60度,按照yaw-pitch-roll的顺序旋转和按照yaw-roll-pitch的顺序旋转,最终刚体的朝向是不同的!换言之,若刚体需要按照两种不同的旋转顺序旋转到相同的朝向,所需要的欧拉角角度值则是不同的!


另外需要注意的是,在欧拉角的表示方式里,三个旋转轴一般是随着刚体在运动,即wikipedia中所谓的intrinsic rotation,见下图动画所示(图来自wikipedia)。相对应的另一种表示方式是,三个旋转轴是固定的,不随刚体旋转而旋转,即extrinsic rotation,这种表示方式在计算机视觉中不是很常用。



欧拉角的表示方式比较直观,但是有几个缺点:

(1) 欧拉角的表示方式不唯一。给定某个起始朝向和目标朝向,即使给定yaw、pitch、roll的顺序,也可以通过不同的yaw/pitch/roll的角度组合来表示所需的旋转。比如,同样的yaw-pitch-roll顺序,(0,90,0)和(90,90,90)会将刚体转到相同的位置。这其实主要是由于

刚体运动中,我们可以使用旋转矩阵旋转向量和平移矩阵来描述坐标变换。旋转矩阵是一个3x3的正交矩阵,用来表示旋转的方向和角度。然而,旋转矩阵有一些缺点,比如冗余和约束条件。为了更紧凑地描述旋转,我们可以使用旋转向量,它只需要一个三维向量来表示旋转的轴和角度。旋转向量旋转矩阵之间可以通过罗德里格斯公式进行转换。平移矩阵用来描述坐标系的平移变换。在刚体运动中,坐标系的平移变换和旋转变换是相互独立的。因此,我们可以使用旋转矩阵和平移矩阵来描述刚体的运动。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [刚体运动中的坐标变换-旋转矩阵旋转向量欧拉角四元数](https://blog.csdn.net/hu_hao/article/details/117197727)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [三维空间坐标系变换-旋转矩阵](https://blog.csdn.net/baobei0112/article/details/114065256)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值