MeshLib
 
Loading...
Searching...
No Matches
MRICPEnums.h
Go to the documentation of this file.
1#pragma once
2namespace MR
3{
5enum class ICPMethod
6{
7 Combined = 0,
8 PointToPoint = 1,
10 PointToPlane = 2
12};
13
23
24// types of exit conditions in calculation
25enum class ICPExitType {
26 NotStarted, // calculation is not started yet
27 NotFoundSolution, // solution not found in some iteration
28 MaxIterations, // iteration limit reached
29 MaxBadIterations, // limit of non-improvement iterations in a row reached
30 StopMsdReached // stop mean square deviation reached
31};
32}
Definition MRCameraOrientationPlugin.h:7
ICPMode
The group of transformations, each with its own degrees of freedom.
Definition MRICPEnums.h:16
@ AnyRigidXf
rigid body transformation (6 degrees of freedom)
@ TranslationOnly
only translation (3 degrees of freedom)
@ OrthogonalAxis
rigid body transformation with rotation except argument axis (5 degrees of freedom)
@ RigidScale
rigid body transformation with uniform scaling (7 degrees of freedom)
@ FixedAxis
rigid body transformation with rotation around given axis only (4 degrees of freedom)
ICPExitType
Definition MRICPEnums.h:25
ICPMethod
The method how to update transformation from point pairs.
Definition MRICPEnums.h:6
@ Combined
PointToPoint for the first 2 iterations, and PointToPlane for the remaining iterations.
@ PointToPlane
converge much faster than PointToPoint in case of many good (with not all points/normals in one plane...
@ PointToPoint
it is the safest approach but can converge slowly