NDEVR
API Documentation
EdgeSE3

6D edge between two Vertex6 More...

Inheritance diagram for EdgeSE3:
[legend]
Collaboration diagram for EdgeSE3:
[legend]

Public Member Functions

void computeError () final override
 Computes the error of the edge and stores it internally.
Public Member Functions inherited from BaseBinaryEdge< 6, SE3Quat, VertexSE3Expmap, VertexSE3Expmap >
 BaseBinaryEdge ()
 Constructs an empty binary edge with null-mapped Hessian and Jacobian memory.
bool allVerticesFixed () const final override
 Returns true if both vertices are fixed.
void constructQuadraticForm ()
 Constructs the quadratic form (Hessian blocks and gradient) from the linearized edge.
void constructQuadraticForm2 ()
 Constructs the quadratic form using an optimized evaluation order.
const JacobianXiOplusTypejacobianOplusXi () const
 returns the result of the linearization in the manifold space for the node xi
const JacobianXjOplusTypejacobianOplusXj () const
 returns the result of the linearization in the manifold space for the node xj
virtual void linearizeOplus ()
 Numerically linearizes the oplus operator by finite differences for both vertices.
void linearizeOplusAndConstructQuadraticForm (JacobianWorkspace &jacobianWorkspace) final override
 Linearizes the oplus operator and constructs the quadratic form in one step.
void mapHessianMemory (g_type *d, int i, int j, bool rowMajor) final override
 Maps the Hessian block memory to an external buffer.
virtual void setVertex (uint04 i, HyperGraph::HGVertex *v) final override
 Sets vertex i to the given pointer, with type-checking.
virtual const HyperGraph::HGVertexvertex (uint04 i) const final override
 Returns a const pointer to vertex i (0 or 1).
virtual uint04 vertexCount () const final override
 Returns the number of vertices (always 2 for binary edges).
Public Member Functions inherited from BaseEdge< D, SE3Quat >
 BaseEdge ()
 Default constructor.
g_type chi2 () const final override
 Computes the chi-squared error: e^T * Omega * e.
virtual sint04 dimension () const final override
 Returns the dimension of the error vector.
const ErrorVectorerror () const
 Returns a const reference to the error vector.
const InformationTypeinformation () const
 Returns a const reference to the information matrix.
const g_type * informationData () const final override
 Returns a const pointer to the raw information matrix data.
const Measurementmeasurement () const
 accessor functions for the measurement represented by the edge
int rank () const
 Returns the rank (dimension) of the error.
g_type scalerInformation () const
 information matrix of the constraint
void setInformation (const InformationType &information)
 Sets the information matrix.
void setMeasurement (const Measurement &m)
 Sets the measurement for this edge.
Public Member Functions inherited from OptimizableGraph::OGEdge
 OGEdge ()
 Default constructor.
void clearRobustKernel ()
 Removes the robust kernel from this edge.
long long internalId () const
 the internal ID of the edge
int level () const
 returns the level of the edge
RobustKernelrobustKernel () const
 if NOT NULL, error of this edge will be robustifed with the kernel
void setLevel (int l)
 sets the level of the edge
void setRobustKernel (RobustKernel &ptr)
 specify the robust kernel to be used in this edge
Public Member Functions inherited from HyperGraph::HGEdge
 HGEdge (int id=-1)
 creates and empty edge with no vertices
int id () const
 returns the id of this edge
void setId (int id)
 sets the id of this edge
virtual HGVertexvertex (uint04 i)=0
 Returns a mutable pointer to the i-th vertex.

Additional Inherited Members

Public Types inherited from BaseBinaryEdge< 6, SE3Quat, VertexSE3Expmap, VertexSE3Expmap >
typedef BaseEdge< D, SE3Quat >::ErrorVector ErrorVector
 The error vector type.
typedef Eigen::Map< Eigen::Matrix< g_type, Dj, Di >, Eigen::Matrix< g_type, Di, Dj >::Flags &Eigen::PacketAccessBit ? Eigen::Aligned :Eigen::Unaligned > HessianBlockTransposedType
 Mapped transposed Hessian block type.
typedef Eigen::Map< Eigen::Matrix< g_type, Di, Dj >, Eigen::Matrix< g_type, Di, Dj >::Flags &Eigen::PacketAccessBit ? Eigen::Aligned :Eigen::Unaligned > HessianBlockType
 Mapped Hessian block type.
typedef BaseEdge< D, SE3Quat >::InformationType InformationType
 The information matrix type.
typedef Eigen::Matrix< g_type, D, Di >::AlignedMapType JacobianXiOplusType
 Jacobian type w.r.t. vertex Xi.
typedef Eigen::Matrix< g_type, D, Dj >::AlignedMapType JacobianXjOplusType
 Jacobian type w.r.t. vertex Xj.
typedef BaseEdge< D, SE3Quat >::Measurement Measurement
 The measurement type.
typedef VertexSE3Expmap VertexXiType
 Type of the first (source) vertex.
typedef VertexSE3Expmap VertexXjType
 Type of the second (target) vertex.
Public Types inherited from BaseEdge< D, SE3Quat >
typedef Eigen::Matrix< g_type, t_dims, 1 > ErrorVector
 Fixed-size error vector type.
typedef Eigen::Matrix< g_type, t_dims, t_dims > InformationType
 Fixed-size information (inverse covariance) matrix type.
typedef SE3Quat Measurement
 The measurement type stored by this edge.
Static Public Attributes inherited from BaseBinaryEdge< 6, SE3Quat, VertexSE3Expmap, VertexSE3Expmap >
static constexpr int Di
 Dimension of the first vertex.
static constexpr int Dj
 Dimension of the second vertex.
Static Public Attributes inherited from BaseEdge< D, SE3Quat >
static constexpr sint04 Dimension
 Compile-time dimension of the error vector.
Protected Member Functions inherited from BaseEdge< D, SE3Quat >
InformationType robustInformation (const Eigen::Vector3< g_type > &rho) const
 calculate the robust information matrix by updating the information matrix of the error
Protected Attributes inherited from BaseBinaryEdge< 6, SE3Quat, VertexSE3Expmap, VertexSE3Expmap >
HessianBlockType _hessian
 Mapped Hessian block for the off-diagonal (i,j) entry.
bool _hessianRowMajor
 Whether the Hessian block is stored in row-major order.
HessianBlockTransposedType _hessianTransposed
 Mapped transposed Hessian block.
JacobianXiOplusType _jacobianOplusXi
 Jacobian of the error w.r.t. vertex Xi.
JacobianXjOplusType _jacobianOplusXj
 Jacobian of the error w.r.t. vertex Xj.
VertexSE3Expmapm_a
 Pointer to the first (source) vertex.
VertexSE3Expmapm_b
 Pointer to the second (target) vertex.
Protected Attributes inherited from BaseEdge< D, SE3Quat >
ErrorVector _error
 The current error vector.
InformationType _information
 The information (inverse covariance) matrix.
Measurement _measurement
 The stored measurement for this edge.
Protected Attributes inherited from OptimizableGraph::OGEdge
int _internalId = 0
 Internal sequential id assigned on insertion.
int _level = 0
 Optimization level for multi-level optimization.
RobustKernel_robustKernel = nullptr
 Optional robust kernel for this edge.
Protected Attributes inherited from HyperGraph::HGEdge
int _id
 unique id

Detailed Description

6D edge between two Vertex6

6D binary edge between two SE3 vertices representing a relative pose constraint.

Definition at line 24 of file types_six_dof_expmap.h.


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