local_grid_map Class Reference

List of all members.

Detailed Description

Class for local grids. Used as a free space model for human feature information.


Public Member Functions

 local_grid_map (double sx, double sy, double res, double xo, double yo, double maxr)
 Constructor.
 local_grid_map (int size_i, int size_j)
 Constructor for dummy grid objects.
 ~local_grid_map ()
 Destructor.
 local_grid_map (const local_grid_map &f)
 Copy constructor.
local_grid_mapoperator= (const local_grid_map &g)
 Assignment operator.
int initialize (laserscan &scan)
 Initialize grid map = compute lookup table.
int is_initialized ()
 Test if object is initialized.
void clear (double p)
 Clear all cells to p, clear all other grid cells to 0.
void set_name (char *name)
 Set grid map name.
char * get_name ()
 Get grid map name.
void set_pose (double x, double y, double theta)
 Set pose of grid map.
void get_pose (double &x, double &y, double &theta)
 Get pose of grid map.
void integrate_ray (double x, double y, double a, double length)
 Integrate ray.
void integrate_features (local_feature_map &fmap, int feat_type_id)
 Integrate features with type id feat_type_id.
void detect_motion_features (int freq, laserscan &scan)
 Detect and integrate motion features.
int transform_xy_to_ij (double x, double y, double a, int &i, int &j, int &a_i)
 Transform meters to indices.
int transform_ij_to_xy (int i, int j, double &x, double &y)
 Transform indices to meters.
int multiply (local_grid_map &g1, local_grid_map &g2)
 Multiply cell-wise two grids of equal size.
void invert_prob ()
 Invert probability. Replace p by 1 - p for each cell.
void convert_to_density ()
 Convert grid to a probability density (= normalize it with its sum).
void print ()
 Print grid map.
void print_gnuplot ()
 Draw in gnuplot (works with "... | gnuplot".

Private Member Functions

void increment_cells_on_ray (int x_i, int y_i, int a_i, double length)
 Increment all cells on ray given by x_i, y_i, a_i, length.
int compute_lookuptable (laserscan &scan)
 Precompute index lookup table.
int next_field (float x, float dx)
 compute next cell index in lookup table

Private Attributes

char * name
 Grid map name.
double timestamp
 Timestamp from.
float angle_to_index
 Unknown Dirk-Schulz-parameter.
int size_i
 Grid size in x in index (i,j)-units.
int size_j
 Grid size in y in index (i,j)-units.
double size_x
 Grid size in x in [m].
double size_y
 Grid size in y in [m].
double x_pos
 Grid pose, x coordinate (in case of moving robot).
double y_pos
 Grid pose, y coordinate (in case of moving robot).
double t_pos
 Grid pose, theta coordinate (in case of moving robot).
double x_origin
 True (meter) x-origin of grid in [m] given in (i,j)-frame.
double y_origin
 True (meter) y-origin of grid in [m] given in (i,j)-frame.
double reso_xy
 Cartesian grid resolution in [m].
double tracker_max_range
 Maximal working range in [m] of grid.
double ** p
 Handle to probabilities-grid.
int ** hit
 Handle to hit-grid.
int ** visit
 Handle to visit-grid.
int initialized
 Flag if grid object is initialized.

Static Private Attributes

static index_table ray_idx_table
 Lookup table with indices along possible rays. Attention: static variable!


Generated on Mon Oct 23 14:09:18 2006 for Tracky by  doxygen 1.4.6