Image Component Library (ICL)
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
icl::geom::ICP Class Reference

Implementaiton of the Iterator Closest utils::Point (ICP) Algorithm. More...

#include <ICP.h>

Inheritance diagram for icl::geom::ICP:
icl::utils::Uncopyable

Classes

struct  Result
 Simple result structure. More...
 

Public Member Functions

 ICP (std::vector< math::DynMatrix< icl64f > > &model)
 constructor with given model data More...
 
 ICP (std::vector< math::DynMatrix< icl64f > * > &model)
 constructor with given model data More...
 
 ICP ()
 Empty constructor without given model data. More...
 
 ~ICP ()
 Destructor. More...
 
const Resultapply (const std::vector< math::DynMatrix< icl64f > * > &pointlist)
 applies the ICP on given point cloude More...
 

Static Public Member Functions

static double error (const std::vector< math::DynMatrix< icl64f > * > &dat, const std::vector< math::DynMatrix< icl64f > * > &mod)
 computes th error between given model and data cloude More...
 

Private Member Functions

math::DynMatrix< icl64f > * compute (const std::vector< math::DynMatrix< icl64f > * > &data, const std::vector< math::DynMatrix< icl64f > * > &model)
 internally used utility function More...
 

Private Attributes

Result m_result
 rotation, translation and error value Result m_result; More...
 
math::KDTree kdt
 internal data structure for efficient search More...
 

Additional Inherited Members

- Protected Member Functions inherited from icl::utils::Uncopyable
 Uncopyable ()
 Empty base constructor. More...
 

Detailed Description

Implementaiton of the Iterator Closest utils::Point (ICP) Algorithm.

TODO: Add Documentation What about a fixed 3D-Version that uses 3D-Fixed Matrix data?

Constructor & Destructor Documentation

◆ ICP() [1/3]

icl::geom::ICP::ICP ( std::vector< math::DynMatrix< icl64f > > &  model)

constructor with given model data

TODO is the data passed shallowly or deeply

◆ ICP() [2/3]

icl::geom::ICP::ICP ( std::vector< math::DynMatrix< icl64f > * > &  model)

constructor with given model data

TODO is the data passed shallowly or deeply

◆ ICP() [3/3]

icl::geom::ICP::ICP ( )

Empty constructor without given model data.

◆ ~ICP()

icl::geom::ICP::~ICP ( )

Destructor.

Member Function Documentation

◆ apply()

const Result& icl::geom::ICP::apply ( const std::vector< math::DynMatrix< icl64f > * > &  pointlist)

applies the ICP on given point cloude

◆ compute()

math::DynMatrix<icl64f>* icl::geom::ICP::compute ( const std::vector< math::DynMatrix< icl64f > * > &  data,
const std::vector< math::DynMatrix< icl64f > * > &  model 
)
private

internally used utility function

◆ error()

static double icl::geom::ICP::error ( const std::vector< math::DynMatrix< icl64f > * > &  dat,
const std::vector< math::DynMatrix< icl64f > * > &  mod 
)
static

computes th error between given model and data cloude

Member Data Documentation

◆ kdt

math::KDTree icl::geom::ICP::kdt
private

internal data structure for efficient search

◆ m_result

Result icl::geom::ICP::m_result
private

rotation, translation and error value Result m_result;


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