cpd  0.5.1
Coherent Point Drift: C++ library for point set registration
Public Member Functions | List of all members
cpd::Nonrigid Class Reference

Nonrigid coherent point drift. More...

#include <nonrigid.hpp>

Inheritance diagram for cpd::Nonrigid:
cpd::Transform< NonrigidResult >

Public Member Functions

void init (const Matrix &fixed, const Matrix &moving)
 Initialize this transform for the provided matrices. More...
 
void modify_probabilities (Probabilities &probabilities) const
 Modifies the probabilities with some affinity and weight information. More...
 
Nonrigidbeta (double beta)
 Sets the beta. More...
 
Nonrigidlambda (double lambda)
 Sets the lambda. More...
 
NonrigidResult compute_one (const Matrix &fixed, const Matrix &moving, const Probabilities &probabilities, double sigma2) const
 Computes one iteration of the nonrigid transformation. More...
 
Nonrigidlinked (bool linked)
 Sets whether the scalings of the two datasets are linked. More...
 
virtual bool linked () const
 Returns true if the normalization should be linked. More...
 
- Public Member Functions inherited from cpd::Transform< NonrigidResult >
Transformcorrespondence (bool correspondence)
 Sets whether the correspondence vector will be computed. More...
 
Transformgauss_transform (std::unique_ptr< GaussTransform > gauss_transform)
 Sets the gauss transform. More...
 
Transformmax_iterations (double max_iterations)
 Sets the max iterations for this transform. More...
 
Transformnormalize (bool normalize)
 Sets whether to normalize the points before running cpd. More...
 
Transformoutliers (double outliers)
 Sets the outlier tolerance. More...
 
Transformsigma2 (double sigma2)
 Sets the sigma2 value for this transform. More...
 
Transformtolerance (double tolerance)
 Sets the final tolerance. More...
 
NonrigidResult run (Matrix fixed, Matrix moving)
 Runs this transform for the provided matrices. More...
 

Detailed Description

Nonrigid coherent point drift.

Member Function Documentation

Nonrigid& cpd::Nonrigid::beta ( double  beta)
inline

Sets the beta.

NonrigidResult cpd::Nonrigid::compute_one ( const Matrix fixed,
const Matrix moving,
const Probabilities probabilities,
double  sigma2 
) const
virtual

Computes one iteration of the nonrigid transformation.

Implements cpd::Transform< NonrigidResult >.

void cpd::Nonrigid::init ( const Matrix fixed,
const Matrix moving 
)
virtual

Initialize this transform for the provided matrices.

Reimplemented from cpd::Transform< NonrigidResult >.

Nonrigid& cpd::Nonrigid::lambda ( double  lambda)
inline

Sets the lambda.

Nonrigid& cpd::Nonrigid::linked ( bool  linked)
inline

Sets whether the scalings of the two datasets are linked.

virtual bool cpd::Nonrigid::linked ( ) const
inlinevirtual

Returns true if the normalization should be linked.

No effect if no normalization is applied.

Implements cpd::Transform< NonrigidResult >.

void cpd::Nonrigid::modify_probabilities ( Probabilities probabilities) const
virtual

Modifies the probabilities with some affinity and weight information.

Reimplemented from cpd::Transform< NonrigidResult >.


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