通俗理解齐次变换矩阵复合变换的时候变换顺序不可逆——上
这个很多人都会直接说:“就是不可逆啊,你拿两个矩阵乘以下,在换个顺序乘以下,它们的结果就是不一样的。”是啊,但是为什么它们的结果是不一样的呢?小虎曾经在机器人学课堂上问过老师,老师含糊其词,想拿上面那句话唬我狂小虎,说这是线性代数的知识,但是小虎上的线性代数课也只给出“矩阵和矩阵相乘不满足乘法交换律(cummutative property)”的结论。
齐次变换矩阵复合变换不可逆分析
先给出结论:
对于在相对坐标系下的固定点P,当相对坐标系相对于固定/绝对坐标系作同一运动的时候,如果该运动所处的顺序不同,那么P点相对于固定/绝对坐标系的运动效果是不一样的,而我们观察的往往是物体(比如这个点)相对于固定/绝对坐标系的运动。
拿一个题目作为例子好啦。
固连在坐标系(𝑛,𝑜,𝑎)上的点P(7,3,2)T 经历如下变换,求出变换后该点相对于固定参考坐标系的坐标。
当绕y轴旋转90°处在第(2)步时
(1)绕z轴旋转90°;
(2)接着绕y轴旋转90°;
(3)接着再平移[4,-3,7];
我就拿例子中绕y轴旋转90°这个运动来说明。
第一个步骤结束后,P坐标为
P
(
−
3
,
7
,
2
)
P(-3,7,2)
P(−3,7,2)
(1)结束后,我们来看看P在绝对坐标系中的位置:
P
n
o
a
′
′
=
[
0
0
1
0
0
1
0
0
−
1
0
0
0
0
0
0
1
]
×
[
−
3
7
2
1
]
=
[
2
7
3
1
]
\pmb{P_{noa}''}=\begin{bmatrix} 0 & 0 & 1& 0\\ 0 & 1 & 0& 0\\ -1 & 0 & 0 & 0\\ 0 & 0 & 0 & 1 \\ \end{bmatrix}\times \begin{bmatrix} -3\\ 7\\ 2 \\ 1\\ \end{bmatrix}=\begin{bmatrix} 2\\ 7\\ 3\\ 1\\ \end{bmatrix}
Pnoa′′Pnoa′′Pnoa′′=⎣⎢⎢⎡00−10010010000001⎦⎥⎥⎤×⎣⎢⎢⎡−3721⎦⎥⎥⎤=⎣⎢⎢⎡2731⎦⎥⎥⎤
P
′
(
2
,
7
,
3
)
P'(2,7,3)
P′(2,7,3)
两个步骤中P的相对位置变换为
Δ
1
=
(
2
,
7
,
3
)
−
(
−
3
,
7
,
2
)
=
(
5
,
0
,
1
)
\Delta_1= (2,7,3)-(-3,7,2)=(5,0,1)
Δ1=(2,7,3)−(−3,7,2)=(5,0,1)
当绕y轴旋转90°处在第(3)步时
倒转一下(2)和(3)的顺序
(1)绕z轴旋转90°;
(2)接着再平移[4,-3,7];
(3)接着绕y轴旋转90°;
(2)结束后,P在绝对坐标系中坐标如下(计算过程略)
P
(
1
,
4
,
9
)
P(1,4,9)
P(1,4,9)
(3)结束后,我们来看看P在绝对坐标系中的位置:
P
n
o
a
′
′
′
=
[
0
0
1
0
0
1
0
0
−
1
0
0
0
0
0
0
1
]
×
[
1
4
9
1
]
=
[
9
4
−
1
1
]
\pmb{P_{noa}'''}=\begin{bmatrix} 0 & 0 & 1& 0\\ 0 & 1 & 0& 0\\ -1 & 0 & 0 & 0\\ 0 & 0 & 0 & 1 \\ \end{bmatrix}\times \begin{bmatrix} 1\\ 4\\ 9 \\ 1\\ \end{bmatrix}=\begin{bmatrix} 9\\ 4\\ -1\\ 1\\ \end{bmatrix}
Pnoa′′′Pnoa′′′Pnoa′′′=⎣⎢⎢⎡00−10010010000001⎦⎥⎥⎤×⎣⎢⎢⎡1491⎦⎥⎥⎤=⎣⎢⎢⎡94−11⎦⎥⎥⎤
P
(
9
,
4
,
−
1
)
P(9,4,-1)
P(9,4,−1)
两个步骤中P的相对位置变换为
Δ
2
=
(
9
,
4
,
−
1
)
−
(
1
,
4
,
9
)
=
(
8
,
0
,
−
10
)
\Delta_2= (9,4,-1)-(1,4,9)=(8,0,-10)
Δ2=(9,4,−1)−(1,4,9)=(8,0,−10)
可以看到
Δ
1
≠
Δ
2
\Delta_1\neq \Delta_2
Δ1=Δ2,可以推测再平移[4,-3,7] 步骤的
Δ
3
\Delta_3
Δ3和
Δ
4
\Delta_4
Δ4也是不一样的,而且正是由于
Δ
1
+
Δ
3
≠
Δ
2
+
Δ
4
\Delta_1+\Delta_3\neq \Delta_2+\Delta_4
Δ1+Δ3=Δ2+Δ4,最终交换顺序才导致结果不同。也就是P在不同顺序下进行接着绕y轴旋转90°相对于绝对坐标系位移是不一样的,对于再平移[4,-3,7]这个移动也是如此。
P可以时相对坐标系上的任意一点,特殊地,当P初始坐标为
(
0
,
0
,
0
)
(0,0,0)
(0,0,0)时,P就是相对坐标系的坐标原点,结果也是类似的。
说明
为防止文章过长乏味,将此博客为上下两篇。通俗理解就上篇足够,下篇是对这篇例题的常规求解和线性代数解释。
通俗理解齐次变换矩阵复合变换的时候变换顺序不可逆——上
通俗理解齐次变换矩阵复合变换的时候变换顺序不可逆——下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)