机器人-轨迹规划

旋转矩阵

旋转矩阵--R--一个3*3的矩阵,其每列的值时B坐标系在A坐标系上的投影值。

代表B坐标系相对于A坐标系的姿态。

旋转矩阵的转置矩阵

其实A相对于B的旋转矩阵就相当于把B的列放到行上就行。

视频

(将矩阵的行列互换得到的新矩阵称为转置矩阵。)

所以说B相对于A的旋转矩阵就是A相对于B的旋转矩阵的转置矩阵,反过来也一样。

旋转矩阵和逆矩阵

下面的推导是相对于单位向量的。

一个向量旋转一定角度之后的新的向量值怎么计算

旋转矩阵的用途

多步骤旋转的旋转矩阵

每一次的旋转的旋转矩阵相乘起来得到的就是最终的旋转矩阵;

移动和转动的先后顺序

移动的先后顺序可以互换,比如先x轴移动3,再y轴移动5,或者先y轴移动5,再x轴移动3,结果都一样。

转动的先后顺序不可以互换。

欧拉角:

固定角和欧拉角建立的旋转矩阵

固定角--相对基轴转

后转的先乘

(矩阵乘法一般不满足交换律)

原因是:

由旋转矩阵推算各个旋转角

欧拉角--相对自己的轴转

先转的先乘

(矩阵乘法一般不满足交换律)

原因:

因为旋转不可以交换先后顺序,而新的向量p(B)只有先乘R3,再R2,再R1才能回到p(A)。

由旋转矩阵推算各个旋转角

欧拉角和固定角实现的旋转矩阵关系

也就是固定角先转后乘所得的结果和欧拉角后转先乘所得的结果一致。

反正这两方法都是实现旋转矩阵的方法,得到的结果肯定要一致。

也就是无论哪种方式实现的姿态的变动,最终都会得到一个相同的姿态。

固定角的12中实现方式和欧拉角的12中实现方式

都可以实现同一种姿态。

为什么每一种有12种

第一次:可以任意旋转一个轴转动--有3种选择方式;

第二次:不能和上一次选择一样的轴--有2种选择方式;

第三次:不能和上一次选择一样的轴--有2种选择方式;

所以:3*2*2=12种;

为什么不能选择同一个轴,因为同一个轴实现相同的转动,没必要选择两次。

位姿

位置+姿态=位姿;

变换矩阵--transformation matrix

T=R和B原点到A的位置组成的四维矩阵

注意四维矩阵是旋转矩阵和B源端坐标系相对于A坐标系的位置组成的。

怎么利用位置向量和旋转矩阵描述物体的位姿?

只有移动

则旋转矩阵为单位矩阵;

只有旋转

三个值全0;

B到A坐标系中间经过多个坐标系

连续的移动和转动。

先移动再旋转和先旋转再移动

我们之前所有描述的都是先旋转再移动的清情况。

刚体本身的位置向量是相对于本身的坐标系B,而移动则是表示自己本身坐标系源端相对于世界坐标系A的位置向量。

变换矩阵的逆矩阵

视频

变换矩阵用固定角和欧拉角实现

相关推荐
Pluchon7 小时前
硅基计划4.0 简单模拟实现AVL树&红黑树
java·数据结构·算法
生锈的键盘7 小时前
推荐算法实践:交叉特征的理解
算法
乌萨奇也要立志学C++8 小时前
【洛谷】BFS 求解最短路:从马的遍历到迷宫问题的实战解析
算法·宽度优先
老鼠只爱大米8 小时前
LeetCode经典算法面试题 #46:全排列(回溯、交换、剪枝等五种实现方案详细解析)
算法·leetcode·剪枝·回溯·全排列·stj算法
Dovis(誓平步青云)8 小时前
《滑动窗口算法:从 “暴力遍历” 到 “线性高效” 的思维跃迁》
运维·服务器·数据库·算法
_OP_CHEN8 小时前
【算法基础篇】(五十七)线性代数之矩阵乘法从入门到实战:手撕模板 + 真题详解
线性代数·算法·矩阵·蓝桥杯·c/c++·矩阵乘法·acm/icpc
天天爱吃肉82188 小时前
【跨界封神|周杰伦×王传福(陶晶莹主持):音乐创作与新能源NVH测试,底层逻辑竟完全同源!(新人必看入行指南)】
python·嵌入式硬件·算法·汽车
im_AMBER8 小时前
Leetcode 114 链表中的下一个更大节点 | 删除排序链表中的重复元素 II
算法·leetcode
xhbaitxl9 小时前
算法学习day38-动态规划
学习·算法·动态规划
多恩Stone9 小时前
【3D AICG 系列-6】OmniPart 训练流程梳理
人工智能·pytorch·算法·3d·aigc