OKVIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | List of all members
okvis::ceres::PoseLocalParameterization Class Reference

Pose local parameterisation, i.e. for orientation dq(dalpha) x q_bar. More...

#include <PoseLocalParameterization.hpp>

Inheritance diagram for okvis::ceres::PoseLocalParameterization:
okvis::ceres::LocalParamizationAdditionalInterfaces

Public Member Functions

virtual ~PoseLocalParameterization ()
 Trivial destructor. More...
 
virtual bool Plus (const double *x, const double *delta, double *x_plus_delta) const
 Generalization of the addition operation, x_plus_delta = Plus(x, delta) with the condition that Plus(x, 0) = x. More...
 
virtual bool Minus (const double *x, const double *x_plus_delta, double *delta) const
 Computes the minimal difference between a variable x and a perturbed variable x_plus_delta. More...
 
virtual bool ComputeJacobian (const double *x, double *jacobian) const
 The jacobian of Plus(x, delta) w.r.t delta at delta = 0. More...
 
virtual bool ComputeLiftJacobian (const double *x, double *jacobian) const
 Computes the Jacobian from minimal space to naively overparameterised space as used by ceres. More...
 
virtual int GlobalSize () const
 The parameter block dimension. More...
 
virtual int LocalSize () const
 The parameter block local dimension. More...
 
bool VerifyJacobianNumDiff (const double *x, double *jacobian, double *jacobianNumDiff)
 
- Public Member Functions inherited from okvis::ceres::LocalParamizationAdditionalInterfaces
virtual ~LocalParamizationAdditionalInterfaces ()
 Trivial destructor. More...
 
virtual bool verify (const double *x_raw, double purturbation_magnitude=1.0e-6) const
 Verifies the correctness of an inplementation by means of numeric Jacobians. More...
 

Static Public Member Functions

static bool plus (const double *x, const double *delta, double *x_plus_delta)
 Generalization of the addition operation, x_plus_delta = Plus(x, delta) with the condition that Plus(x, 0) = x. More...
 
static bool plusJacobian (const double *x, double *jacobian)
 The jacobian of Plus(x, delta) w.r.t delta at delta = 0. More...
 
static bool minus (const double *x, const double *x_plus_delta, double *delta)
 Computes the minimal difference between a variable x and a perturbed variable x_plus_delta. More...
 
static bool liftJacobian (const double *x, double *jacobian)
 Computes the Jacobian from minimal space to naively overparameterised space as used by ceres. More...
 

Detailed Description

Pose local parameterisation, i.e. for orientation dq(dalpha) x q_bar.

Constructor & Destructor Documentation

virtual okvis::ceres::PoseLocalParameterization::~PoseLocalParameterization ( )
inlinevirtual

Trivial destructor.

Member Function Documentation

bool okvis::ceres::PoseLocalParameterization::ComputeJacobian ( const double *  x,
double *  jacobian 
) const
virtual

The jacobian of Plus(x, delta) w.r.t delta at delta = 0.

Parameters
[in]xVariable.
[out]jacobianThe Jacobian.
bool okvis::ceres::PoseLocalParameterization::ComputeLiftJacobian ( const double *  x,
double *  jacobian 
) const
virtual

Computes the Jacobian from minimal space to naively overparameterised space as used by ceres.

Parameters
[in]xVariable.
[out]jacobianthe Jacobian (dimension minDim x dim).
Returns
True on success.

Implements okvis::ceres::LocalParamizationAdditionalInterfaces.

virtual int okvis::ceres::PoseLocalParameterization::GlobalSize ( ) const
inlinevirtual

The parameter block dimension.

bool okvis::ceres::PoseLocalParameterization::liftJacobian ( const double *  x,
double *  jacobian 
)
static

Computes the Jacobian from minimal space to naively overparameterised space as used by ceres.

Parameters
[in]xVariable.
[out]jacobianthe Jacobian (dimension minDim x dim).
Returns
True on success.
virtual int okvis::ceres::PoseLocalParameterization::LocalSize ( ) const
inlinevirtual

The parameter block local dimension.

bool okvis::ceres::PoseLocalParameterization::Minus ( const double *  x,
const double *  x_plus_delta,
double *  delta 
) const
virtual

Computes the minimal difference between a variable x and a perturbed variable x_plus_delta.

Parameters
[in]xVariable.
[in]x_plus_deltaPerturbed variable.
[out]deltaminimal difference.
Returns
True on success.

Implements okvis::ceres::LocalParamizationAdditionalInterfaces.

bool okvis::ceres::PoseLocalParameterization::minus ( const double *  x,
const double *  x_plus_delta,
double *  delta 
)
static

Computes the minimal difference between a variable x and a perturbed variable x_plus_delta.

Parameters
[in]xVariable.
[in]x_plus_deltaPerturbed variable.
[out]deltaminimal difference.
Returns
True on success.
bool okvis::ceres::PoseLocalParameterization::Plus ( const double *  x,
const double *  delta,
double *  x_plus_delta 
) const
virtual

Generalization of the addition operation, x_plus_delta = Plus(x, delta) with the condition that Plus(x, 0) = x.

Parameters
[in]xVariable.
[in]deltaPerturbation.
[out]x_plus_deltaPerturbed x.
bool okvis::ceres::PoseLocalParameterization::plus ( const double *  x,
const double *  delta,
double *  x_plus_delta 
)
static

Generalization of the addition operation, x_plus_delta = Plus(x, delta) with the condition that Plus(x, 0) = x.

Parameters
[in]xVariable.
[in]deltaPerturbation.
[out]x_plus_deltaPerturbed x.
bool okvis::ceres::PoseLocalParameterization::plusJacobian ( const double *  x,
double *  jacobian 
)
static

The jacobian of Plus(x, delta) w.r.t delta at delta = 0.

Parameters
[in]xVariable.
[out]jacobianThe Jacobian.
bool okvis::ceres::PoseLocalParameterization::VerifyJacobianNumDiff ( const double *  x,
double *  jacobian,
double *  jacobianNumDiff 
)

The documentation for this class was generated from the following files: