百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

坐标变换(4)—旋转矩阵

moboyou 2025-04-23 14:15 54 浏览

1. 群

群()是一种集合加上一种运算的代数结构。我们把集合记作,运算记作, 那么群可以记作。群要求这个运算满足以下几个条件:

  1. 封闭性: .
  2. 结合律: .
  3. 幺元:
  4. 逆:

2. special orthogonal group

定义参考坐标系(fix frame)为,定义body frame为在fixed frame下经过一定的旋转,对应的旋转矩阵为

坐标系的三个坐标轴,即基,,同时,满足以下条件,

  1. 单位向量

  1. 正交 ,即

上面两个性质可以写成矩阵的形式,

此外,坐标系的三个坐标轴还需要遵守右手坐标系,例如,其中×表示叉乘。 在线性代数上有如下的一个公式,当我们知道一个矩阵的三列为时,我们可以求得矩阵的行列式值为,

所以,我们可以得到,

至此,我们推导出了旋转矩阵满足的两个条件。在数学上,将满足上述两个条件的的矩阵统称为special orthogonal group ,即3维的特殊正交群,容易验证符合群的封结幺逆的性质,此外对于任意的3维列向量具有相同的长度(2范数)。

3. 旋转矩阵的使用

  1. 描述一个坐标系
  2. 改变向量或者坐标系的参考坐标系
  3. 旋转一个坐标系或者向量

3.1 描述坐标系

第一种情况下,旋转矩阵的三列分别对应坐标系的三个坐标轴,即基,

考虑以上三个坐标系,其对应的描述为,

而空间中的同一点,在三个坐标系中的描述分别为,

3.2 改变参考坐标系

假设旋转矩阵,描述了相对于的旋转,描述了相对于的旋转,则相对于的旋转,

向量坐标系的向量为,则在坐标系下为,

3.3 旋转一个坐标系或者向量

在坐标系下旋转一个向量(同一坐标系下),会产生另外一个向量

而对一个坐标系乘以一个旋转矩阵,则有不同的意义,分为左乘右乘,下面分别介绍,其中参考坐标系为,body frame为绕轴转90度生成表示下的描述,仅表示某一旋转矩阵(绕着转30度),下面借助matlab来进行可视化,

3.3.1 左乘

R_sb = rotz(90)
R = rotx(30)
R_1 =  R * R_sb 
tranimate(R_1)

R_sb =

     0    -1     0
     1     0     0
     0     0     1
     
R =

    1.0000         0         0
         0    0.8660   -0.5000
         0    0.5000    0.8660
R_1 =

         0   -1.0000         0
    0.8660         0   -0.5000
    0.5000         0    0.8660

最终结果,

由上面两图可以看到,左乘,是顺着原来中的轴旋转了30度。因此左乘,是在坐标系下的描述。

3.3.2 右乘

R_sb = rotz(90)
R = rotx(30)
R_1 =  R_sb * R 
tranimate(R_1)

R_sb =

     0    -1     0
     1     0     0
     0     0     1
R =

    1.0000         0         0
         0    0.8660   -0.5000
         0    0.5000    0.8660
R_1 =

         0   -0.8660    0.5000
    1.0000         0         0
         0    0.5000    0.8660

最终结果,

由上面两图可以看到,右乘,是顺着中的轴旋转了30度。右乘,是在坐标系下描述。 其实关于左乘和右乘,在前面的文章中介绍过旋转矩阵的列向量是中的描述,右乘相当于,

此时,矩阵的乘积的每一列都是所对应基的线性组合,所以此时的意义肯定是在坐标系下描述。 同理,前面文章提到过,旋转矩阵的行向量是中的描述,此时是参考坐标系,

此时,矩阵的乘积的每一行都是所对应基的线性组合,所以此时的意义肯定是在坐标系下描述。

相关推荐

Excel批量生成随机人名_excel批量生成随机数

之前的文章讲过怎么用在Excel生成随机银行名字。今天继续给大家分享下怎么在Excel生成随机人名。随机数据工具包书接上回,本文对之前的随机数据生成工具包进行封装调用,生成的结果直接写入到Excel表...

一学就会:Excel MOD函数,让数字周期循环变得easy

