Computes weighted and un-weighted averages of SE(2) poses.
Add values to average with append(), when done call get_average(). Use clear() to reset the accumulator and start a new average computation. Theoretical base: See SO_average<2> for the rotation part. The translation is a simple arithmetic mean in Euclidean space.
Definition at line 88 of file SO_SE_average.h.
#include <mrpt/poses/SO_SE_average.h>
Public Member Functions | |
| SE_average () | |
| Constructor.  More... | |
| void | clear () | 
| Resets the accumulator.  More... | |
| void | append (const mrpt::poses::CPose2D &p) | 
| Adds a new pose to the computation.  More... | |
| void | append (const mrpt::poses::CPose2D &p, const double weight) | 
| Adds a new pose to the weighted-average computation.  More... | |
| void | get_average (mrpt::poses::CPose2D &out_mean) const | 
| Returns the average pose.  More... | |
Public Attributes | |
| bool | enable_exception_on_undeterminate | 
| (Default=false) Set to true if you want to raise an exception on undetermined average values.  More... | |
Private Attributes | |
| double | m_count | 
| double | m_accum_x | 
| double | m_accum_y | 
| SO_average< 2 > | m_rot_part | 
| mrpt::poses::SE_average< 2 >::SE_average | ( | ) | 
Constructor.
| void mrpt::poses::SE_average< 2 >::append | ( | const mrpt::poses::CPose2D & | p | ) | 
Adds a new pose to the computation.
Referenced by mrpt::poses::CPosePDFGrid::getMean(), mrpt::poses::CPosePDFParticles::getMean(), and mrpt::poses::CPosePDFSOG::getMean().
| void mrpt::poses::SE_average< 2 >::append | ( | const mrpt::poses::CPose2D & | p, | 
| const double | weight | ||
| ) | 
Adds a new pose to the weighted-average computation.
| void mrpt::poses::SE_average< 2 >::clear | ( | ) | 
Resets the accumulator.
| void mrpt::poses::SE_average< 2 >::get_average | ( | mrpt::poses::CPose2D & | out_mean | ) | const | 
Returns the average pose.
| std::logic_error | If no data point were inserted. | 
| std::runtime_error | Upon undeterminate average value (ie the average lays exactly on the origin point) and enable_exception_on_undeterminate is set to true (otherwise, the 0 orientation would be returned) | 
Referenced by mrpt::poses::CPosePDFGrid::getMean(), mrpt::poses::CPosePDFParticles::getMean(), and mrpt::poses::CPosePDFSOG::getMean().
| bool mrpt::poses::SE_average< 2 >::enable_exception_on_undeterminate | 
(Default=false) Set to true if you want to raise an exception on undetermined average values.
Definition at line 100 of file SO_SE_average.h.
      
  | 
  private | 
Definition at line 103 of file SO_SE_average.h.
      
  | 
  private | 
Definition at line 103 of file SO_SE_average.h.
      
  | 
  private | 
Definition at line 102 of file SO_SE_average.h.
      
  | 
  private | 
Definition at line 104 of file SO_SE_average.h.
| Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019 |