Hi!
I am using the
EigenQuaternionParamerization to optimize for a rotation given some
measurements. Now I have some cases where I want to restrict the
rotation to be only around the Z axis. In the past I just used one
single parameter (angle around the Z axis) for this, but it would be
nice to keep the quaternion representation of the rotation and to reuse
the code for the corresponding residual computation.
It
is not possible currently to associate two LocalParameterization
objects with a parameter block (apart maybe from combining them with
ProductParameterization, but this serves a different purpose), is that
correct?
I would think that it's possible to
create a special LocalParameterization to constrain a quaternion
parameter to a rotation around a given axis, but I don't understand the
math behind it yet. But is it possible to have a class that combines two
arbitrary LocalParameteration objects with sort-of an AND function? One
use case could be to combine SubsetParameterization and
QuaternionParameterization to have a quaternion AND keep qx and qy
constant.
I would also be glad for any pointers
to where I need to look to better understand the theory behind creating
a new LocalParameterization class.
Thanks a lot!
Kind regards,
Jarne