私はたくさんの等尺性を持っています[R | t] 変換行列、すなわち、それらは 3D 剛体変換です。現在、私はそれらを固有アフィン変換として保存し、コンパクトな形式で表します。たとえばEigen::AffineCompact3d
、[0 0 0 1] の冗長な最後の行を保存しません。
Eigen::Isometry3d
また、 typedef であると思われる があることも認識していますTransform<double, 3, AffineCompact, Isometry>
。
逆変換は一般的なアフィン逆変換よりもはるかに安価 (転置) であるため、Isometry を使用しています。inverse() を次のように使用すると、ヒントを渡すことができることも知っています。affine_mat.inverse(Eigen::Isometry);
しかし、毎回手動でヒントを渡すことなく、アイソメトリック逆動作を取得したいと思います。Eigen::IsometryCompact3d
つまり、 Eigen API に驚くほど欠けている動作を再現する最善の方法は何ですか?