GCOP  1.0
Public Member Functions | Static Public Member Functions | Public Attributes
gcop::Posegraph2d Class Reference

#include <posegraph2d.h>

List of all members.

Public Member Functions

 Posegraph2d (int N, int nf)
void Optp (VectorXd &p, const vector< Matrix3d > &gs)

Static Public Member Functions

static void Synthesize (Posegraph2d &pgt, Posegraph2d &pgn, double tf)
static void Synthesize2 (Posegraph2d &pgt, Posegraph2d &pgn, double tf)

Public Attributes

vector< double > ts
 sequence of times (N+1 vector)
vector< Matrix3d > gs
 sequence of poses (N+1 vector)
vector< Vector3d > us
 sequence of inputs (N vector)
VectorXd p
 feature positions (2*nf vector)
vector< vector< pair< int,
Vector2d > > > 
Is
 N+1-vector of vectors of visible pose-to-feature indices.
vector< vector< pair< int,
Vector2d > > > 
Js
 nf-vector of vectors of feature-to-pose indices indices
double cp
 noise covariance of poses (assume spherical)

Detailed Description

Pose-graph in 2D. This is the simplese possible definition assuming point (unprojected) features e.g. from stereo/laser scans with uniform spherical covariance. The framework can be easily extended to any general 2d/3d non-uniform or projected features as well.


Constructor & Destructor Documentation

Posegraph2d::Posegraph2d ( int  N,
int  nf 
)

Pose-landmark graph

Parameters:
Nnumber of trajectory segments
nfnumber of features (landmarks)

Member Function Documentation

void Posegraph2d::Optp ( VectorXd &  p,
const vector< Matrix3d > &  gs 
)

Given a sequence of poses gs, compute the optimal feature locations p

Parameters:
pa vector of feature locations
gsa given vector of poses in SE(2)

References Js.

Referenced by Synthesize(), and Synthesize2().

void Posegraph2d::Synthesize ( Posegraph2d pgt,
Posegraph2d pgn,
double  tf 
) [static]

Create true and noisy synthetic pose graphs

Parameters:
pgttrue pose graph
pgnnoisy pose graph
tftotal trajectory time

References gcop::SE2::cay(), cp, gs, gcop::SE2::Instance(), Is, Js, Optp(), p, gcop::random_normal(), ts, and us.

void Posegraph2d::Synthesize2 ( Posegraph2d pgt,
Posegraph2d pgn,
double  tf 
) [static]

Create true and noisy synthetic pose graphs

Parameters:
pgttrue pose graph
pgnnoisy pose graph
tftotal trajectory time

References gcop::SE2::cay(), cp, gs, gcop::SE2::Instance(), Is, Js, Optp(), p, gcop::random_normal(), ts, and us.


Member Data Documentation

noise covariance of poses (assume spherical)

Referenced by gcop::BaCost::L(), Synthesize(), and Synthesize2().

vector<Matrix3d> gcop::Posegraph2d::gs

sequence of poses (N+1 vector)

Referenced by gcop::Posegraph2dView::RenderFrame(), Synthesize(), and Synthesize2().

vector< vector<pair<int, Vector2d> > > gcop::Posegraph2d::Is

N+1-vector of vectors of visible pose-to-feature indices.

Referenced by gcop::BaCost::L(), Synthesize(), and Synthesize2().

vector< vector<pair<int, Vector2d> > > gcop::Posegraph2d::Js

nf-vector of vectors of feature-to-pose indices indices

Referenced by Optp(), gcop::Posegraph2dView::RenderFrame(), Synthesize(), and Synthesize2().

feature positions (2*nf vector)

Referenced by gcop::Posegraph2dView::RenderFrame(), Synthesize(), and Synthesize2().

vector<double> gcop::Posegraph2d::ts

sequence of times (N+1 vector)

Referenced by Synthesize(), and Synthesize2().

vector<Vector3d> gcop::Posegraph2d::us

sequence of inputs (N vector)

Referenced by Synthesize(), and Synthesize2().


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