template class sophus::Manifold

Overview

Templated local parameterization for LieGroup [with implemented LieGroup::Dx_this_mul_exp_x_at_0() ]. More…

#include <manifold.h>

template <template<class, int=0> class TLieGroup>
class Manifold: public Manifold {
public:
    // typedefs

    using LieGroupF64 = TLieGroup<double> ;
    using Tangent = typename LieGroupF64::Tangent ;
    using TangentMap = typename sophus::Mapper<Tangent>::Map ;
    using TangentConstMap = typename sophus::Mapper<Tangent>::ConstMap ;

    // fields

    static constexpr int kDoF = LieGroupF64::kDoF;
    static constexpr int kNumParameters = LieGroupF64::kNumParameters;

    // methods

    bool Plus(double const* t_raw, double const* delta_raw, double* t_plus_delta_raw) const;
    bool PlusJacobian(double const* t_raw, double* jacobian_raw) const;

    bool Minus(
        double const* y_raw,
        double const* x_raw,
        double* y_minus_x_raw
        ) const;

    bool MinusJacobian(
        double const* x_raw,
        double* jacobian_raw
        ) const;

    int AmbientSize() const;
    int TangentSize() const;
};

Detailed Documentation

Templated local parameterization for LieGroup [with implemented LieGroup::Dx_this_mul_exp_x_at_0() ].

Methods

bool Plus(
    double const* t_raw,
    double const* delta_raw,
    double* t_plus_delta_raw
    ) const

LieGroup plus operation for Ceres.

T * exp(x)

bool PlusJacobian(double const* t_raw, double* jacobian_raw) const

Jacobian of LieGroup plus operation for Ceres.

Dx T * exp(x) with x=0