Jafar
|
Base class for doing slam using points extracted in an image. More...
Base class for doing slam using points extracted in an image.
Definition at line 67 of file imagePointManager.hpp.
#include <imagePointManager.hpp>
Classes | |
struct | IdPredicate |
class | Stats |
Public Member Functions | |
ImagePointManager (slam::BaseSlam &slam_, jafar::hpm::Engine &hpmEngineLoopClosing_, kernel::IdFactory<> *_idFactory) | |
void | setFrameDataBase (MonoImageFrameDataBase *_frameDataBase) |
virtual slam::Observation::ObservationType | getObservationType () const =0 |
virtual void | setupZones (unsigned int imageWidth_, unsigned int imageHeight_, double reduction_, std::size_t nbZonesU_, std::size_t nbZonesV_, unsigned int nbDesiredFeaturesPerZone_) |
void | setupLoopClosing (double loopClosingDistanceMax_, unsigned int loopClosingIndexDistanceMin_, bool enable=true) |
bool | isLoopClosingDetected () const |
unsigned int | getLoopClosingFrameIndex () const |
jafar::hpm::vecHarrisPoints const & | getLoopClosingPoints () const |
virtual void | writeLogHeader (jafar::kernel::DataLogger &dataLogger) const |
Implements this method calling repeatidly log methods. | |
virtual void | writeLogData (jafar::kernel::DataLogger &dataLogger) const |
Implements this method calling repeatidly log methods. | |
virtual void | writeLogStats (jafar::kernel::DataLogger &log) const |
write stats at the end of the log | |
void | setProcessEvents (int events_) |
Protected Types | |
typedef std::vector < QualityIndexPoint > | QualityIndexPoints |
typedef std::list< std::size_t > | FeaturesList |
features observed in current frame | |
Protected Member Functions | |
virtual boost::tuple< bool, unsigned int > | isPointInZone (double u_, double v_) |
unsigned int | getNewFeatureId () |
virtual bool | isFeatureCandidate (std::size_t index_)=0 |
void | addNewFeature (std::size_t index_, hpm::HarrisPoint &point_) |
void | addKnownFeature (std::size_t index_, jafar::hpm::HarrisPoint const &point_) |
template<class VecPoints > | |
void | loopClosing (VecPoints &framePoints_, unsigned int robotId_) |
template<class VecPoints > | |
void | featureSelection (VecPoints &points_) |
template<class VecPoints > | |
void | updateFrameDataBase (VecPoints &points_, unsigned int robotId_) |
virtual jafar::image::Image * | loadImage (unsigned int frameNumber) const =0 |
virtual bool | fillObservation (std::size_t index_, slam::Observation &obs, unsigned int sensorId_, unsigned int robotId_) const =0 |
void | slamProcessObservations (unsigned int robotId_, unsigned int sensorId_) const |
there is only one point manager but the observations corresponds to each robotId | |
Static Protected Member Functions | |
static unsigned int | computeZoneIndex (double x_, unsigned int nbInt_, double xMax_) |
Protected Attributes | |
kernel::IdFactory * | m_idFactory |
slam::BaseSlam & | slam |
bool | loopClosingOn |
For loop closing. | |
jafar::hpm::Engine & | hpmEngineLoopClosing |
MonoImageFrameDataBase * | frameDataBase |
bool | loopClosingDetection |
unsigned int | loopClosingFrameIndex |
unsigned int | loopClosingNbUsedFeatures |
jafar::hpm::vecHarrisPoints | loopClosingPoints |
std::vector< QualityIndexPoints > | pointsInZone |
points from last frame which are candidate | |
std::vector< unsigned int > | nbFeaturesInZone |
FeaturesList | knownFeatures |
FeaturesList | newFeatures |
unsigned int | imageWidth |
cells definition | |
unsigned int | imageHeight |
std::size_t | nbZonesU |
std::size_t | nbZonesV |
unsigned int | nbDesiredFeaturesPerZone |
unsigned int | processingTime |
class jafar::slampt::ImagePointManager::Stats | stats |
unsigned int | currentFrameIndex |
current frame number | |
Static Protected Attributes | |
static kernel::IdFactory * | s_idFactory |
Private Attributes | |
bool | ownFrameDataBase |
int | processEvents |
Friends | |
std::ostream & | operator<< (std::ostream &s, const ImagePointManager &slam_) |
std::string | getZones (ImagePointManager const &m) |
virtual void jafar::slampt::ImagePointManager::writeLogData | ( | jafar::kernel::DataLogger & | log | ) | const [virtual] |
Implements this method calling repeatidly log methods.
You should use writeData() or writeDataVector().
Implements jafar::kernel::DataLoggable.
virtual void jafar::slampt::ImagePointManager::writeLogHeader | ( | jafar::kernel::DataLogger & | log | ) | const [virtual] |
Implements this method calling repeatidly log methods.
You should use writeComment(), writeLegend() or writeLegendTokens().
Implements jafar::kernel::DataLoggable.
Generated on Wed Oct 15 2014 00:37:50 for Jafar by doxygen 1.7.6.1 |