MeshLib Python Docs
Loading...
Searching...
No Matches
mrmeshpy.ICP Class Reference

Public Member Functions

None __init__ (self, MeshOrPoints flt, MeshOrPoints ref, AffineXf3f fltXf, AffineXf3f refXf, VertBitSet fltSamples='{}', VertBitSet refSamples='{}')
 
None __init__ (self, MeshOrPointsXf flt, MeshOrPointsXf ref, VertBitSet fltSamples='{}', VertBitSet refSamples='{}')
 
None __init__ (self, MeshOrPoints flt, MeshOrPoints ref, AffineXf3f fltXf, AffineXf3f refXf, float samplingVoxelSize)
 
None __init__ (self, MeshOrPointsXf flt, MeshOrPointsXf ref, float samplingVoxelSize)
 
None __init__ (self, ICP arg0)
 
AffineXf3f autoSelectFloatXf (self)
 
AffineXf3f calculateTransformation (self)
 
PointPairs getFlt2RefPairs (self)
 
str getLastICPInfo (self)
 
float getMeanSqDistToPlane (self)
 
float getMeanSqDistToPoint (self)
 
int getNumActivePairs (self)
 
int getNumSamples (self)
 
ICPProperties getParams (self)
 
PointPairs getRef2FltPairs (self)
 
str getStatusInfo (self)
 
None recomputeBitSet (self, float fltSamplingVoxelSize)
 
None sampleFltPoints (self, float samplingVoxelSize)
 
None samplePoints (self, float samplingVoxelSize)
 
None sampleRefPoints (self, float samplingVoxelSize)
 
None setBadIterCount (self, int iter)
 
None setCosineLimit (self, float cos)
 
None setDistanceLimit (self, float dist)
 
None setFarDistFactor (self, float factor)
 
None setFloatXf (self, AffineXf3f fltXf)
 
None setFltSamples (self, VertBitSet fltSamples)
 
None setParams (self, ICPProperties prop)
 
None setRefSamples (self, VertBitSet refSamples)
 
None setXfs (self, AffineXf3f fltXf, AffineXf3f refXf)
 
None updatePointPairs (self)
 

Static Protected Member Functions

 _pybind11_conduit_v1_ (*args, **kwargs)
 

Detailed Description

Generated from:  MR::ICP

This class allows you to register two object with similar shape using
Iterative Closest Points (ICP) point-to-point or point-to-plane algorithms

Constructor & Destructor Documentation

◆ __init__() [1/5]

None mrmeshpy.ICP.__init__ ( self,
MeshOrPoints flt,
MeshOrPoints ref,
AffineXf3f fltXf,
AffineXf3f refXf,
VertBitSet fltSamples = '{}',
VertBitSet refSamples = '{}' )
Constructs ICP framework with given sample points on both objects
\\param flt floating object
\\param ref reference object
\\param fltXf transformation from floating object space to global space
\\param refXf transformation from reference object space to global space
\\param fltSamples samples on floating object to find projections on the reference object during the algorithm
\\param refSamples samples on reference object to find projections on the floating object during the algorithm

◆ __init__() [2/5]

None mrmeshpy.ICP.__init__ ( self,
MeshOrPointsXf flt,
MeshOrPointsXf ref,
VertBitSet fltSamples = '{}',
VertBitSet refSamples = '{}' )

◆ __init__() [3/5]

None mrmeshpy.ICP.__init__ ( self,
MeshOrPoints flt,
MeshOrPoints ref,
AffineXf3f fltXf,
AffineXf3f refXf,
float samplingVoxelSize )
Constructs ICP framework with automatic points sampling on both objects
\\param flt floating object
\\param ref reference object
\\param fltXf transformation from floating object space to global space
\\param refXf transformation from reference object space to global space
\\param samplingVoxelSize approximate distance between samples on each of two objects

◆ __init__() [4/5]

None mrmeshpy.ICP.__init__ ( self,
MeshOrPointsXf flt,
MeshOrPointsXf ref,
float samplingVoxelSize )

