class
State_JPLQuatLocalJPL quaternion CERES state parameterization.
Contents
- Reference
Public functions
- auto Plus(const double* x, const double* delta, double* x_plus_delta) const -> bool override
- State update function for a JPL quaternion representation.
- auto ComputeJacobian(const double* x, double* jacobian) const -> bool override
- Computes the jacobian in respect to the local parameterization.
Function documentation
bool ov_init:: State_JPLQuatLocal:: Plus(const double* x,
const double* delta,
double* x_plus_delta) const override
State update function for a JPL quaternion representation.
Implements update operation by left-multiplying the current quaternion with a quaternion built from a small axis-angle perturbation.
bool ov_init:: State_JPLQuatLocal:: ComputeJacobian(const double* x,
double* jacobian) const override
Computes the jacobian in respect to the local parameterization.
This essentially "tricks" ceres. Instead of doing what ceres wants: dr/dlocal= dr/dglobal * dglobal/dlocal
We instead directly do: dr/dlocal= [ dr/dlocal, 0] * [I; 0]= dr/dlocal. Therefore we here define dglobal/dlocal= [I; 0]