Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PointMatcher< T >::ICP Struct Reference

ICP algorithm. More...

#include <PointMatcher.h>

Inheritance diagram for PointMatcher< T >::ICP:
Inheritance graph
[legend]

Public Member Functions

TransformationParameters compute (const DataPoints &readingIn, const DataPoints &referenceIn, const TransformationParameters &initialTransformationParameters)
 Perform ICP from initial guess and return optimised transformation matrix. More...
 
const DataPointsgetReadingFiltered () const
 Return the filtered point cloud reading used in the ICP chain. More...
 
TransformationParameters operator() (const DataPoints &readingIn, const DataPoints &referenceIn)
 Perform ICP and return optimised transformation matrix. More...
 
TransformationParameters operator() (const DataPoints &readingIn, const DataPoints &referenceIn, const TransformationParameters &initialTransformationParameters)
 Perform ICP from initial guess and return optimised transformation matrix. More...
 
- Public Member Functions inherited from PointMatcher< T >::ICPChainBase
template<typename R >
const std::string & createModuleFromRegistrar (const std::string &regName, const YAML::Node &doc, const R &registrar, std::shared_ptr< typename R::TargetType > &module)
 Instantiate a module if its name is in the YAML file. More...
 
template<typename R >
const std::string & createModulesFromRegistrar (const std::string &regName, const YAML::Node &doc, const R &registrar, std::vector< std::shared_ptr< typename R::TargetType > > &modules)
 Instantiate modules if their names are in the YAML file. More...
 
bool getMaxNumIterationsReached () const
 Return the flag that informs if we reached the maximum number of iterations during the last iterative process. More...
 
unsigned getPrefilteredReadingPtsCount () const
 Return the remaining number of points in reading after prefiltering but before the iterative process. More...
 
unsigned getPrefilteredReferencePtsCount () const
 Return the remaining number of points in the reference after prefiltering but before the iterative process. More...
 
virtual void loadFromYaml (std::istream &in)
 Construct an ICP algorithm from a YAML file. More...
 
virtual void setDefault ()
 Construct an ICP algorithm that works in most of the cases. More...
 
virtual ~ICPChainBase ()
 virtual desctructor More...
 

Protected Member Functions

TransformationParameters computeWithTransformedReference (const DataPoints &readingIn, const DataPoints &reference, const TransformationParameters &T_refIn_refMean, const TransformationParameters &initialTransformationParameters)
 Perferm ICP using an already-transformed reference and with an already-initialized matcher. More...
 
- Protected Member Functions inherited from PointMatcher< T >::ICPChainBase
void cleanup ()
 Clean chain up, empty all filters and delete associated objects. More...
 
template<typename R >
const std::string & createModuleFromRegistrar (const std::string &regName, const PointMatcherSupport::YAML::Node &doc, const R &registrar, std::shared_ptr< typename R::TargetType > &module)
 Instantiate a module if its name is in the YAML file. More...
 
template<typename R >
const std::string & createModulesFromRegistrar (const std::string &regName, const PointMatcherSupport::YAML::Node &doc, const R &registrar, std::vector< std::shared_ptr< typename R::TargetType > > &modules)
 Instantiate modules if their names are in the YAML file. More...
 
 ICPChainBase ()
 Protected contstructor, to prevent the creation of this object. More...
 
virtual void loadAdditionalYAMLContent (PointMatcherSupport::YAML::Node &doc)
 Hook to load addition subclass-specific content from the YAML file. More...
 
std::string nodeVal (const std::string &regName, const PointMatcherSupport::YAML::Node &doc)
 Get the value of a field in a node. More...
 

Protected Attributes

DataPoints readingFiltered
 reading point cloud after the filters were applied More...
 
- Protected Attributes inherited from PointMatcher< T >::ICPChainBase
bool maxNumIterationsReached
 store if we reached the maximum number of iterations last time compute was called More...
 
unsigned prefilteredReadingPtsCount
 remaining number of points after prefiltering but before the iterative process More...
 
unsigned prefilteredReferencePtsCount
 remaining number of points after prefiltering but before the iterative process More...
 

Additional Inherited Members

- Public Attributes inherited from PointMatcher< T >::ICPChainBase
std::shared_ptr< ErrorMinimizererrorMinimizer
 error minimizer More...
 
std::shared_ptr< Inspectorinspector
 inspector More...
 
std::shared_ptr< Matchermatcher
 matcher More...
 
OutlierFilters outlierFilters
 outlier filters More...
 
DataPointsFilters readingDataPointsFilters
 filters for reading, applied once More...
 
DataPointsFilters readingStepDataPointsFilters
 filters for reading, applied at each step More...
 
DataPointsFilters referenceDataPointsFilters
 filters for reference More...
 
TransformationCheckers transformationCheckers
 transformation checkers More...
 
Transformations transformations
 transformations More...
 

Detailed Description

template<typename T>
struct PointMatcher< T >::ICP

ICP algorithm.

Definition at line 702 of file PointMatcher.h.

Member Function Documentation

◆ compute()

template<typename T >
PointMatcher< T >::TransformationParameters PointMatcher< T >::ICP::compute ( const DataPoints readingIn,
const DataPoints referenceIn,
const TransformationParameters initialTransformationParameters 
)

Perform ICP from initial guess and return optimised transformation matrix.

Definition at line 265 of file ICP.cpp.

◆ computeWithTransformedReference()

template<typename T >
PointMatcher< T >::TransformationParameters PointMatcher< T >::ICP::computeWithTransformedReference ( const DataPoints readingIn,
const DataPoints reference,
const TransformationParameters T_refIn_refMean,
const TransformationParameters initialTransformationParameters 
)
protected

Perferm ICP using an already-transformed reference and with an already-initialized matcher.

Definition at line 317 of file ICP.cpp.

◆ getReadingFiltered()

template<typename T>
const DataPoints& PointMatcher< T >::ICP::getReadingFiltered ( ) const
inline

Return the filtered point cloud reading used in the ICP chain.

Definition at line 719 of file PointMatcher.h.

◆ operator()() [1/2]

template<typename T >
PointMatcher< T >::TransformationParameters PointMatcher< T >::ICP::operator() ( const DataPoints readingIn,
const DataPoints referenceIn 
)

Perform ICP and return optimised transformation matrix.

Definition at line 244 of file ICP.cpp.

◆ operator()() [2/2]

template<typename T >
PointMatcher< T >::TransformationParameters PointMatcher< T >::ICP::operator() ( const DataPoints readingIn,
const DataPoints referenceIn,
const TransformationParameters initialTransformationParameters 
)

Perform ICP from initial guess and return optimised transformation matrix.

Definition at line 255 of file ICP.cpp.

Member Data Documentation

◆ readingFiltered

template<typename T>
DataPoints PointMatcher< T >::ICP::readingFiltered
protected

reading point cloud after the filters were applied

Definition at line 728 of file PointMatcher.h.


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


libpointmatcher
Author(s):
autogenerated on Sat May 27 2023 02:38:04