◆ __init__() [5/5]

None mrmeshpy.ICP.__init__ ( self,
ICP arg0 )
Implicit copy constructor.

Member Function Documentation

◆ _pybind11_conduit_v1_()

mrmeshpy.ICP._pybind11_conduit_v1_ ( * args,
** kwargs )
staticprotected

◆ autoSelectFloatXf()

AffineXf3f mrmeshpy.ICP.autoSelectFloatXf ( self)
automatically selects initial transformation for the floating object
based on covariance matrices of both floating and reference objects;
applies the transformation to the floating object and returns it

◆ calculateTransformation()

AffineXf3f mrmeshpy.ICP.calculateTransformation ( self)
runs ICP algorithm given input objects, transformations, and parameters;
\\return adjusted transformation of the floating object to match reference object

◆ getFlt2RefPairs()

PointPairs mrmeshpy.ICP.getFlt2RefPairs ( self)
returns current pairs formed from samples on floating object and projections on reference object

◆ getLastICPInfo()

str mrmeshpy.ICP.getLastICPInfo ( self)

◆ getMeanSqDistToPlane()

float mrmeshpy.ICP.getMeanSqDistToPlane ( self)
computes root-mean-square deviation from points to target planes

◆ getMeanSqDistToPoint()

float mrmeshpy.ICP.getMeanSqDistToPoint ( self)
computes root-mean-square deviation between points

◆ getNumActivePairs()

int mrmeshpy.ICP.getNumActivePairs ( self)
computes the number of active point pairs

◆ getNumSamples()

int mrmeshpy.ICP.getNumSamples ( self)
computes the number of samples able to form pairs

◆ getParams()

ICPProperties mrmeshpy.ICP.getParams ( self)

◆ getRef2FltPairs()

PointPairs mrmeshpy.ICP.getRef2FltPairs ( self)
returns current pairs formed from samples on reference object and projections on floating object

◆ getStatusInfo()

str mrmeshpy.ICP.getStatusInfo ( self)

◆ recomputeBitSet()

None mrmeshpy.ICP.recomputeBitSet ( self,
float fltSamplingVoxelSize )

◆ sampleFltPoints()

None mrmeshpy.ICP.sampleFltPoints ( self,
float samplingVoxelSize )

◆ samplePoints()

None mrmeshpy.ICP.samplePoints ( self,
float samplingVoxelSize )
select pairs with origin samples on both objects

◆ sampleRefPoints()

None mrmeshpy.ICP.sampleRefPoints ( self,
float samplingVoxelSize )

◆ setBadIterCount()

None mrmeshpy.ICP.setBadIterCount ( self,
int iter )

◆ setCosineLimit()

None mrmeshpy.ICP.setCosineLimit ( self,
float cos )

◆ setDistanceLimit()

None mrmeshpy.ICP.setDistanceLimit ( self,
float dist )

◆ setFarDistFactor()

None mrmeshpy.ICP.setFarDistFactor ( self,
float factor )

◆ setFloatXf()

None mrmeshpy.ICP.setFloatXf ( self,
AffineXf3f fltXf )
sets to-world transformation for the floating object

◆ setFltSamples()

None mrmeshpy.ICP.setFltSamples ( self,
VertBitSet fltSamples )
select pairs with origin samples on floating object

◆ setParams()

None mrmeshpy.ICP.setParams ( self,
ICPProperties prop )
tune algorithm params before run calculateTransformation()

◆ setRefSamples()

None mrmeshpy.ICP.setRefSamples ( self,
VertBitSet refSamples )
select pairs with origin samples on reference object

◆ setXfs()

None mrmeshpy.ICP.setXfs ( self,
AffineXf3f fltXf,
AffineXf3f refXf )
sets to-world transformations both for floating and reference objects

◆ updatePointPairs()

None mrmeshpy.ICP.updatePointPairs ( self)
recompute point pairs after manual change of transformations or parameters

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