iterative closest points
CEV ICP algorithm library
Loading...
Searching...
No Matches
Public Member Functions | List of all members
icp::Trimmed Class Referencefinal

#include <trimmed.h>

Inheritance diagram for icp::Trimmed:
icp::ICP

Public Member Functions

 Trimmed (double overlap_rate)
 
 Trimmed (const Config &config)
 
 ~Trimmed ()
 
void setup () override
 Per-method setup code.
 
void iterate () override
 Perform one iteration of ICP for the point clouds a and b provided with ICP::begin.
 
- Public Member Functions inherited from icp::ICP
virtual ~ICP ()=default
 
void begin (const std::vector< Vector > &a, const std::vector< Vector > &b, RBTransform t)
 Begins the ICP process for point clouds a and b with an initial guess for the transform t.
 
double calculate_cost () const
 Computes the cost of the current transformation.
 
const RBTransformcurrent_transform () const
 The current transform.
 

Additional Inherited Members

- Static Public Member Functions inherited from icp::ICP
static bool register_method (std::string name, std::function< std::unique_ptr< ICP >(const Config &)> constructor)
 Registers a new ICP method that can be created with constructor, returning false if name has already been registered.
 
static bool is_method_registered (std::string name)
 Returns true if the ICP method name is registered.
 
static const std::vector< std::string > & registered_methods ()
 Returns a current list of the names of currently registered ICP methods.
 
static std::optional< std::unique_ptr< ICP > > from_method (std::string name, const Config &params=Config())
 Factory constructor for the ICP method name with configuration config.
 
- Protected Member Functions inherited from icp::ICP
 ICP ()
 
- Protected Attributes inherited from icp::ICP
RBTransform transform
 The current point cloud transformation that is being optimized.
 
std::vector< Vectora
 The source point cloud.
 
std::vector< Vectorb
 The destination point cloud.
 
std::vector< Matchmatches
 The pairing of each point in a to its closest in b.
 

Detailed Description

Definition at line 8 of file trimmed.h.

Constructor & Destructor Documentation

◆ Trimmed() [1/2]

icp::Trimmed::Trimmed ( double  overlap_rate)

Definition at line 24 of file trimmed.cpp.

◆ Trimmed() [2/2]

icp::Trimmed::Trimmed ( const Config config)

Definition at line 28 of file trimmed.cpp.

◆ ~Trimmed()

icp::Trimmed::~Trimmed ( )

Definition at line 31 of file trimmed.cpp.

Member Function Documentation

◆ iterate()

void icp::Trimmed::iterate ( )
overridevirtual

Perform one iteration of ICP for the point clouds a and b provided with ICP::begin.

Precondition
ICP::begin must have been invoked.
Postcondition
For implementers: must fill matches with newest match data.

Implements icp::ICP.

Definition at line 40 of file trimmed.cpp.

◆ setup()

void icp::Trimmed::setup ( )
overridevirtual

Per-method setup code.

Postcondition
For implementers: must fill matches with match data for the initial point clouds.

Implements icp::ICP.

Definition at line 33 of file trimmed.cpp.


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