Open3D (C++ API)  0.18.0+5c982c7
Public Member Functions | Data Fields
open3d::t::pipelines::registration::TransformationEstimationPointToPlane Class Reference

#include <TransformationEstimation.h>

Inheritance diagram for open3d::t::pipelines::registration::TransformationEstimationPointToPlane:
open3d::t::pipelines::registration::TransformationEstimation

Public Member Functions

 TransformationEstimationPointToPlane ()
 Default constructor. More...
 
 ~TransformationEstimationPointToPlane () override
 
 TransformationEstimationPointToPlane (const RobustKernel &kernel)
 Constructor that takes as input a RobustKernel. More...
 
TransformationEstimationType GetTransformationEstimationType () const override
 
double ComputeRMSE (const geometry::PointCloud &source, const geometry::PointCloud &target, const core::Tensor &correspondences) const override
 Computes RMSE (double) for PointToPlane method, between two pointclouds, given correspondences. More...
 
core::Tensor ComputeTransformation (const geometry::PointCloud &source, const geometry::PointCloud &target, const core::Tensor &correspondences, const core::Tensor &current_transform=core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")), const std::size_t iteration=0) const override
 Estimates the transformation matrix for PointToPlane method, a tensor of shape {4, 4}, and dtype Float64 on CPU device. More...
 
- Public Member Functions inherited from open3d::t::pipelines::registration::TransformationEstimation
 TransformationEstimation ()
 Default Constructor. More...
 
virtual ~TransformationEstimation ()
 

Data Fields

RobustKernel kernel_ = RobustKernel(RobustKernelMethod::L2Loss, 1.0, 1.0)
 RobustKernel for outlier rejection. More...
 

Detailed Description

Class to estimate a transformation matrix tensor of shape {4, 4}, dtype Float64, on CPU device for point to plane distance.

Constructor & Destructor Documentation

◆ TransformationEstimationPointToPlane() [1/2]

open3d::t::pipelines::registration::TransformationEstimationPointToPlane::TransformationEstimationPointToPlane ( )
inline

Default constructor.

◆ ~TransformationEstimationPointToPlane()

open3d::t::pipelines::registration::TransformationEstimationPointToPlane::~TransformationEstimationPointToPlane ( )
inlineoverride

◆ TransformationEstimationPointToPlane() [2/2]

open3d::t::pipelines::registration::TransformationEstimationPointToPlane::TransformationEstimationPointToPlane ( const RobustKernel kernel)
inlineexplicit

Constructor that takes as input a RobustKernel.

Parameters
kernelAny of the implemented statistical robust kernel for outlier rejection.

Member Function Documentation

◆ ComputeRMSE()

double open3d::t::pipelines::registration::TransformationEstimationPointToPlane::ComputeRMSE ( const geometry::PointCloud source,
const geometry::PointCloud target,
const core::Tensor correspondences 
) const
overridevirtual

Computes RMSE (double) for PointToPlane method, between two pointclouds, given correspondences.

Parameters
sourceSource pointcloud. (Float32 or Float64 type).
targetTarget pointcloud. (Float32 or Float64 type). It must contain normals of the same shape and dtype as the positions.
correspondencesTensor of type Int64 containing indices of corresponding target points, where the value is the target index and the index of the value itself is the source index. It contains -1 as value at index with no correspondence.

Implements open3d::t::pipelines::registration::TransformationEstimation.

◆ ComputeTransformation()

core::Tensor open3d::t::pipelines::registration::TransformationEstimationPointToPlane::ComputeTransformation ( const geometry::PointCloud source,
const geometry::PointCloud target,
const core::Tensor correspondences,
const core::Tensor current_transform = core::Tensor::Eye(4, core::Float64core::Device("CPU:0")),
const std::size_t  iteration = 0 
) const
overridevirtual

Estimates the transformation matrix for PointToPlane method, a tensor of shape {4, 4}, and dtype Float64 on CPU device.

Parameters
sourceSource pointcloud. (Float32 or Float64 type).
targetTarget pointcloud. (Float32 or Float64 type). It must contain normals of the same shape and dtype as the positions.
correspondencesTensor of type Int64 containing indices of corresponding target points, where the value is the target index and the index of the value itself is the source index. It contains -1 as value at index with no correspondence.
current_transformThe current pose estimate of ICP.
iterationThe current iteration number of the ICP algorithm.
Returns
transformation between source to target, a tensor of shape {4, 4}, type Float64 on CPU device.

Implements open3d::t::pipelines::registration::TransformationEstimation.

◆ GetTransformationEstimationType()

TransformationEstimationType open3d::t::pipelines::registration::TransformationEstimationPointToPlane::GetTransformationEstimationType ( ) const
inlineoverridevirtual

Field Documentation

◆ kernel_

RobustKernel open3d::t::pipelines::registration::TransformationEstimationPointToPlane::kernel_ = RobustKernel(RobustKernelMethod::L2Loss, 1.0, 1.0)

RobustKernel for outlier rejection.


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