ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP Class Reference

#include <GeneralizedICP.h>

Inheritance diagram for cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP:
Collaboration diagram for cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP:

Public Member Functions

 ~TransformationEstimationForGeneralizedICP () override=default
 
TransformationEstimationType GetTransformationEstimationType () const override
 
 TransformationEstimationForGeneralizedICP (double epsilon=1e-3, std::shared_ptr< RobustKernel > kernel=std::make_shared< L2Loss >())
 Constructor that takes as input a RobustKernel \params kernel Any of the implemented statistical robust kernel for outlier rejection. More...
 
double ComputeRMSE (const ccPointCloud &source, const ccPointCloud &target, const CorrespondenceSet &corres) const override
 
Eigen::Matrix4d ComputeTransformation (const ccPointCloud &source, const ccPointCloud &target, const CorrespondenceSet &corres) const override
 
- Public Member Functions inherited from cloudViewer::pipelines::registration::TransformationEstimation
 TransformationEstimation ()
 Default Constructor. More...
 
virtual ~TransformationEstimation ()
 

Public Attributes

double epsilon_ = 1e-3
 
std::shared_ptr< RobustKernelkernel_ = std::make_shared<L2Loss>()
 shared_ptr to an Abstract RobustKernel that could mutate at runtime. More...
 

Detailed Description

Definition at line 27 of file GeneralizedICP.h.

Constructor & Destructor Documentation

◆ ~TransformationEstimationForGeneralizedICP()

cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::~TransformationEstimationForGeneralizedICP ( )
overridedefault

◆ TransformationEstimationForGeneralizedICP()

cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::TransformationEstimationForGeneralizedICP ( double  epsilon = 1e-3,
std::shared_ptr< RobustKernel kernel = std::make_shared<L2Loss>() 
)
inlineexplicit

Constructor that takes as input a RobustKernel \params kernel Any of the implemented statistical robust kernel for outlier rejection.

Definition at line 38 of file GeneralizedICP.h.

Member Function Documentation

◆ ComputeRMSE()

double cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::ComputeRMSE ( const ccPointCloud source,
const ccPointCloud target,
const CorrespondenceSet corres 
) const
overridevirtual

Compute RMSE between source and target points cloud given correspondences.

Parameters
sourceSource point cloud.
targetTarget point cloud.
corresCorrespondence set between source and target point cloud.

Implements cloudViewer::pipelines::registration::TransformationEstimation.

Definition at line 76 of file GeneralizedICP.cpp.

References ccPointCloud::covariances_, and cloudViewer::PointCloudTpl< T >::getEigenPoint().

◆ ComputeTransformation()

Eigen::Matrix4d cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::ComputeTransformation ( const ccPointCloud source,
const ccPointCloud target,
const CorrespondenceSet corres 
) const
overridevirtual

Compute transformation from source to target point cloud given correspondences.

Parameters
sourceSource point cloud.
targetTarget point cloud.
corresCorrespondence set between source and target point cloud.

Implements cloudViewer::pipelines::registration::TransformationEstimation.

Definition at line 98 of file GeneralizedICP.cpp.

References ccPointCloud::covariances_, cloudViewer::PointCloudTpl< T >::getEigenPoint(), ccPointCloud::HasCovariances(), kernel_, cloudViewer::utility::SkewMatrix(), and cloudViewer::utility::SolveJacobianSystemAndObtainExtrinsicMatrix().

◆ GetTransformationEstimationType()

TransformationEstimationType cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::GetTransformationEstimationType ( ) const
inlineoverridevirtual

Member Data Documentation

◆ epsilon_

double cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::epsilon_ = 1e-3

◆ kernel_

std::shared_ptr<RobustKernel> cloudViewer::pipelines::registration::TransformationEstimationForGeneralizedICP::kernel_ = std::make_shared<L2Loss>()

shared_ptr to an Abstract RobustKernel that could mutate at runtime.

Definition at line 58 of file GeneralizedICP.h.

Referenced by ComputeTransformation(), and cloudViewer::pipelines::registration::pybind_registration_classes().


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