An error minimizer will compute a transformation matrix such as to minimize the error between the reading and the reference. More...
#include <PointMatcher.h>
Classes | |
struct | ErrorElements |
A structure holding data ready for minimization. The data are "normalized", for instance there are no points with 0 weight, etc. More... | |
Public Member Functions | |
virtual TransformationParameters | compute (const DataPoints &filteredReading, const DataPoints &filteredReference, const OutlierWeights &outlierWeights, const Matches &matches)=0 |
Find the transformation that minimizes the error. | |
ErrorMinimizer () | |
Construct without parameter. | |
ErrorMinimizer (const std::string &className, const ParametersDoc paramsDoc, const Parameters ¶ms) | |
Construct with parameters. | |
virtual Matrix | getCovariance () const |
If not redefined by child class, return zero matrix. | |
ErrorElements | getErrorElements () const |
Return the last the ErrorElements structure that was used for error minimization. | |
ErrorElements & | getMatchedPoints (const DataPoints &reading, const DataPoints &reference, const Matches &matches, const OutlierWeights &outlierWeights) |
virtual T | getOverlap () const |
If not redefined by child class, return the ratio of how many points were used (with weight) for error minimization. | |
T | getPointUsedRatio () const |
Return the ratio of how many points were used for error minimization. | |
T | getWeightedPointUsedRatio () const |
Return the ratio of how many points were used (with weight) for error minimization. | |
virtual | ~ErrorMinimizer () |
virtual destructor | |
Static Public Member Functions | |
static Matrix | crossProduct (const Matrix &A, const Matrix &B) |
Helper funtion doing the cross product in 3D and a pseudo cross product in 2D. | |
Protected Attributes | |
ErrorElements | lastErrorElements |
memory of the last computed error | |
T | pointUsedRatio |
the ratio of how many points were used for error minimization | |
T | weightedPointUsedRatio |
the ratio of how many points were used (with weight) for error minimization |
An error minimizer will compute a transformation matrix such as to minimize the error between the reading and the reference.
Typical error minimized are point-to-point and point-to-plane.
Definition at line 462 of file PointMatcher.h.
PointMatcher< T >::ErrorMinimizer::ErrorMinimizer | ( | ) |
Construct without parameter.
Definition at line 41 of file ErrorMinimizer.cpp.
PointMatcher< T >::ErrorMinimizer::ErrorMinimizer | ( | const std::string & | className, |
const ParametersDoc | paramsDoc, | ||
const Parameters & | params | ||
) |
Construct with parameters.
Definition at line 48 of file ErrorMinimizer.cpp.
PointMatcher< T >::ErrorMinimizer::~ErrorMinimizer | ( | ) | [virtual] |
virtual destructor
Definition at line 54 of file ErrorMinimizer.cpp.
virtual TransformationParameters PointMatcher< T >::ErrorMinimizer::compute | ( | const DataPoints & | filteredReading, |
const DataPoints & | filteredReference, | ||
const OutlierWeights & | outlierWeights, | ||
const Matches & | matches | ||
) | [pure virtual] |
Find the transformation that minimizes the error.
Implemented in ErrorMinimizersImpl< T >::PointToPlaneWithCovErrorMinimizer, ErrorMinimizersImpl< T >::PointToPointWithCovErrorMinimizer, ErrorMinimizersImpl< T >::PointToPlaneErrorMinimizer, ErrorMinimizersImpl< T >::PointToPointErrorMinimizer, and ErrorMinimizersImpl< T >::IdentityErrorMinimizer.
PointMatcher< T >::Matrix PointMatcher< T >::ErrorMinimizer::crossProduct | ( | const Matrix & | A, |
const Matrix & | B | ||
) | [static] |
Helper funtion doing the cross product in 3D and a pseudo cross product in 2D.
Definition at line 111 of file ErrorMinimizer.cpp.
PointMatcher< T >::Matrix PointMatcher< T >::ErrorMinimizer::getCovariance | ( | ) | const [virtual] |
If not redefined by child class, return zero matrix.
Reimplemented in ErrorMinimizersImpl< T >::PointToPlaneWithCovErrorMinimizer, and ErrorMinimizersImpl< T >::PointToPointWithCovErrorMinimizer.
Definition at line 103 of file ErrorMinimizer.cpp.
PointMatcher< T >::ErrorMinimizer::ErrorElements PointMatcher< T >::ErrorMinimizer::getErrorElements | ( | ) | const |
Return the last the ErrorElements structure that was used for error minimization.
Definition at line 80 of file ErrorMinimizer.cpp.
PointMatcher< T >::ErrorMinimizer::ErrorElements & PointMatcher< T >::ErrorMinimizer::getMatchedPoints | ( | const DataPoints & | requestedPts, |
const DataPoints & | sourcePts, | ||
const Matches & | matches, | ||
const OutlierWeights & | outlierWeights | ||
) |
Helper function outputting pair of points from the reference and the reading based on the matching matrix
Definition at line 150 of file ErrorMinimizer.cpp.
T PointMatcher< T >::ErrorMinimizer::getOverlap | ( | ) | const [virtual] |
If not redefined by child class, return the ratio of how many points were used (with weight) for error minimization.
Reimplemented in ErrorMinimizersImpl< T >::PointToPlaneWithCovErrorMinimizer, ErrorMinimizersImpl< T >::PointToPointWithCovErrorMinimizer, ErrorMinimizersImpl< T >::PointToPlaneErrorMinimizer, and ErrorMinimizersImpl< T >::PointToPointErrorMinimizer.
Definition at line 95 of file ErrorMinimizer.cpp.
T PointMatcher< T >::ErrorMinimizer::getPointUsedRatio | ( | ) | const |
Return the ratio of how many points were used for error minimization.
Definition at line 73 of file ErrorMinimizer.cpp.
T PointMatcher< T >::ErrorMinimizer::getWeightedPointUsedRatio | ( | ) | const |
Return the ratio of how many points were used (with weight) for error minimization.
Definition at line 88 of file ErrorMinimizer.cpp.
ErrorElements PointMatcher< T >::ErrorMinimizer::lastErrorElements [protected] |
memory of the last computed error
Definition at line 498 of file PointMatcher.h.
T PointMatcher< T >::ErrorMinimizer::pointUsedRatio [protected] |
the ratio of how many points were used for error minimization
Definition at line 495 of file PointMatcher.h.
T PointMatcher< T >::ErrorMinimizer::weightedPointUsedRatio [protected] |
the ratio of how many points were used (with weight) for error minimization
Definition at line 496 of file PointMatcher.h.