罗德里格斯公式(旋转矩阵)推导

1. 推导

在这里插入图片描述

r r r为旋转轴, θ \theta θ为旋转角度。
先将旋转轴单位化
u = r ∣ ∣ r ∣ ∣ u=\frac{r}{||r||} u=∣∣r∣∣r
旋转可以被分为垂直和旋转两个方向,
我们求沿轴方向的分量其实就是在求 p p p向量在 u u u方向上的投影。

引用投影矩阵
P = A ( A ⊤ A ) − 1 A ⊤ P u = u ( u ⊤ u ) − 1 u ⊤ u ⊤ u = I P u = u u ⊤ P=A(A^{\top}A)^{-1}A^{\top}\\ P_u=u(u^{\top}u)^{-1}u^{\top}\\ u^{\top}u=I\\ P_u=uu^{\top} P=A(AA)1APu=u(uu)1uuu=IPu=uu
其实也可以直接以向量的方式思考
u ⊤ p = u ∗ p = ∣ ∣ u ∣ ∣   ∣ ∣ p ∣ ∣ cos ⁡ α u^{\top}p =u *p=||u|| \ ||p|| \cos \alpha up=up=∣∣u∣∣ ∣∣p∣∣cosα
还需要除 ∣ ∣ u ∣ ∣ ||u|| ∣∣u∣∣
∣ ∣ u ∣ ∣ = u ⊤ u u ⊤ p u ⊤ u ||u||=u^{\top}u \\ \frac{u^{\top}p}{u^{\top}u} ∣∣u∣∣=uuuuup
最后将值转换为向量
u u ⊤ p u ⊤ u = u u ⊤ p u\frac{u^{\top}p}{u^{\top}u}=uu^{\top}p uuuup=uup
a a a p p p在旋转轴 r r r上的分量
a = p ∥ = u u ⊤ p a=p_{\parallel}=uu^{\top}p a=p=uup
b b b p p p垂直旋转轴 r r r的分量
b = p ⊥ = p − a = p − u u ⊤ p b=p_{\perp}=p-a=p-uu^{\top}p b=p=pa=puup
c = u × p c=u \times p c=u×p,则 ∣ ∣ c ∣ ∣ = ∣ ∣ p ∣ ∣ ||c|| = ||p|| ∣∣c∣∣=∣∣p∣∣

b b b旋转 θ \theta θ后得到 b ′ b' b

b ′ = b cos ⁡ θ + c sin ⁡ θ b ′ = ( p − u u ⊤ p ) cos ⁡ θ + u × p sin ⁡ θ b'=b\cos \theta+c \sin \theta\\ b'=(p-uu^{\top}p) \cos \theta + u\times p \sin \theta b=bcosθ+csinθb=(puup)cosθ+u×psinθ

旋转后的 p ′ p' p
p ′ = a + b ′ = u u ⊤ p + ( p − u u ⊤ p ) cos ⁡ θ + u × p sin ⁡ θ p'=a+b'=uu^{\top}p+(p-uu^{\top}p) \cos \theta + u\times p \sin \theta p=a+b=uup+(puup)cosθ+u×psinθ
合并后得到
p ′ = ( I cos ⁡ θ + ( 1 − cos ⁡ θ ) u u ⊤ + u × sin ⁡ θ ) p p'=(I \cos \theta+(1-\cos \theta)uu^{\top}+u_{\times}\sin \theta)p p=(Icosθ+(1cosθ)uu+u×sinθ)p
其中 u × u_{\times} u×叉乘矩阵
形式为
[ 0 z − y − z 0 x y − x 0 ] \begin{bmatrix} 0 & z & -y \\ -z & 0 & x \\ y & -x & 0 \end{bmatrix} 0zyz0xyx0
所以旋转矩阵为
R = I cos ⁡ θ + ( 1 − cos ⁡ θ ) u u ⊤ + u × sin ⁡ θ R=I\cos \theta+(1-\cos \theta)uu^{\top}+u_{\times} \sin \theta R=Icosθ+(1cosθ)uu+u×sinθ

2. 性质

t r a c e ( R ) = 2 cos ⁡ θ + 1 R − R ⊤ = 2 u × sin ⁡ θ \begin{align} trace(R)=2 \cos \theta+1\\ R-R^{\top}=2u_{\times} \sin \theta \end{align} trace(R)=2cosθ+1RR=2u×sinθ
性质一的证明,所有旋转矩阵都相似,构成一个正交群。
相似矩阵有性质
A = C − 1 B C A=C^{-1}BC A=C1BC
所以所有旋转矩阵有相同的迹。
取其中一个旋转矩阵
[ cos ⁡ θ − sin ⁡ θ 0 sin ⁡ θ cos ⁡ θ 0 0 0 1 ] \begin{bmatrix} \cos \theta & -\sin \theta & 0\\ \sin \theta & \cos \theta &0\\ 0 & 0 & 1 \end{bmatrix} cosθsinθ0sinθcosθ0001
所以
t r ( R ) = 2 cos ⁡ θ + 1 tr(R)=2 \cos \theta+1 tr(R)=2cosθ+1

3. 参考

michigan_state_university
duke
math_stackchange

  • 11
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值