Open3D (C++ API)
0.14.1
|
Data Structures | |
class | ICPConvergenceCriteria |
Class that defines the convergence criteria of ICP. More... | |
class | RegistrationResult |
class | RobustKernel |
class | TransformationEstimation |
class | TransformationEstimationForColoredICP |
class | TransformationEstimationPointToPlane |
class | TransformationEstimationPointToPoint |
Functions | |
RegistrationResult | EvaluateRegistration (const geometry::PointCloud &source, const geometry::PointCloud &target, double max_correspondence_distance, const core::Tensor &transformation=core::Tensor::Eye(4, core::Float64, core::Device("CPU:0"))) |
Function for evaluating registration between point clouds. More... | |
RegistrationResult | ICP (const geometry::PointCloud &source, const geometry::PointCloud &target, const double max_correspondence_distance, const core::Tensor &init_source_to_target=core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")), const TransformationEstimation &estimation=TransformationEstimationPointToPoint(), const ICPConvergenceCriteria &criteria=ICPConvergenceCriteria(), const double voxel_size=-1.0, const bool save_loss_log=false) |
Functions for ICP registration. More... | |
RegistrationResult | MultiScaleICP (const geometry::PointCloud &source, const geometry::PointCloud &target, const std::vector< double > &voxel_sizes, const std::vector< ICPConvergenceCriteria > &criteria_list, const std::vector< double > &max_correspondence_distances, const core::Tensor &init_source_to_target=core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")), const TransformationEstimation &estimation=TransformationEstimationPointToPoint(), const bool save_loss_log=false) |
Functions for Multi-Scale ICP registration. It will run ICP on different voxel level, from coarse to dense. The vector of ICPConvergenceCriteria(relative fitness, relative rmse, max_iterations) contains the stoping condition for each voxel level. The length of voxel_sizes vector, criteria vector, max_correspondence_distances vector must be same, and voxel_sizes must contain positive values in strictly decreasing order [Lower the voxel size, higher is the resolution]. Only the last value of the voxel_sizes vector can be {-1}, as it allows to run on the original scale without downsampling. More... | |
core::Tensor | GetInformationMatrix (const geometry::PointCloud &source, const geometry::PointCloud &target, const double max_correspondence_distance, const core::Tensor &transformation) |
Computes Information Matrix , from the transfromation between source and target pointcloud. It returns the Information Matrix of shape {6, 6}, of dtype Float64 on device CPU:0 . More... | |
RegistrationResult open3d::t::pipelines::registration::EvaluateRegistration | ( | const geometry::PointCloud & | source, |
const geometry::PointCloud & | target, | ||
double | max_correspondence_distance, | ||
const core::Tensor & | transformation = core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")) |
||
) |
Function for evaluating registration between point clouds.
source | The source point cloud. (Float32 or Float64 type). |
target | The target point cloud. (Float32 or Float64 type). |
max_correspondence_distance | Maximum correspondence points-pair distance. |
transformation | The 4x4 transformation matrix to transform source to target of dtype Float64 on CPU device. |
core::Tensor open3d::t::pipelines::registration::GetInformationMatrix | ( | const geometry::PointCloud & | source, |
const geometry::PointCloud & | target, | ||
const double | max_correspondence_distance, | ||
const core::Tensor & | transformation | ||
) |
Computes Information Matrix
, from the transfromation between source and target pointcloud. It returns the Information Matrix
of shape {6, 6}, of dtype Float64
on device CPU:0
.
source | The source point cloud. (Float32 or Float64 type). |
target | The target point cloud. (Float32 or Float64 type). |
max_correspondence_distance | Maximum correspondence points-pair distance. |
transformation | The 4x4 transformation matrix to transform source to target . |
RegistrationResult open3d::t::pipelines::registration::ICP | ( | const geometry::PointCloud & | source, |
const geometry::PointCloud & | target, | ||
const double | max_correspondence_distance, | ||
const core::Tensor & | init_source_to_target = core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")) , |
||
const TransformationEstimation & | estimation = TransformationEstimationPointToPoint() , |
||
const ICPConvergenceCriteria & | criteria = ICPConvergenceCriteria() , |
||
const double | voxel_size = -1.0 , |
||
const bool | save_loss_log = false |
||
) |
Functions for ICP registration.
source | The source point cloud. (Float32 or Float64 type). |
target | The target point cloud. (Float32 or Float64 type). |
max_correspondence_distance | Maximum correspondence points-pair distance. |
init_source_to_target | Initial transformation estimation of type Float64 on CPU. |
estimation | Estimation method. |
criteria | Convergence criteria. |
voxel_size | The input pointclouds will be down-sampled to this voxel_size scale. If voxel_size < 0, original scale will be used. However it is highly recommended to down-sample the point-cloud for performance. By default origianl scale of the point-cloud will be used. |
save_loss_log | When True , it saves the iteration-wise values of fitness , inlier_rmse , transformation , scale , iteration in a TensorMap loss_log_ in RegsitrationResult . Default: False. |
RegistrationResult open3d::t::pipelines::registration::MultiScaleICP | ( | const geometry::PointCloud & | source, |
const geometry::PointCloud & | target, | ||
const std::vector< double > & | voxel_sizes, | ||
const std::vector< ICPConvergenceCriteria > & | criteria_list, | ||
const std::vector< double > & | max_correspondence_distances, | ||
const core::Tensor & | init_source_to_target = core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")) , |
||
const TransformationEstimation & | estimation = TransformationEstimationPointToPoint() , |
||
const bool | save_loss_log = false |
||
) |
Functions for Multi-Scale ICP registration. It will run ICP on different voxel level, from coarse to dense. The vector of ICPConvergenceCriteria(relative fitness, relative rmse, max_iterations) contains the stoping condition for each voxel level. The length of voxel_sizes vector, criteria vector, max_correspondence_distances vector must be same, and voxel_sizes must contain positive values in strictly decreasing order [Lower the voxel size, higher is the resolution]. Only the last value of the voxel_sizes vector can be {-1}, as it allows to run on the original scale without downsampling.
source | The source point cloud. (Float32 or Float64 type). |
target | The target point cloud. (Float32 or Float64 type). |
voxel_sizes | VectorDouble of voxel scales of type double. |
criteria_list | Vector of ICPConvergenceCriteria objects for each scale. |
max_correspondence_distances | VectorDouble of maximum correspondence points-pair distances of type double, for each iteration. Must be of same length as voxel_sizes and criterias. |
init_source_to_target | Initial transformation estimation of type Float64 on CPU. |
estimation | Estimation method. |
save_loss_log | When True , it saves the iteration-wise values of fitness , inlier_rmse , transformation , scale , iteration in a TensorMap loss_log_ in RegsitrationResult . Default: False. |