Developer Documentation
ICP Namespace Reference

Namespace for ICP. More...

## Functions

template<typename VectorT >
VectorT center_of_gravity (const std::vector< VectorT > &_points)

template<typename VectorT , typename QuaternionT >
void icp (const std::vector< VectorT > &_points1, const std::vector< VectorT > &_points2, VectorT &_cog1, VectorT &_cog2, double &_scale1, double &_scale2, QuaternionT &_rotation)
Compute rigid transformation from first point set to second point set. More...

template<typename VectorT , typename QuaternionT >
void icp (const std::vector< VectorT > &_points1, const std::vector< VectorT > &_points2, VectorT &_cog1, VectorT &_cog2, QuaternionT &_rotation)
Compute rigid transformation from first point set to second point set without scaling. More...

## Detailed Description

Namespace for ICP.

## Function Documentation

template<typename VectorT , typename QuaternionT >
 void ICP::icp ( const std::vector< VectorT > & _points1, const std::vector< VectorT > & _points2, VectorT & _cog1, VectorT & _cog2, double & _scale1, double & _scale2, QuaternionT & _rotation )

Compute rigid transformation from first point set to second point set.

Compute ICP Parameters ( No iteration is done ) Points are unchanged, only parameters are computed.

To transform pointset 1 into pointset 2 do the folowing:

• substract cog1 from pointset 1
• scale points with 1/scale1
• rotate with given rotation
• scale with scale2
Parameters
 _points1 first set of points _points2 second set of points _cog1 center of gravity first point set _cog2 center of gravity second point set _scale1 scaling factor of first point set _scale2 scaling factor of second point set _rotation Rotation between point sets ( rotation(_points1) -> _points2

Definition at line 91 of file ICP.cc.

template<typename VectorT , typename QuaternionT >
 void ICP::icp ( const std::vector< VectorT > & _points1, const std::vector< VectorT > & _points2, VectorT & _cog1, VectorT & _cog2, QuaternionT & _rotation )

Compute rigid transformation from first point set to second point set without scaling.

Compute ICP Parameters ( No iteration is done ) Points are unchanged, only parameters are computed.

To transform pointset 1 into pointset 2 do the folowing:

• substract cog1 from pointset 1
• rotate with given rotation