ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
ccRegistrationTools Class Reference

Registration tools wrapper. More...

#include <ecvRegistrationTools.h>

Static Public Member Functions

static bool ICP (ccHObject *data, ccHObject *model, ccGLMatrix &transMat, double &finalScale, double &finalRMS, unsigned &finalPointCount, const cloudViewer::ICPRegistrationTools::Parameters &inputParameters, bool useDataSFAsWeights=false, bool useModelSFAsWeights=false, QWidget *parent=nullptr)
 Applies ICP registration on two entities. More...
 

Detailed Description

Registration tools wrapper.

Definition at line 21 of file ecvRegistrationTools.h.

Member Function Documentation

◆ ICP()

bool ccRegistrationTools::ICP ( ccHObject data,
ccHObject model,
ccGLMatrix transMat,
double &  finalScale,
double &  finalRMS,
unsigned &  finalPointCount,
const cloudViewer::ICPRegistrationTools::Parameters inputParameters,
bool  useDataSFAsWeights = false,
bool  useModelSFAsWeights = false,
QWidget *  parent = nullptr 
)
static

Applies ICP registration on two entities.

Warning
Automatically samples points on meshes if necessary (see code for magic numbers ;)

Definition at line 36 of file ecvRegistrationTools.cpp.

References Garbage< C >::add(), cloudViewer::ReferenceCloud::addPointIndex(), ccPointCloud::addScalarField(), cloudViewer::ReferenceCloud::capacity(), ccDrawableObject::colorsShown(), cloudViewer::DistanceComputationTools::computeApproxCloud2CloudDistance(), cloudViewer::DistanceComputationTools::computeCloud2MeshDistances(), count, ccPointCloud::deleteScalarField(), cloudViewer::GenericCloud::enableScalarField(), CVLog::Error(), cloudViewer::DistanceComputationTools::Cloud2MeshDistancesComputationParams::flipNormals, cloudViewer::utility::floor(), ccGenericMesh::getAssociatedCloud(), ccPointCloud::getCurrentDisplayedScalarField(), cloudViewer::PointCloudTpl< T >::getCurrentInScalarFieldIndex(), cloudViewer::GenericCloud::getPointScalarValue(), cloudViewer::PointCloudTpl< T >::getScalarFieldIndexByName(), cloudViewer::ICPRegistrationTools::ICP_APPLY_TRANSFO, cloudViewer::ICPRegistrationTools::ICP_ERROR, ccObject::isA(), ccObject::isKindOf(), max(), cloudViewer::DistanceComputationTools::Cloud2MeshDistancesComputationParams::maxSearchDist, CV_TYPES::MESH, min(), cloudViewer::DistanceComputationTools::Cloud2MeshDistancesComputationParams::multiThread, cloudViewer::DistanceComputationTools::Cloud2MeshDistancesComputationParams::octreeLevel, ParallelSort, params, CV_TYPES::POINT_CLOUD, CVLog::Print(), cloudViewer::PointProjectionTools::Transformation::R, cloudViewer::ICPRegistrationTools::Register(), REGISTRATION_DISTS_SF, cloudViewer::ReferenceCloud::reserve(), cloudViewer::ReferenceCloud::resize(), result, cloudViewer::PointProjectionTools::Transformation::s, s_defaultSampledPointsOnDataMesh, cloudViewer::MeshSamplingTools::samplePointsOnMesh(), cloudViewer::PointCloudTpl< T >::setCurrentScalarField(), ccDrawableObject::sfShown(), ccDrawableObject::showColors(), ccDrawableObject::showSF(), cloudViewer::DistanceComputationTools::Cloud2MeshDistancesComputationParams::signedDistances, cloudViewer::GenericCloud::size(), cloudViewer::ReferenceCloud::size(), cloudViewer::PointProjectionTools::Transformation::T, ccHObjectCaster::ToGenericMesh(), ccHObjectCaster::ToGenericPointCloud(), ccHObjectCaster::ToPointCloud(), cloudViewer::DistanceComputationTools::Cloud2MeshDistancesComputationParams::useDistanceMap, and CVLog::Warning().

Referenced by ccLibAlgorithms::ApplyScaleMatchingAlgorithm(), and CommandICP::process().


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