MRXT: The Multi-Robot eXploration Tool
Multi-Robot autonomous exploration and mapping simulator.
|
Implements a slam algorithm consisting on a extended Kalman filter. More...
#include <EKFilter.h>
Public Member Functions | |
EKFilter () | |
Constructor. | |
EKFilter (int nrobots, ConfigFile &configFile) | |
Constructor. | |
virtual | ~EKFilter () |
Destructor. | |
point | getCell (int robot) |
returns the current cell of the robot | |
matrix | getCovariance (int robot) const |
returns the matrix that represents the covariance of the position of the robot | |
float | getDisp (int robot) const |
returns a measure of the dispersion of the robot | |
Ematrix | getGlobalCovariance () const |
returns the matrix that represents the covariance of robots and marks | |
binMap * | getImpMap () |
returns a copy of the current imprecise pose map | |
gridMapInterface * | getOMap () |
returns a copy of the current occupancy map | |
QPixmap * | getPixmap () |
returns the map as a QPixmap | |
pose | getPos (int robot) |
returns the current pose of the robot | |
binMap * | getPreMap () |
return a copy of the current precise pose map | |
QImage * | getQImage () |
returns the map as a QImage | |
visualMap * | getVMap () |
returns a copy of the current visual map | |
void | initialize (int nrobots, ConfigFile &configfile) |
initializer | |
Private Member Functions | |
landmark * | dataAssociation (const matrix &ZT, const matrix &Rt, const pos3d &globalpos, const pose &robotPos, const matrix &H, const matrix &Htrans, const float *desc, const Ematrix &Pcomp, int r) |
Data association between the new observations and the map. | |
void | drawPose (IplImage &im, const pose &pos, const matrix &covariance, float xorigin, float yorigin, float resolution) |
Draws the poses of the robots in an opencv image. | |
void | evalDisp (int r) |
evaluates the uncertainty on the position of each robot | |
float | evalUncertainty () |
evaluates the uncertainty on the position of each robot | |
void | execute () |
primary execution loop | |
matrix | jacobianF (const pose &pos, const pose &deltaOdo, float thetaodo) |
jacobian F | |
Ematrix | jacobianG (const pose &pos, const pose &deltaOdo, float thetaodo) |
jacobian G | |
matrix | jacobianH1 (const pose &pos, const pos3d &mark) |
jacobian H1 | |
matrix | jacobianH2 (const pose &pos) |
jacobian H2 | |
matrix | jacobianJ1 (const pose &pos, const pos3d &mark) |
jacobian J1 | |
matrix | motionModel (const pose &pos, const pose &deltaOdo, float thetaodo) |
motion model | |
Ematrix | noiseQ (const pose &pos, const pose &deltaOdo, float thetaodo) |
odometry noise matrix Q | |
void | onStop () |
called before stopping | |
int | setup () |
set up for the execution thread | |
Private Attributes | |
ClMutex | closing |
Ematrix | covariance |
float | descTh |
double | determinante |
float * | dispRobot |
bool | endSlam |
int | errorcount |
matrix | Identity3 |
binMap * | ipmap |
pose ** | lastOdoData |
landmarksData ** | lmData |
float | mahTh |
float | maxCorrect |
float | mediana |
float | minIncorrect |
int | nearestNeighbourOrderBy |
pose ** | odoData |
gridMapInterface * | omap |
binMap * | ppmap |
point * | robotcells |
rangeSensorData ** | rsData |
Ematrix | state |
visualMap * | vmap |
Implements a slam algorithm consisting on a extended Kalman filter.
Author: Miguel Julia <mjulia@umh.es>
Date: 2009
Class EKF
Definition at line 21 of file EKFilter.h.