来源:睿慕课《三维点云处理技术和深度学习在三维点云处理中的应用》

刚体运动变换

表示旋转变换的参数形式:旋转矩阵,轴角,欧拉角和四元数。

旋转矩阵推导与性质

三维点云处理技术三:三维空间变换
两个坐标系a和b,坐标系b各个坐标轴b1b2b3b_1、b_2、b_3在坐标系a中的表示为:
b1=R11a1+R21a2+R31a3b_1=R_{11}a_1+R_{21}a_2+R_{31}a_3
b2=R12a1+R22a2+R32a3b_2=R_{12}a_1+R_{22}a_2+R_{32}a_3
b3=R13a1+R23a2+R33a3b_3=R_{13}a_1+R_{23}a_2+R_{33}a_3
旋转矩阵RBAR_B^A
RBA=[b1,b2,b3]=[R11R12R13R21R22R23R31R32R33]R_B^A=[b_1,b_2,b_3]=\begin{bmatrix} R_{11} & R_{12} & R_{13} \\ R_{21} & R_{22} & R_{23} \\ R_{31} & R_{32} & R_{33} \end{bmatrix}
同一点P,在b坐标系下的表示为PB(Pb1,Pb2,Pb3)TP_B(P_{b1},P_{b2},P_{b3})^T,在a系下的表示为PA(Pa1,Pa2,Pa3)TP_A(P_{a1},P_{a2},P_{a3})^T,根据坐标的定义有:
PA=Pb1b1+Pb2b2+Pb3b3=RBAPBP_{A} = P_{b1}b_1 + P_{b2}b_2 +P_{b3}b_3=R_B^AP_B
总结: RBABABABA旋转矩阵R_B^A每一列代表B坐标系的坐标轴在A系中的表示,也表示B坐标系在A系中的旋转,同时该旋转矩阵能将B系的坐标点转换到A系
旋转矩阵的性质:
1,正交性
2,乘法封闭
3,旋转矩阵的逆也是旋转矩阵
4,RRT=IRR^T=I

坐标系旋转

1,绕z轴旋转ψ\psi角:
Rz,ψ=[cos(ψ)sin(ψ)0sin(ψ)cos(ψ)0001]R_{z,\psi}=\begin{bmatrix} \cos (\psi) & -\sin (\psi) & 0 \\ \sin (\psi) & \cos(\psi) & 0 \\ 0& 0& 1\end{bmatrix}
三维点云处理技术三:三维空间变换
Rz,ψR_{z,\psi} 可以将变换后坐标系(图中蓝色)中的点转换到原来坐标系(图中红色)中。
2,绕y轴旋转θ\theta角:
Ry,θ=[cos(θ)0sin(θ)010sin(θ)0cos(θ)]R_{y,\theta}=\begin{bmatrix} \cos (\theta) & 0 & \sin (\theta) \\ 0 & 1 & 0 \\ -\sin (\theta)& 0& \cos (\theta) \end{bmatrix}
三维点云处理技术三:三维空间变换
3,绕x旋转ϕ\phi角度
Rx,ϕ=[1000cos(ϕ)sin(ϕ)0sin(ϕ)cos(θ)]R_{x,\phi}=\begin{bmatrix} 1 & 0 & 0\\ 0 & \cos (\phi) & -\sin (\phi) \\ 0& \sin (\phi)& \cos (\theta) \end{bmatrix}
三维点云处理技术三:三维空间变换
4,符合旋转:右乘联体左乘基(联体是指旋转后的坐标系,基是指开始时候的固定坐标系)
三维点云处理技术三:三维空间变换
5,向量旋转:
三维点云处理技术三:三维空间变换
总结:旋转矩阵可以表示将A系中的向量、点旋转到新的位置,也可以表示从A系到B系的旋转,还可以将B系的坐标点转换到A系下。
6,齐次变换:
PA=RBAPB+OBAP_A=R_B^AP_B+O_B^A
齐次形式[PA1]=TBAPB=[RBAOBA01]\begin{bmatrix} P_A\\1\end{bmatrix}=T_B^AP_B=\begin{bmatrix} R_B^A&O_B^A\\0&1\end{bmatrix}
三维点云处理技术三:三维空间变换

欧拉角

欧拉角:任何旋转都可以用3个线性无关轴的连续旋转来描述。
三维点云处理技术三:三维空间变换
欧拉角存在的奇异值-万向节死锁

旋转矩阵的轴角

可以将任何一个旋转视为绕某一旋转轴旋转一定的角度
三维点云处理技术三:三维空间变换

四元数

为了避免万向节死锁问题,工程师发明了四元数来表示旋转
四元数定义:q=[a,b,c,d]=[cosθ2,rsinθ2]q=[a,b,c,d]=[\cos \frac{\theta}{2},r\sin \frac {\theta}{2}],a为实部,b,c,d为虚部。
rθr、\theta分别表示旋转轴和旋转角度
共轭:qˉ=[cosθ2,rsinθ2]\bar{q}=[\cos \frac{\theta}{2},-r\sin \frac {\theta}{2}]
模:q=a2+b2+c2+d2=1||q||=\sqrt{a^2+b^2+c^2+d^2}=1
逆:q1=qˉqq^{-1}=\frac {\bar q}{||q||}
乘法:
三维点云处理技术三:三维空间变换
用四元数对向量进行旋转:
p=[x,y,z]T,pa=[0,x,y,z]Tp=[x,y,z]^T,p_a=[0,x,y,z]^T
p=Rp=qpaq1p^{'}=Rp=q*p_a*q^{-1}
四元数与旋转矩阵:
三维点云处理技术三:三维空间变换

刚体运动变换总结:

三维点云处理技术三:三维空间变换

空间几何变换

消失点
二维空间几何变换:
三维点云处理技术三:三维空间变换
三维空间几何变换:
三维点云处理技术三:三维空间变换

相关文章: