三维矩阵旋转、平移的左乘与右乘分析

三维矩阵旋转、平移的左乘与右乘分析

在矩阵的初等变换中,矩阵的左乘代表着行变换,TA=B。
矩阵的右乘相当于列变换, AT=C。

当三维坐标发生旋转、平移时,就需要考虑到矩阵是左乘还是右乘。
设有旋转矩阵R,平移矩阵T, 坐标矩阵A。

-若是绕着静态的世界坐标系旋转,有RA,即左乘旋转矩阵
- 若是绕着动态的自身坐标系旋转,有A’R’, 即右乘旋转矩阵
- 若是进行平移,则有TA,即左乘平移矩阵, A’T’为右乘平移矩阵

在使用中,我们通常对三维点(云)的旋转与平移进行左乘。
而旋转矩阵在左乘时设逆时针为正。
以下是常用的旋转矩阵。

绕X轴旋转

绕Y轴旋转

绕Z轴旋转

有列向量A=[x,y,z];
则 RA 就是对 A 进行旋转。注意这里 A 是列向量,因为是在对A的每行的元素进行变换。
若要写成右乘形式,则有(RA)’=A’R’,此时R’变为右乘的旋转矩阵,A’为行向量,对A’的每一列元素进行变换。

对于平移有平移矩阵T=

I0 u1  

其中 u 为平移向量(x,y,z); I 为3X3的单位矩阵。
设有 列向量B,则对B进行平移为 TB,左乘形式。
右乘形式为 B’T’

旋转与平移的过程

设有 3x3旋转矩阵R, 平移列向量u,平移矩阵T 为上述表达形式, 坐标列向量A
以下过程用常见的左乘形式
1 先旋转再平移
RA+u = [ R , u ; 0 1]* [A , 1 ]
也可以写成 T*R*A 的形式, A为齐次坐标的形式

2 先平移再旋转
R(A+u)=RA+Ru;
也可以写成 R*T*A

若要将上述过程写成右乘的形式,则要全部进行转置

  • 10
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
要通过变换矩阵计算三维旋转平移,需要分别计算旋转矩阵平移矩阵,然后将它们相乘得到变换矩阵。 1. 三维旋转矩阵 三维旋转矩阵可以通过欧拉角或四元数来计算。这里介绍欧拉角的方法。 欧拉角是三个旋转角度的组合,通常被表示为 (α, β, γ) 或 (φ, θ, ψ)。其中,α、β、γ 分别代表绕 x、y、z 轴旋转的角度,φ、θ、ψ 则代表绕 z、y、x 轴旋转的角度。 绕 x 轴旋转 α 度的旋转矩阵为: | 1 0 0 | | 0 cos(α) -sin(α) | | 0 sin(α) cos(α) | 绕 y 轴旋转 β 度的旋转矩阵为: | cos(β) 0 sin(β) | | 0 1 0 | |-sin(β) 0 cos(β) | 绕 z 轴旋转 γ 度的旋转矩阵为: | cos(γ) -sin(γ) 0 | | sin(γ) cos(γ) 0 | | 0 0 1 | 将三个旋转矩阵相乘,即可得到绕 x、y、z 轴旋转 α、β、γ 度的旋转矩阵: R = R_z(γ) * R_y(β) * R_x(α) 2. 三维平移矩阵 三维平移矩阵可以表示为一个 4x4 的矩阵,其中前三列为单位矩阵,第四列的前三个元素为平移向量的坐标,最后一个元素为 1。 平移向量为 (tx, ty, tz),则平移矩阵为: | 1 0 0 tx | | 0 1 0 ty | | 0 0 1 tz | | 0 0 0 1 | 3. 变换矩阵 通过旋转矩阵平移矩阵相乘,可以得到变换矩阵。 假设旋转矩阵为 R,平移矩阵为 T,则变换矩阵为: M = T * R 其中,平移矩阵边,旋转矩阵边。可以用矩阵乘法的方式计算得到变换矩阵的值。 最终,将变换矩阵应用到三维点或向量上,即可实现三维旋转平移
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值