今日推荐:MOD函数。目的:根据当前日期在年内的周数对5个小组取余,再根据余数的值获取对应的值班小组。MOD函数也可以作为获取随机数的一种,只不过这种随机数是有一定规律的。【函数介绍】MOD——返回两...

1条公式,自动随机分配座位,你会么?

随机座位困局、老办法效率低、新公式能否破局?.上周学校开会说要给教室换排座位,教务处老师愁得头发都快白了。以前都是靠老师自己写名单再划拉划分组,现在新教室三列座位,学生又多,折腾了三天都没摆顺当。听说...

excel快速制作姓名随机分配表_姓名随机分组

快速制作随机分配表。当需要把这一列的姓名进行随机分组应该怎么操作?是不是还在一行一行的去复制粘贴,这样效率是非常慢的。怎么快速的制作一个随机的分组?·首先在第一组输入等于第一个姓名的A2单元格,双击填...

Excel里实现随机分组案例:导入名单随机分组

大家好呀,今天来给大家分享如何快速在Excel里实现随机分组。如下图所示,有15个人,现在要随机分成3组,每组5个人。只要简单两步,就能完成分组。第一步:为每个人设置一个随机数并编序号C列输入公式=R...

办公必备的15个Excel技巧,绝对的硬核干货,收藏备用

Excel的灵魂在于数据的分析与统计,而分析与统计就离不开函数或公式,今天要给大家分享的15个函数公式,是工作中常用的,可以直接套用。一、从身份证号码中提取出生年月。函数1:Tex...

Excel如何将某单元格区域数据随机排序

如下图是某公司人员名单,现在想要对这些员工进行随机分组。即对单元格区域内数据进行随机排序。选中B2:E10单元格区域点击下图选项(Excel工具箱,百度它即可了解详细的下载安装方法,本文这里就不做具体...

一键生成随机口算题,Excel工具妙用

小学生每天都要做口算,今天我给大家分享一下如何用excel来自制小学生的口算题。看我这里已经做好了,它的公式是这样,然后往下去拉,想要多少要多少,而且每一道题都是随机的。而且这一个表做好了之后,只要让...

Excel秒变抽签神器!1分钟搞定随机点名/抽奖

还在为年会抽奖、课堂点名、分组任务抓狂?别求人写代码啦!Excel自带隐藏大招1分钟设置,永久使用,按个键就能开抽超简单3步设置(有手就会版)1随机号生成在姓名表旁新建「随机号」列输入=RAND...

基础函数20例,案例解读,再不掌握就真的Out了

Excel中的函数是Excel的一个重要工具,如果你不及时掌握,对于Excel的应用、工作效率等会受到很大的影响,今天,小编给大家分享20个Excel的基础函数,对大家肯定很有帮助。练习文件在文末领取...

怎么利用Excel实现随机取样_excel随机取数据

今天跟大家分享一下Excel如何随机抽样1.打开Excel软件2.选中要抽取数据的单元格区域3.点击下图选项(Excel工具箱,百度即可了解详细下载安装信息,本文这里就不做详细解说。)4.点击【统计与...

1分钟学会Excel总表更新,分表实时同步,再也不用熬夜了!

你是不是还在用筛选→复制→粘贴的老方法拆分Excel数据?每次按类别整理报表都要折腾半小时?别傻了!今天教你用FILTER函数一键搞定,数据更新还能自动同步!第一步:准备工作表新建3个工作表,分...

excel计算几个数范围,excel怎么计算一个范围的个数

excel怎么计算某些范围的数的个数,需要计算0-5,5-10,10-15,……1000的...比如这些数字在A列,从B1至B10求10个范围的数量。在B1输入:=countif(a:a,=10)在B...

让Excel随机排序_excel如何设置随机排序

随机排序如下图,希望对A列的应聘人员随机安排面试顺序。先将标题复制到右侧的空白单元格内,然后在第一个标题下方输入公式:=SORTBY(A2:B11,RANDARRAY(10),1)RANDARRAY的...

对人员进行随机分组,分步骤详细解释,看了就学会了

大家好,我是套路EXCEL!如上图,需要将12个人随机分成3组,每组4人。函数公式如下:=ROUNDUP(CHOOSECOLS(SORT(HSTACK(ROW(1:12),RANDARRAY(12...