SLAMflex SE  0.1.0
SLAMflex provides detection and tracking of dominant planes for smartphone devices. This plane can then be used to show AR content relative to the plane orientation. The detection of plane is performed in the field of view of the smartphone camera. In subsequent frames it is tracked. The interface returns the plane position and orientation.
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Bundle Class Reference

#include <Bundle.h>

Public Member Functions

 Bundle (const ATANCamera &TCam)
 
int AddCamera (SE3<> se3CamFromWorld, bool bFixed)
 
int AddPoint (Vector< 3 > v3Pos)
 
void AddMeas (int nCam, int nPoint, Vector< 2 > v2Pos, double dSigmaSquared)
 
int Compute (bool *pbAbortSignal)
 
bool Converged ()
 
Vector< 3 > GetPoint (int n)
 
SE3 GetCamera (int n)
 
std::vector< std::pair< int, int > > GetOutlierMeasurements ()
 
std::set< int > GetOutliers ()
 

Protected Member Functions

void ProjectAndFindSquaredError (Meas &meas)
 
template<class MEstimator >
bool Do_LM_Step (bool *pbAbortSignal, double *lastMdSigmaSquared)
 
template<class MEstimator >
double FindNewError ()
 
void GenerateMeasLUTs ()
 
void GenerateOffDiagScripts ()
 
void ClearAccumulators ()
 
void ModifyLambda_GoodStep ()
 
void ModifyLambda_BadStep ()
 

Protected Attributes

std::vector< ExtendedMapPointmvPoints
 
std::vector< CameramvCameras
 
std::list< MeasmMeasList
 
std::vector< std::pair< int, int > > mvOutlierMeasurementIdx
 
std::vector< std::vector< Meas * > > mvMeasLUTs
 
ATANCamera mCamera
 
int mnCamsToUpdate
 
int mnStartRow
 
double mdSigmaSquared
 
double mdLambda
 
double mdLambdaFactor
 
bool mbConverged
 
bool mbHitMaxIterations
 
int mnCounter
 
int mnAccepted
 
int mgvnMaxIterations
 
double mgvdUpdateConvergenceLimit
 
int mgvnBundleCout
 
bool * mpbAbortSignal
 

Detailed Description

Definition at line 105 of file Bundle.h.

Constructor & Destructor Documentation

Bundle::Bundle ( const ATANCamera TCam)

Definition at line 34 of file Bundle.cpp.

Member Function Documentation

int Bundle::AddCamera ( SE3<>  se3CamFromWorld,
bool  bFixed 
)

Definition at line 45 of file Bundle.cpp.

void Bundle::AddMeas ( int  nCam,
int  nPoint,
Vector< 2 >  v2Pos,
double  dSigmaSquared 
)

Definition at line 80 of file Bundle.cpp.

int Bundle::AddPoint ( Vector< 3 >  v3Pos)

Definition at line 65 of file Bundle.cpp.

void Bundle::ClearAccumulators ( )
protected

Definition at line 95 of file Bundle.cpp.

int Bundle::Compute ( bool *  pbAbortSignal)

Definition at line 114 of file Bundle.cpp.

bool Bundle::Converged ( )
inline

Definition at line 114 of file Bundle.h.

template<class MEstimator >
bool Bundle::Do_LM_Step ( bool *  pbAbortSignal,
double *  lastMdSigmaSquared 
)
protected

Definition at line 187 of file Bundle.cpp.

template<class MEstimator >
double Bundle::FindNewError ( )
protected

Definition at line 537 of file Bundle.cpp.

void Bundle::GenerateMeasLUTs ( )
protected

Definition at line 565 of file Bundle.cpp.

void Bundle::GenerateOffDiagScripts ( )
protected

Definition at line 580 of file Bundle.cpp.

SE3 Bundle::GetCamera ( int  n)

Definition at line 630 of file Bundle.cpp.

vector< pair< int, int > > Bundle::GetOutlierMeasurements ( )

Definition at line 649 of file Bundle.cpp.

set< int > Bundle::GetOutliers ( )

Definition at line 635 of file Bundle.cpp.

Vector< 3 > Bundle::GetPoint ( int  n)

Definition at line 625 of file Bundle.cpp.

void Bundle::ModifyLambda_BadStep ( )
protected

Definition at line 618 of file Bundle.cpp.

void Bundle::ModifyLambda_GoodStep ( )
protected

Definition at line 612 of file Bundle.cpp.

void Bundle::ProjectAndFindSquaredError ( Meas meas)
inlineprotected

Definition at line 166 of file Bundle.cpp.

Member Data Documentation

bool Bundle::mbConverged
protected

Definition at line 143 of file Bundle.h.

bool Bundle::mbHitMaxIterations
protected

Definition at line 144 of file Bundle.h.

ATANCamera Bundle::mCamera
protected

Definition at line 137 of file Bundle.h.

double Bundle::mdLambda
protected

Definition at line 141 of file Bundle.h.

double Bundle::mdLambdaFactor
protected

Definition at line 142 of file Bundle.h.

double Bundle::mdSigmaSquared
protected

Definition at line 140 of file Bundle.h.

double Bundle::mgvdUpdateConvergenceLimit
protected

Definition at line 149 of file Bundle.h.

int Bundle::mgvnBundleCout
protected

Definition at line 150 of file Bundle.h.

int Bundle::mgvnMaxIterations
protected

Definition at line 148 of file Bundle.h.

std::list<Meas> Bundle::mMeasList
protected

Definition at line 133 of file Bundle.h.

int Bundle::mnAccepted
protected

Definition at line 146 of file Bundle.h.

int Bundle::mnCamsToUpdate
protected

Definition at line 138 of file Bundle.h.

int Bundle::mnCounter
protected

Definition at line 145 of file Bundle.h.

int Bundle::mnStartRow
protected

Definition at line 139 of file Bundle.h.

bool* Bundle::mpbAbortSignal
protected

Definition at line 152 of file Bundle.h.

std::vector<Camera> Bundle::mvCameras
protected

Definition at line 132 of file Bundle.h.

std::vector<std::vector<Meas*> > Bundle::mvMeasLUTs
protected

Definition at line 135 of file Bundle.h.

std::vector<std::pair<int,int> > Bundle::mvOutlierMeasurementIdx
protected

Definition at line 134 of file Bundle.h.

std::vector<ExtendedMapPoint> Bundle::mvPoints
protected

Definition at line 131 of file Bundle.h.


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