Skip to main content

Module registration

Module registration 

Source
Expand description

Registration algorithms

Structs§

CloudScale
Where a cloud sits and how big it is: the centroid of its finite points and their RMS distance from it. ICP uses both to judge whether an update still moves the points by a meaningful amount.
ICPResult
Result of ICP registration
IcpScaleLevel
One level in a coarse-to-fine ICP pyramid.
LocalFrame
A frame centred on a point cloud, for running registration in f32.
MultiScaleIcpConfig
Coarse-to-fine point-to-point ICP configuration.

Functions§

icp
ICP (Iterative Closest Point) registration - Main function matching requested API
icp_converged
Decide whether ICP has converged. Both tests are relative, so they behave the same on a small indoor scan as on a large outdoor one (an absolute change in MSE does not: MSE shrinks with the square of the scene size).
icp_detailed
Detailed ICP registration with comprehensive options and result
icp_legacyDeprecated
Legacy ICP function with different signature for backward compatibility
icp_point_to_plane
Point-to-plane ICP variant (requires target normals).
icp_point_to_plane_detailed
Detailed point-to-plane ICP with full parameter control.
icp_point_to_point
Point-to-point ICP registration
icp_point_to_point_default
Point-to-point ICP registration with default parameters
multiscale_icp_point_to_point
Coarse-to-fine point-to-point ICP using voxel downsampling at each scale.
rigid_transform_from_sums
Best rigid transform taking a set of source points onto their matched target points (Kabsch / SVD), from running sums over the matched pairs: the pair count, the sums of source and target points, and the sum of source * targetᵀ. Used by the CPU ICP and by the GPU ICP in threecrate-gpu, which computes the sums on the GPU.