Main MRPT website > C++ reference
MRPT logo
Public Types | Public Member Functions

mrpt::vision::TSequenceFeatureObservations Struct Reference


Detailed Description

A complete sequence of observations of features from different camera frames (poses).

This structure is the input to some (Bundle-adjustment) methods in mrpt::vision

Note:
Pixel coordinates can be either "raw" or "undistorted". Read the doc of functions handling this structure to see what they expect.
See also:
mrpt::vision::bundle_adj_full

Definition at line 87 of file vision/include/mrpt/vision/types.h.

#include <mrpt/vision/types.h>

Inheritance diagram for mrpt::vision::TSequenceFeatureObservations:
Inheritance graph
[legend]

List of all members.

Public Types

typedef std::vector
< TFeatureObservation
BASE

Public Member Functions

 TSequenceFeatureObservations ()
 TSequenceFeatureObservations (size_t size)
 TSequenceFeatureObservations (const TSequenceFeatureObservations &o)
void saveToTextFile (const std::string &filName, bool skipFirstCommentLine=false) const
 Saves all entries to a text file, with each line having this format: FRAME_ID FEAT_ID PIXEL_X PIXEL_Y The file is self-descripting, since the first line contains a comment line (starting with '') explaining the format.
void loadFromTextFile (const std::string &filName)
 Load from a text file, in the format described in saveToTextFile

Exceptions:
std::exceptionOn I/O or format error.

size_t removeFewObservedFeatures (size_t minNumObservations=3)
 Remove all those features that don't have a minimum number of observations from different camera frame IDs.
void decimateCameraFrames (const size_t decimate_ratio)
 Remove all but one out of decimate_ratio camera frame IDs from the list (eg: from N camera pose IDs at return there will be just N/decimate_ratio) The algorithm first builds a sorted list of frame IDs, then keep the lowest ID, remove the next "decimate_ratio-1", and so on.
void compressIDs (std::map< TCameraPoseID, TCameraPoseID > *old2new_camIDs=NULL, std::map< TLandmarkID, TLandmarkID > *old2new_lmIDs=NULL)
 Rearrange frame and feature IDs such as they start at 0 and there are no gaps.

Member Typedef Documentation

Definition at line 89 of file vision/include/mrpt/vision/types.h.


Constructor & Destructor Documentation

mrpt::vision::TSequenceFeatureObservations::TSequenceFeatureObservations (  ) [inline]

Definition at line 91 of file vision/include/mrpt/vision/types.h.

mrpt::vision::TSequenceFeatureObservations::TSequenceFeatureObservations ( size_t  size ) [inline]

Definition at line 92 of file vision/include/mrpt/vision/types.h.

mrpt::vision::TSequenceFeatureObservations::TSequenceFeatureObservations ( const TSequenceFeatureObservations o ) [inline]

Definition at line 93 of file vision/include/mrpt/vision/types.h.


Member Function Documentation

void mrpt::vision::TSequenceFeatureObservations::compressIDs ( std::map< TCameraPoseID, TCameraPoseID > *  old2new_camIDs = NULL,
std::map< TLandmarkID, TLandmarkID > *  old2new_lmIDs = NULL 
)

Rearrange frame and feature IDs such as they start at 0 and there are no gaps.

Parameters:
old2new_camIDsIf provided, the mapping from old to new IDs is stored here.
old2new_lmIDsIf provided, the mapping from old to new IDs is stored here.
void mrpt::vision::TSequenceFeatureObservations::decimateCameraFrames ( const size_t  decimate_ratio )

Remove all but one out of decimate_ratio camera frame IDs from the list (eg: from N camera pose IDs at return there will be just N/decimate_ratio) The algorithm first builds a sorted list of frame IDs, then keep the lowest ID, remove the next "decimate_ratio-1", and so on.

See also:
After calling this you may want to call compressIDs
void mrpt::vision::TSequenceFeatureObservations::loadFromTextFile ( const std::string &  filName )

Load from a text file, in the format described in saveToTextFile

Exceptions:
std::exceptionOn I/O or format error.

size_t mrpt::vision::TSequenceFeatureObservations::removeFewObservedFeatures ( size_t  minNumObservations = 3 )

Remove all those features that don't have a minimum number of observations from different camera frame IDs.

Returns:
the number of erased entries.
See also:
After calling this you may want to call compressIDs
void mrpt::vision::TSequenceFeatureObservations::saveToTextFile ( const std::string &  filName,
bool  skipFirstCommentLine = false 
) const

Saves all entries to a text file, with each line having this format: FRAME_ID FEAT_ID PIXEL_X PIXEL_Y The file is self-descripting, since the first line contains a comment line (starting with '') explaining the format.

Generated files can be loaded from MATLAB.

See also:
loadFromTextFile
Exceptions:
std::exceptionOn I/O error



Page generated by Doxygen 1.7.2 for MRPT 0.9.4 SVN: at Mon Jan 10 22:30:30 UTC 2011