OKVIS ROS
|
Wraps the parameter block for a pose estimate. More...
#include <PoseParameterBlock.hpp>
Public Types | |
typedef okvis::kinematics::Transformation | estimate_t |
The estimate type (okvis::kinematics::Transformation ). More... | |
typedef ParameterBlockSized < 7, 6, estimate_t > | base_t |
The base class type. More... | |
Public Types inherited from okvis::ceres::ParameterBlockSized< 7, 6, okvis::kinematics::Transformation > | |
typedef okvis::kinematics::Transformation | parameter_t |
Make the parameter type accessible. More... | |
Public Member Functions | |
PoseParameterBlock () | |
Default constructor (assumes not fixed). More... | |
PoseParameterBlock (const okvis::kinematics::Transformation &T_WS, uint64_t id, const okvis::Time ×tamp) | |
Constructor with estimate and time. More... | |
virtual | ~PoseParameterBlock () |
Trivial destructor. More... | |
virtual void | setEstimate (const okvis::kinematics::Transformation &T_WS) |
Set estimate of this parameter block. More... | |
void | setTimestamp (const okvis::Time ×tamp) |
virtual okvis::kinematics::Transformation | estimate () const |
Get estimate. More... | |
okvis::Time | timestamp () const |
Get the time. More... | |
virtual void | plus (const double *x0, const double *Delta_Chi, double *x0_plus_Delta) const |
Generalization of the addition operation, x_plus_delta = Plus(x, delta) with the condition that Plus(x, 0) = x. More... | |
virtual void | plusJacobian (const double *x0, double *jacobian) const |
The jacobian of Plus(x, delta) w.r.t delta at delta = 0. More... | |
virtual void | minus (const double *x0, const double *x0_plus_Delta, double *Delta_Chi) const |
Computes the minimal difference between a variable x and a perturbed variable x_plus_delta. More... | |
virtual void | liftJacobian (const double *x0, double *jacobian) const |
Computes the Jacobian from minimal space to naively overparameterised space as used by ceres. More... | |
virtual std::string | typeInfo () const |
Return parameter block type as string. More... | |
Public Member Functions inherited from okvis::ceres::ParameterBlockSized< 7, 6, okvis::kinematics::Transformation > | |
ParameterBlockSized () | |
Default constructor – initialises elements in parametes_ to zero. More... | |
virtual | ~ParameterBlockSized () |
Trivial destructor. More... | |
virtual void | setParameters (const double *parameters) |
Set exact parameters of this parameter block. More... | |
virtual double * | parameters () |
Get parameters – as a pointer. More... | |
virtual const double * | parameters () const |
Get parameters – as a pointer. More... | |
virtual size_t | dimension () const |
Get the parameter dimension. More... | |
virtual size_t | minimalDimension () const |
Get the internal minimal parameter dimension. More... | |
virtual bool | read (std::istream &) |
virtual bool | write (std::ostream &) const |
Writing to file – not implemented. More... | |
Public Member Functions inherited from okvis::ceres::ParameterBlock | |
ParameterBlock () | |
Default constructor, assumes not fixed and no local parameterisation. More... | |
virtual | ~ParameterBlock () |
Trivial destructor. More... | |
void | setId (uint64_t id) |
Set parameter block ID. More... | |
void | setFixed (bool fixed) |
Whether or not this should be optimised at all. More... | |
uint64_t | id () const |
Get parameter block ID. More... | |
bool | fixed () const |
Whether or not this is optimised at all. More... | |
virtual void | setLocalParameterizationPtr (const ::ceres::LocalParameterization *localParameterizationPtr) |
Set which local parameterisation object to use. More... | |
virtual const ::ceres::LocalParameterization * | localParameterizationPtr () const |
The local parameterisation object to use. More... | |
Private Attributes | |
okvis::Time | timestamp_ |
Time of this state. More... | |
Additional Inherited Members | |
Static Public Attributes inherited from okvis::ceres::ParameterBlockSized< 7, 6, okvis::kinematics::Transformation > | |
static EIGEN_MAKE_ALIGNED_OPERATOR_NEW const int | Dimension |
Dimension of the parameter block. More... | |
static const int | MinimalDimension |
Internal (minimal) dimension. More... | |
Protected Attributes inherited from okvis::ceres::ParameterBlockSized< 7, 6, okvis::kinematics::Transformation > | |
double | parameters_ [Dimension] |
Parameters. More... | |
Protected Attributes inherited from okvis::ceres::ParameterBlock | |
uint64_t | id_ |
ID of the parameter block. More... | |
bool | fixed_ |
Whether or not this should be optimised at all (ceres::problem::setFixed) More... | |
const ::ceres::LocalParameterization * | localParameterizationPtr_ |
The local parameterisation object to use. More... | |
Wraps the parameter block for a pose estimate.
The base class type.
The estimate type (okvis::kinematics::Transformation ).
okvis::ceres::PoseParameterBlock::PoseParameterBlock | ( | ) |
Default constructor (assumes not fixed).
okvis::ceres::PoseParameterBlock::PoseParameterBlock | ( | const okvis::kinematics::Transformation & | T_WS, |
uint64_t | id, | ||
const okvis::Time & | timestamp | ||
) |
Constructor with estimate and time.
[in] | T_WS | The pose estimate as T_WS. |
[in] | id | The (unique) ID of this block. |
[in] | timestamp | The timestamp of this state. |
|
virtual |
Trivial destructor.
|
virtual |
Get estimate.
Implements okvis::ceres::ParameterBlockSized< 7, 6, okvis::kinematics::Transformation >.
|
inlinevirtual |
Computes the Jacobian from minimal space to naively overparameterised space as used by ceres.
[in] | x0 | Variable. |
[out] | jacobian | the Jacobian (dimension minDim x dim). |
Implements okvis::ceres::ParameterBlock.
|
inlinevirtual |
Computes the minimal difference between a variable x and a perturbed variable x_plus_delta.
[in] | x0 | Variable. |
[in] | x0_plus_Delta | Perturbed variable. |
[out] | Delta_Chi | Minimal difference. |
Implements okvis::ceres::ParameterBlock.
|
inlinevirtual |
Generalization of the addition operation, x_plus_delta = Plus(x, delta) with the condition that Plus(x, 0) = x.
[in] | x0 | Variable. |
[in] | Delta_Chi | Perturbation. |
[out] | x0_plus_Delta | Perturbed x. |
Implements okvis::ceres::ParameterBlock.
|
inlinevirtual |
The jacobian of Plus(x, delta) w.r.t delta at delta = 0.
[in] | x0 | Variable. |
[out] | jacobian | The Jacobian. |
Implements okvis::ceres::ParameterBlock.
|
virtual |
Set estimate of this parameter block.
[in] | T_WS | The estimate to set this to. |
Implements okvis::ceres::ParameterBlockSized< 7, 6, okvis::kinematics::Transformation >.
|
inline |
[in] | timestamp | The timestamp of this state. |
|
inline |
Get the time.
|
inlinevirtual |
Return parameter block type as string.
Implements okvis::ceres::ParameterBlock.
|
private |
Time of this state.