The ICP3D class is a special ICP-case for homogeneous 3D-vectors.
More...
#include <ICP3D.h>
|
| ICP3D (uint32_t const iterations=10, icl32f const max_distance=1.0f, icl64f const errorDelat=0.01f) |
| ICP3D Standard constructor. More...
|
|
void | build (std::vector< ICP3DVec > const &target, icl32f const &min, icl32f const &len) |
| build creates the octree and saves the target More...
|
|
void | build (std::vector< ICP3DVec > const &target, icl32f const &minX, icl32f const &minY, icl32f const &minZ, icl32f const &width, icl32f const &height, icl32f const &depth) |
| build creates the octree and saves the target More...
|
|
Result | apply (std::vector< ICP3DVec > const &source, std::vector< ICP3DVec > &out) |
| apply Performs the ICP loop More...
|
|
Result | apply (std::vector< ICP3DVec > const &target, std::vector< ICP3DVec > const &source, std::vector< ICP3DVec > &out, icl32f const &min, icl32f const &len) |
| apply Performs the ICP loop More...
|
|
Result | apply (std::vector< ICP3DVec > const &target, std::vector< ICP3DVec > const &source, std::vector< ICP3DVec > &out, icl32f const &minX, icl32f const &minY, icl32f const &minZ, icl32f const &width, icl32f const &height, icl32f const &depth) |
| apply Performs the ICP loop More...
|
|
virtual | ~ICP3D () |
|
void | setMaxDistance (icl32f const dist) |
|
icl32f | getMaxDistance () |
|
void | setErrorDeltaTh (icl64f const th) |
|
icl64f | getErrorDeltaTh () |
|
void | setMaximumIterations (uint32_t const iterations) |
|
uint32_t | getMaximumIterations () |
|
std::vector< ICP3DVec > const & | getTarget () |
|
The ICP3D class is a special ICP-case for homogeneous 3D-vectors.
◆ ICP3DVec
◆ ICP3D()
icl::geom::ICP3D::ICP3D |
( |
uint32_t const |
iterations = 10 , |
|
|
icl32f const |
max_distance = 1.0f , |
|
|
icl64f const |
errorDelat = 0.01f |
|
) |
| |
ICP3D Standard constructor.
◆ ~ICP3D()
virtual icl::geom::ICP3D::~ICP3D |
( |
| ) |
|
|
virtual |
◆ apply() [1/3]
apply Performs the ICP loop
- Parameters
-
source | The points to be aligned to the target |
out | The result of the alignment (transformed source) |
- Returns
- The result for this ICP run (final transformation,error,iterations)
◆ apply() [2/3]
apply Performs the ICP loop
- Parameters
-
target | Target points for the ICP steps |
source | The points to be aligned to the target |
out | The result of the alignment (transformed source) |
min | Octree minimum for all axis |
len | Octree length for all axis |
- Returns
- The result for this ICP run (final transformation,error,iterations)
◆ apply() [3/3]
apply Performs the ICP loop
- Parameters
-
target | Target points for the ICP steps |
source | The points to be aligned to the target |
out | The result of the alignment (transformed source) |
minX | Octree minimum for the x-axis |
minY | Octree minimum for the y-axis |
minZ | Octree minimum for the z-axis |
width | Octree length for the x-axis |
height | Octree length for the y-axis |
depth | Octree length for the z-axis |
- Returns
- The result for this ICP run (final transformation,error,iterations)
◆ build() [1/2]
void icl::geom::ICP3D::build |
( |
std::vector< ICP3DVec > const & |
target, |
|
|
icl32f const & |
min, |
|
|
icl32f const & |
len |
|
) |
| |
build creates the octree and saves the target
- Parameters
-
target | Target points for the ICP steps |
min | Octree minimum for all axis |
len | Octree length for all axis |
◆ build() [2/2]
build creates the octree and saves the target
- Parameters
-
target | Target points for the ICP steps |
minX | Octree minimum for the x-axis |
minY | Octree minimum for the y-axis |
minZ | Octree minimum for the z-axis |
width | Octree length for the x-axis |
height | Octree length for the y-axis |
depth | Octree length for the z-axis |
◆ getErrorDeltaTh()
icl64f icl::geom::ICP3D::getErrorDeltaTh |
( |
| ) |
|
|
inline |
◆ getMaxDistance()
icl32f icl::geom::ICP3D::getMaxDistance |
( |
| ) |
|
|
inline |
◆ getMaximumIterations()
uint32_t icl::geom::ICP3D::getMaximumIterations |
( |
| ) |
|
|
inline |
◆ getTarget()
std::vector<ICP3DVec> const& icl::geom::ICP3D::getTarget |
( |
| ) |
|
|
inline |
◆ setErrorDeltaTh()
void icl::geom::ICP3D::setErrorDeltaTh |
( |
icl64f const |
th | ) |
|
|
inline |
◆ setMaxDistance()
void icl::geom::ICP3D::setMaxDistance |
( |
icl32f const |
dist | ) |
|
|
inline |
◆ setMaximumIterations()
void icl::geom::ICP3D::setMaximumIterations |
( |
uint32_t const |
iterations | ) |
|
|
inline |
◆ errorDeltaTh
icl64f icl::geom::ICP3D::errorDeltaTh |
errorDeltaTh Threshold for the change of the error between to ICP-steps. If the error changed less than this threshold the ICP-loop converged and the accumulated transformation is returned.
◆ m_target
std::vector<ICP3DVec> icl::geom::ICP3D::m_target |
m_target Target for the ICP steps
◆ maxDist
icl32f icl::geom::ICP3D::maxDist |
maxDist Maximal distance allowed between two corresponding points
◆ maxIterations
uint32_t icl::geom::ICP3D::maxIterations |
maxIterations Maximum number of iterations
◆ octree
The documentation for this class was generated from the following file:
- /Users/alneuman/vm/icl/ICLGeom/src/ICLGeom/ICP3D.h