推导齐次变换矩阵

导齐次变换矩阵,包含旋转矩阵和平移矩阵。

齐次坐标

齐次坐标(到现在我才知道我对这个玩意儿了解太少了,以后要看文章总结)有一个特点:

If the homogeneous coordinates of a point are multiplied by a non-zero scalar then the resulting coordinates represent the same point. Since homogeneous coordinates are also given to points at infinity, the number of coordinates required to allow this extension is one more than the dimension of the projective space being considered. For example, two homogeneous coordinates are required to specify a point on the projective line and three homogeneous coordinates are required to specify a point in the projective plane.

求解齐次矩阵,那么一个重要的点就是增加一个维度,这个维度仅作为辅助计算的参考。

推导

已知条件

从{A}系到{B}系进行变换,那么有以下方程:

旋转变换与平移变换: $$ \begin{equation} ^AP=^AR_B{^BP}+^AP_{BORG} \end{equation}\label{eq1} $$

统一后的变换: $$ \begin{equation} ^AP=^AT_B{^BP} \end{equation}\label{eq2} $$

要证明变换矩阵为: $$ \begin{equation} \begin{aligned} ^AP= \left[ \begin{matrix} ^AR_B & ^AP_{BORG} \\
0,0,0 & 1 \end{matrix} \right] \end{aligned} \end{equation} \label{eq3} $$

要先令: $$ \begin{equation} \begin{aligned} ^AP= \left[ \begin{matrix} A_x\\
A_y\\
A_z\\
1 \end{matrix} \right] \end{aligned} \end{equation} $$

$$ \begin{equation} \begin{aligned} ^BP= \left[ \begin{matrix} B_x\\
B_y\\
B_z\\
1 \end{matrix} \right] \end{aligned} \end{equation} $$

那么 $$ \begin{equation} \begin{aligned} &\left[ \begin{matrix} [^AR_B] & [^AP_{BORG}] \\
0,0,0 & 1 \end{matrix} \right] \left[ \begin{matrix} B_x\\
B_y\\
B_z\\
1 \end{matrix} \right] \\
&= [^AR_{B_1}]\cdot{^BP}+[^AR_{B_2}]\cdot{^BP}+[^AR_{B_3}]\cdot{^BP}\\
&+[^AP_{BORG_1}]\cdot{1}+[^AP_{BORG_1}]\cdot{2}+[^AP_{BORG_3}]\cdot{1}\\
&= ^AR_B{^BP}+^AP_{BORG}+1\\
&= \left[ \begin{matrix} A_x\\
A_y\\
A_z\\
1 \end{matrix} \right]\\
&= {^AP} \end{aligned} \end{equation} $$

当然,$^AP$扩展的维度也只是一个辅助量,无实际意义,所以1在三维写法中要删去,得证。

first commit
加载评论
点击刷新