MeshLib
 
Loading...
Searching...
No Matches
MR::ICPProperties Struct Reference

#include <MRICP.h>

Public Attributes

ICPMethod method = ICPMethod::PointToPlane
 The method how to update transformation from point pairs.
 
float p2plAngleLimit = PI_F / 6.0f
 Rotation angle during one iteration of PointToPlane will be limited by this value.
 
float p2plScaleLimit = 2
 Scaling during one iteration of PointToPlane will be limited by this value.
 
float cosTreshold = 0.7f
 Points pair will be counted only if cosine between surface normals in points is higher.
 
float distThresholdSq = 1.f
 Points pair will be counted only if squared distance between points is lower than.
 
float farDistFactor = 3.f
 
ICPMode icpMode = ICPMode::AnyRigidXf
 Finds only translation. Rotation part is identity matrix.
 
Vector3f fixedRotationAxis
 If this vector is not zero then rotation is allowed relative to this axis only.
 
int iterLimit = 10
 maximum iterations
 
int badIterStopCount = 3
 maximum iterations without improvements
 
float exitVal = 0
 Algorithm target root-mean-square distance. As soon as it is reached, the algorithm stops.
 
bool mutualClosest = false
 a pair of points is formed only if both points in the pair are mutually closest (reciprocity test passed)
 

Member Data Documentation

◆ badIterStopCount

int MR::ICPProperties::badIterStopCount = 3

maximum iterations without improvements

◆ cosTreshold

float MR::ICPProperties::cosTreshold = 0.7f

Points pair will be counted only if cosine between surface normals in points is higher.

◆ distThresholdSq

float MR::ICPProperties::distThresholdSq = 1.f

Points pair will be counted only if squared distance between points is lower than.

◆ exitVal

float MR::ICPProperties::exitVal = 0

Algorithm target root-mean-square distance. As soon as it is reached, the algorithm stops.

◆ farDistFactor

float MR::ICPProperties::farDistFactor = 3.f

Points pair will be counted only if distance between points is lower than root-mean-square distance times this factor

◆ fixedRotationAxis

Vector3f MR::ICPProperties::fixedRotationAxis

If this vector is not zero then rotation is allowed relative to this axis only.

◆ icpMode

ICPMode MR::ICPProperties::icpMode = ICPMode::AnyRigidXf

Finds only translation. Rotation part is identity matrix.

◆ iterLimit

int MR::ICPProperties::iterLimit = 10

maximum iterations

◆ method

ICPMethod MR::ICPProperties::method = ICPMethod::PointToPlane

The method how to update transformation from point pairs.

◆ mutualClosest

bool MR::ICPProperties::mutualClosest = false

a pair of points is formed only if both points in the pair are mutually closest (reciprocity test passed)

◆ p2plAngleLimit

float MR::ICPProperties::p2plAngleLimit = PI_F / 6.0f

Rotation angle during one iteration of PointToPlane will be limited by this value.

◆ p2plScaleLimit

float MR::ICPProperties::p2plScaleLimit = 2

Scaling during one iteration of PointToPlane will be limited by this value.


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