三维变换矩阵左乘和右乘分析

我在前面博客中提到,当三维坐标点发生旋转时,如果采用矩阵运算就会需要考虑“左乘”和“右乘”。若绕静坐标系(世界坐标系)旋转,则左乘,也是变换矩阵*坐标矩阵;若是绕动坐标系旋转(自身建立一个坐标系),则右乘,也就是坐标矩阵*变换矩阵

但现实中,我们只是对一个图像、点云进行旋转,则均是左乘实现

举例
对坐标点进行三维绕z轴逆时针旋转60度
如果以逆时针旋转为正,则 左乘
T_Unclockwise = 
          cos(60°)      -sin(60°)                 0
          sin(60°)         cos(60°)                0
                     0                                         1.0000
 
= [10;20;30]
 
如果以顺时针旋转为正,则 左乘
T_Clockwise =
          cos(-60°)      sin(-60°)                   0
        -sin(-60°)        cos(-60°)                 0
                            0                     0                   1.0000
注意上述旋转 矩阵正负号不同,有些书上坐标变换是右乘,其实质是 A'*inv(T_Unclockwise (60°)),还是逆时针为正,这里不建议写成右乘
 
T_Clockwise(-60°)  *A =  T_Unclockwise (60°)  *A  %%逆时针旋转60度
 
  ans =
     -12.3200
        1.3400
      30.0000
 
T_Clockwise(60°) inv(T_Unclockwise (60°)),互逆的,仅限旋转 矩阵,加入平移和缩放参数后的变换 矩阵不适用。
 
二维也是如上所述!!
二维逆时针为正
T_Unclockwise =
      cos()      -sin()
     sin()        cos() 
 
二维顺时针为正 
T_Clockwise =
      cos()      sin()
     -sin()        cos() 

建议取逆时针方向正(符号右手定则,与其它理论一致),如果遇到中心不在原点处,则先将方程移至原点,再进行旋转,然后移回原中心。右乘用于不同坐标系的变换,如串联机器人,DH模型。
  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值