Public Member Functions | Public Attributes | Static Public Attributes | List of all members
sba::Con2dP2 Class Reference

#include <spa2d.h>

Public Member Functions

double calcErr (const Node2d &nd0, const Node2d &nd1)
 calculates projection error and stores it in <err> More...
 
double calcErrDist (const Node2d &nd0, const Node2d &nd1)
 calculate error in distance only, no weighting More...
 
void setJacobians (std::vector< Node2d, Eigen::aligned_allocator< Node2d > > &nodes)
 

Public Attributes

double amean
 
Eigen::Matrix< double, 3, 1 > err
 error More...
 
bool isValid
 valid or not (could be out of bounds) More...
 
Eigen::Matrix< double, 3, 3 > J0
 jacobian with respect to frames; uses dR'/dq from Node2d calculation More...
 
Eigen::Matrix< double, 3, 3 > J0t
 
Eigen::Matrix< double, 3, 3 > J1
 
Eigen::Matrix< double, 3, 3 > J1t
 
int nd1
 Node2d index for the second node. More...
 
EIGEN_MAKE_ALIGNED_OPERATOR_NEW int ndr
 Reference pose index. More...
 
Eigen::Matrix< double, 3, 3 > prec
 
Eigen::Vector2d tmean
 Mean vector, quaternion (inverse) and precision matrix for this constraint. More...
 

Static Public Attributes

static constexpr double qScale = 1.0
 

Detailed Description

CONP2 holds a constraint measurement of a pose to a pose. They are a repository for links between poses within a frame, with aux info such as jacobians

Definition at line 141 of file spa2d.h.

Member Function Documentation

◆ calcErr()

double sba::Con2dP2::calcErr ( const Node2d nd0,
const Node2d nd1 
)
inline

calculates projection error and stores it in <err>

Definition at line 148 of file spa2d.cpp.

◆ calcErrDist()

double sba::Con2dP2::calcErrDist ( const Node2d nd0,
const Node2d nd1 
)

calculate error in distance only, no weighting

Definition at line 163 of file spa2d.cpp.

◆ setJacobians()

void sba::Con2dP2::setJacobians ( std::vector< Node2d, Eigen::aligned_allocator< Node2d > > &  nodes)

dpc/dq = dR'/dq [pw-t], in homogeneous form, with q a quaternion param dpc/dx = -R' * [1 0 0]', in homogeneous form, with x a translation param d(px/pz)/du = [ pz dpx/du - px dpz/du ] / pz^2, works for all variables

Definition at line 86 of file spa2d.cpp.

Member Data Documentation

◆ amean

double sba::Con2dP2::amean

Definition at line 154 of file spa2d.h.

◆ err

Eigen::Matrix<double,3,1> sba::Con2dP2::err

error

Definition at line 158 of file spa2d.h.

◆ isValid

bool sba::Con2dP2::isValid

valid or not (could be out of bounds)

Definition at line 185 of file spa2d.h.

◆ J0

Eigen::Matrix<double,3,3> sba::Con2dP2::J0

jacobian with respect to frames; uses dR'/dq from Node2d calculation

Definition at line 167 of file spa2d.h.

◆ J0t

Eigen::Matrix<double,3,3> sba::Con2dP2::J0t

Definition at line 167 of file spa2d.h.

◆ J1

Eigen::Matrix<double,3,3> sba::Con2dP2::J1

Definition at line 167 of file spa2d.h.

◆ J1t

Eigen::Matrix<double,3,3> sba::Con2dP2::J1t

Definition at line 167 of file spa2d.h.

◆ nd1

int sba::Con2dP2::nd1

Node2d index for the second node.

Definition at line 150 of file spa2d.h.

◆ ndr

EIGEN_MAKE_ALIGNED_OPERATOR_NEW int sba::Con2dP2::ndr

Reference pose index.

Definition at line 147 of file spa2d.h.

◆ prec

Eigen::Matrix<double,3,3> sba::Con2dP2::prec

Definition at line 155 of file spa2d.h.

◆ qScale

constexpr double sba::Con2dP2::qScale = 1.0
staticconstexpr

scaling factor for quaternion derivatives relative to translational ones; not sure if this is needed, it's close to 1.0

Definition at line 171 of file spa2d.h.

◆ tmean

Eigen::Vector2d sba::Con2dP2::tmean

Mean vector, quaternion (inverse) and precision matrix for this constraint.

Definition at line 153 of file spa2d.h.


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


sparse_bundle_adjustment
Author(s):
autogenerated on Wed Mar 2 2022 01:03:04