Open3D (C++ API)  0.18.0
Loading...
Searching...
No Matches
Registration.h
Go to the documentation of this file.
1// ----------------------------------------------------------------------------
2// - Open3D: www.open3d.org -
3// ----------------------------------------------------------------------------
4// Copyright (c) 2018-2023 www.open3d.org
5// SPDX-License-Identifier: MIT
6// ----------------------------------------------------------------------------
7
8#pragma once
9
10#include "open3d/core/Tensor.h"
13
14namespace open3d {
15namespace t {
16namespace pipelines {
17namespace kernel {
18
33core::Tensor ComputePosePointToPlane(const core::Tensor &source_positions,
34 const core::Tensor &target_positions,
35 const core::Tensor &target_normals,
36 const core::Tensor &correspondence_indices,
37 const registration::RobustKernel &kernel);
38
61core::Tensor ComputePoseColoredICP(const core::Tensor &source_positions,
62 const core::Tensor &source_colors,
63 const core::Tensor &target_positions,
64 const core::Tensor &target_normals,
65 const core::Tensor &target_colors,
66 const core::Tensor &target_color_gradients,
67 const core::Tensor &correspondence_indices,
68 const registration::RobustKernel &kernel,
69 const double &lambda_geometric);
70
107core::Tensor ComputePoseDopplerICP(
108 const core::Tensor &source_points,
109 const core::Tensor &source_dopplers,
110 const core::Tensor &source_directions,
111 const core::Tensor &target_points,
112 const core::Tensor &target_normals,
113 const core::Tensor &correspondence_indices,
114 const core::Tensor &current_transform,
115 const core::Tensor &transform_vehicle_to_sensor,
116 const std::size_t iteration,
117 const double period,
118 const double lambda_doppler,
119 const bool reject_dynamic_outliers,
120 const double doppler_outlier_threshold,
121 const std::size_t outlier_rejection_min_iteration,
122 const std::size_t geometric_robust_loss_min_iteration,
123 const std::size_t doppler_robust_loss_min_iteration,
124 const registration::RobustKernel &geometric_kernel,
125 const registration::RobustKernel &doppler_kernel);
126
138std::tuple<core::Tensor, core::Tensor> ComputeRtPointToPoint(
139 const core::Tensor &source_positions,
140 const core::Tensor &target_positions,
141 const core::Tensor &correspondence_indices);
142
153core::Tensor ComputeInformationMatrix(
154 const core::Tensor &target_positions,
155 const core::Tensor &correspondence_indices);
156
157} // namespace kernel
158} // namespace pipelines
159} // namespace t
160} // namespace open3d
core::Tensor ComputePoseDopplerICP(const core::Tensor &source_points, const core::Tensor &source_dopplers, const core::Tensor &source_directions, const core::Tensor &target_points, const core::Tensor &target_normals, const core::Tensor &correspondence_indices, const core::Tensor &current_transform, const core::Tensor &transform_vehicle_to_sensor, const std::size_t iteration, const double period, const double lambda_doppler, const bool reject_dynamic_outliers, const double doppler_outlier_threshold, const std::size_t outlier_rejection_min_iteration, const std::size_t geometric_robust_loss_min_iteration, const std::size_t doppler_robust_loss_min_iteration, const registration::RobustKernel &geometric_kernel, const registration::RobustKernel &doppler_kernel)
Computes pose for DopplerICP registration method.
Definition Registration.cpp:98
core::Tensor ComputeInformationMatrix(const core::Tensor &target_points, const core::Tensor &correspondence_indices)
Computes Information Matrix of shape {6, 6}, of dtype Float64 on device CPU:0, from the target point ...
Definition Registration.cpp:280
core::Tensor ComputePoseColoredICP(const core::Tensor &source_points, const core::Tensor &source_colors, const core::Tensor &target_points, const core::Tensor &target_normals, const core::Tensor &target_colors, const core::Tensor &target_color_gradients, const core::Tensor &correspondence_indices, const registration::RobustKernel &kernel, const double &lambda_geometric)
Computes pose for colored-icp registration method.
Definition Registration.cpp:54
core::Tensor ComputePosePointToPlane(const core::Tensor &source_points, const core::Tensor &target_points, const core::Tensor &target_normals, const core::Tensor &correspondence_indices, const registration::RobustKernel &kernel)
Computes pose for point to plane registration method.
Definition Registration.cpp:19
std::tuple< core::Tensor, core::Tensor > ComputeRtPointToPoint(const core::Tensor &source_points, const core::Tensor &target_points, const core::Tensor &correspondence_indices)
Computes (R) Rotation {3,3} and (t) translation {3,} for point to point registration method.
Definition Registration.cpp:205
Definition PinholeCameraIntrinsic.cpp:16