An arbitrary rigid transformation in $\mathbf{SE}(3)$ can be separated into two parts, namely, a translation and a rigid rotation. This technical report reviews, under a unifying viewpoint, three common alternatives to representing the rotation part: sets of three (yaw-pitch-roll) Euler angles, orthogonal rotation matrices from $\mathbf{SO}(3)$ and quaternions. It will be described: (i) the equivalence between these representations and the formulas for transforming one to each other (in all cases considering the translational and rotational parts as a whole), (ii) how to compose poses with poses and poses with points in each representation and (iii) how the uncertainty of the poses (when modeled as Gaussian distributions) is affected by these transformations and compositions. Some brief notes are also given about the Jacobians required to implement least-squares optimization on manifolds, an very promising approach in recent engineering literature. The text reflects which MRPT C++ library functions implement each of the described algorithms. All formulas and their implementation have been thoroughly validated by means of unit testing and numerical estimation of the Jacobians
翻译:在$mathbf{SE}(3)(3)美元中,任意的僵硬转换可以分为两个部分,即翻译和硬旋转。本技术报告以统一的观点审查代表旋转部分的三种常见替代方法:三个(yaw-pitch-roll)Euler角度的组合,三个(yaw-pitch-roll)Euler 角度的组合,从$\mathbf{SO}(3)美元(3美元)和四元组成的正方位旋转矩阵。将说明:(一)这些表述与相互转换的公式之间的等值(在所有案例中,考虑到翻译和旋转部分作为一个整体);(二)如何组成和提出每个表达部分的点,以及(三)这些变化和构成的组合的不确定性(当作为Gausian分布模型建模时)如何受到这些变化和构成的影响。还简要地提到为在近期工程文献中实施最小比例优化而需要的Jacobian人,这是非常有希望的方法。文本反映MPT C+图书馆如何执行每个描述的算法。所有公式及其实施都通过单位的估测数和估测法来彻底验证。所有公式及其执行。