三维刚体运动

点和向量,坐标系

首先说说向量是什么,它是线性空间的一个元素,可以想象从原点指向某处的一个箭头,不要把向量坐标混淆。谈论向量 a \vec a 在一个线性基( e 1 , e 2 , e 3 \vec e_1,\vec e_2,\vec e_3 )的坐标
(1) a = [ e 1 e 2 e 3 ] [ a 1 a 2 a 3 ] \vec a = \left[ \begin{matrix} \vec e_1 & \vec e_2 &\vec e_3 \\ \end{matrix} \right] \left[ \begin{matrix} a_1 \\ a_2 \\ a_3 \\ \tag{1}\end{matrix} \right]
向量的点乘(内积)可以描述成向量间的投影关系,对于 a , b R 3 \vec a,\vec b \in \vec R^3 ,
(2) a b = i = 1 3 a i b i = a b c o s < a , b > \vec a \cdot \vec b = \sum_{i=1}^3{a_i b_i} = |\vec a||\vec b|cos< \vec a , \vec b> \tag{2}
向量的叉乘(外积)
(3) a × b = [ i j k a 1 a 2 a 3 b 1 b 2 b 3 ] = [ a 2 b 3 a 3 b 2 a 3 b 1 a 1 b 3 a 1 b 2 a 2 b 1 ] = [ 0 a 3 a 2 a 3 0 a 1 a 2 a 1 0 ] b = a v b \vec a \times \vec b = \left[ \begin{matrix} \vec i & \vec j &\vec k \\ a_1 & a_2 &a_3 \\ b_1 & b_2 &b_3 \\ \end{matrix} \right] =\left[ \begin{matrix} a_2b_3-a_3b_2 \\ a_3b_1-a_1b_3 \\ a_1b_2-a_2b_1 \\ \end{matrix} \right] = \left[ \begin{matrix} 0 & -a_3 &a_2 \\ a_3 & 0 &-a_1 \\ -a_2 & a_1 &0 \\ \end{matrix} \right] \vec b =\vec a^v \cdot \vec b\tag{3}
| a × b \vec a× \vec b |在数值上等于由 a \vec a b \vec b 构成的平行四边形的面积 a b s i n < a , b > |\vec a||\vec b|sin< \vec a , \vec b> ,方向垂直于这两个向量。
(3)式中最后的等号是近似的,我们把 a v \vec a^v 当成 a \vec a 生成的一个反对称矩阵,这样就把向量的叉乘变成矩阵与向量的乘积,把运算变成了线性运算

坐标系的欧式变化

在欧式变化中,除了旋转还有平移。考虑到世界坐标系中的向量 a \vec a ,经过一次选择(R)和一次平移 t \vec t ,得到了 a \vec a' ,有:
a = R a + t \vec a' = R \vec a + \vec t
我们定义两个坐标系:世界坐标系相机坐标系,在该定义下,设某个点再世界坐标系中的坐标为 p w \vec p_w ,在相机坐标系下为 p c \vec p_c ,那么:
p c = T c w p w \vec p_c= T_{cw} \vec p_w
这里 T c w T_{cw} 表示世界坐标系到相机坐标系的变换。或者反过来的 T w c T_{wc} :
p w = T w c p c = T w c 1 p c \vec p_w= T_{wc} \vec p_c = T_{wc}^{-1} \vec p_c
如果把 p c \vec p_c 取成零向量,也就是相机坐标系的原点,那么 p w \vec p_w 就是相机原点在世界坐标系下的坐标:
p w = T w c 0 = t w c \vec p_w= T_{wc} \vec 0 = \vec t_{wc}
我们发现这就是 T w c T_{wc} 的平移部分。
note T w c T_{wc} 表示相机坐标系到世界坐标系的变换。旋转部分遵循相机到世界的旋转,平移部分则是相机在世界坐标系下的坐标

四元数

假设某个旋转是绕单位向量 n = [ n x , n y , n z ] T \vec n=[n_x,n_y,n_z]^T 进行角度 θ \theta 的旋转,那么这个旋转的四元数形式就是
q = [ c o s θ 2 , n x s i n θ 2 , n y s i n θ 2 , n z s i n θ 2 ] T \vec q = [cos\frac{\theta}{2},n_xsin\frac{\theta}{2},n_ysin\frac{\theta}{2},n_zsin\frac{\theta}{2}]^T

猜你喜欢

转载自blog.csdn.net/muyilove/article/details/89001379