Public Member Functions | Public Attributes | Private Member Functions
PolarMatcher Class Reference

#include <polar_match.h>

List of all members.

Public Member Functions

void pm_find_far_points (PMScan *ls)
void pm_init ()
 Initialises internar variables.
void pm_median_filter (PMScan *ls)
PM_TYPE pm_psm (PMScan *lsr, PMScan *lsa)
PM_TYPE pm_psm_c (PMScan *lsr, PMScan *lsa)
void pm_segment_scan (PMScan *ls)
 PolarMatcher ()
 stopping condition; the pose change has to be smaller than ... for ICP, MBICP

Public Attributes

std::vector< PM_TYPEpm_co
PM_TYPE PM_DFI
std::vector< PM_TYPEpm_fi
PM_TYPE PM_FI_MAX
PM_TYPE PM_FI_MIN
double PM_FOV
int PM_L_POINTS
double PM_MAX_ERROR
int PM_MAX_ITER
 stopping condition; the pose change has to be smaller than ...
int PM_MAX_ITER_ICP
 maximum number of iterations for PSM.PSM_C
double PM_MAX_RANGE
 field of view of the laser range finder in degrees
int PM_MIN_VALID_POINTS
 [cm] max valid laser range (set this to about 400 for the Hokuyo URG)
int PM_SEARCH_WINDOW
 minimum number of valid points for scanmatching
std::vector< PM_TYPEpm_si
double PM_STOP_COND
int PM_STOP_COND_ICP
 maximum number of iterations for ICP,MBICP
double PM_TIME_DELAY
 half window size which is searched for correct orientation

Private Member Functions

PM_TYPE norm_a (PM_TYPE a)
void pm_cov_est (PM_TYPE err, double *c11, double *c12, double *c22, double *c33, bool corridor=false, PM_TYPE corr_angle=0)
PM_TYPE pm_error_index (PMScan *lsr, PMScan *lsa)
PM_TYPE pm_orientation_search (const PMScan *ref, const PM_TYPE *new_r, const int *new_bad)
void pm_scan_project (const PMScan *act, PM_TYPE *new_r, int *new_bad)
PM_TYPE pm_translation_estimation (const PMScan *ref, const PM_TYPE *new_r, const int *new_bad, PM_TYPE C, PM_TYPE *dx, PM_TYPE *dy)
PM_TYPE point_line_distance (PM_TYPE x1, PM_TYPE y1, PM_TYPE x2, PM_TYPE y2, PM_TYPE x3, PM_TYPE y3, PM_TYPE *x, PM_TYPE *y)

Detailed Description

Definition at line 93 of file polar_match.h.


Constructor & Destructor Documentation

stopping condition; the pose change has to be smaller than ... for ICP, MBICP

Definition at line 65 of file polar_match.cpp.


Member Function Documentation

PM_TYPE PolarMatcher::norm_a ( PM_TYPE  a) [inline, private]

Definition at line 119 of file polar_match.h.

void PolarMatcher::pm_cov_est ( PM_TYPE  err,
double *  c11,
double *  c12,
double *  c22,
double *  c33,
bool  corridor = false,
PM_TYPE  corr_angle = 0 
) [private]

Definition at line 349 of file polar_match.cpp.

PM_TYPE PolarMatcher::pm_error_index ( PMScan lsr,
PMScan lsa 
) [private]

Definition at line 236 of file polar_match.cpp.

Definition at line 216 of file polar_match.cpp.

Initialises internar variables.

Definition at line 72 of file polar_match.cpp.

Definition at line 96 of file polar_match.cpp.

PM_TYPE PolarMatcher::pm_orientation_search ( const PMScan ref,
const PM_TYPE new_r,
const int *  new_bad 
) [private]

Function estimating the orientation of the current scan represented with range readings new_r and flags new_bad with respect to the reference scan ref. Assuming that the current and ref scan were taken at the same position, to an orientation change of the current scan a left or right shift of the scan ranges corresponds. The functions estimates the orientation by finding that shift which minimizes the difference between the current and ref. scan. The orientation estimate is then refined using interpolation.

Definition at line 718 of file polar_match.cpp.

PM_TYPE PolarMatcher::pm_psm ( PMScan lsr,
PMScan lsa 
)

Definition at line 516 of file polar_match.cpp.

PM_TYPE PolarMatcher::pm_psm_c ( PMScan lsr,
PMScan lsa 
)

Definition at line 387 of file polar_match.cpp.

void PolarMatcher::pm_scan_project ( const PMScan act,
PM_TYPE new_r,
int *  new_bad 
) [private]

projects the current (active) scan act to the base (ref.) (0,0,0) coordinate frame returns in new_r interpolated r at measurement bearings returns in new_bad bad flags of the interpolated range readings

Definition at line 615 of file polar_match.cpp.

Definition at line 134 of file polar_match.cpp.

PM_TYPE PolarMatcher::pm_translation_estimation ( const PMScan ref,
const PM_TYPE new_r,
const int *  new_bad,
PM_TYPE  C,
PM_TYPE dx,
PM_TYPE dy 
) [private]

Definition at line 796 of file polar_match.cpp.

PM_TYPE PolarMatcher::point_line_distance ( PM_TYPE  x1,
PM_TYPE  y1,
PM_TYPE  x2,
PM_TYPE  y2,
PM_TYPE  x3,
PM_TYPE  y3,
PM_TYPE x,
PM_TYPE y 
) [private]

Definition at line 589 of file polar_match.cpp.


Member Data Documentation

Definition at line 141 of file polar_match.h.

Definition at line 137 of file polar_match.h.

Definition at line 139 of file polar_match.h.

Definition at line 136 of file polar_match.h.

Definition at line 135 of file polar_match.h.

Definition at line 143 of file polar_match.h.

Definition at line 133 of file polar_match.h.

Definition at line 150 of file polar_match.h.

stopping condition; the pose change has to be smaller than ...

Definition at line 152 of file polar_match.h.

maximum number of iterations for PSM.PSM_C

Definition at line 153 of file polar_match.h.

field of view of the laser range finder in degrees

Definition at line 144 of file polar_match.h.

[cm] max valid laser range (set this to about 400 for the Hokuyo URG)

Definition at line 145 of file polar_match.h.

minimum number of valid points for scanmatching

Definition at line 146 of file polar_match.h.

Definition at line 140 of file polar_match.h.

Definition at line 151 of file polar_match.h.

maximum number of iterations for ICP,MBICP

Definition at line 154 of file polar_match.h.

half window size which is searched for correct orientation

[ms]time delay (time registration error) in the laser measurements

Definition at line 148 of file polar_match.h.


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


polar_scan_matcher
Author(s): Ivan Dryanovski
autogenerated on Thu Jun 6 2019 22:03:36