Open3D (C++ API)  0.18.0
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 
14 namespace open3d {
15 namespace t {
16 namespace pipelines {
17 namespace kernel {
18 
33 core::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 
61 core::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 
107 core::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 
138 std::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 
153 core::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
const char const char value recording_handle imu_sample recording_handle uint8_t size_t data_size k4a_record_configuration_t config target_format k4a_capture_t capture_handle k4a_imu_sample_t imu_sample playback_handle k4a_logging_message_cb_t void min_level device_handle k4a_imu_sample_t timeout_in_ms capture_handle capture_handle capture_handle image_handle temperature_c k4a_image_t image_handle uint8_t image_handle image_handle image_handle image_handle image_handle timestamp_usec white_balance image_handle k4a_device_configuration_t config device_handle char size_t serial_number_size bool int32_t int32_t int32_t int32_t k4a_color_control_mode_t default_mode value const const k4a_calibration_t calibration char size_t
Definition: K4aPlugin.cpp:719
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