open3d.t.pipelines.slam.Model¶
- class open3d.t.pipelines.slam.Model¶
Volumetric model for Dense SLAM.
- __init__(*args, **kwargs)¶
Overloaded function.
- __init__(self: open3d.t.pipelines.slam.Model, arg0: open3d.t.pipelines.slam.Model) -> None
Copy constructor
- Parameters:
__init__(self: open3d.t.pipelines.slam.Model) -> None
- __init__(self: open3d.t.pipelines.slam.Model, voxel_size: typing.SupportsFloat , block_resolution: typing.SupportsInt , transformation: open3d.core.Tensor = [[1 0 0 0], [0 1 0 0], [0 0 1 0], [0 0 0 1]] Tensor[shape={4, 4}, stride={4, 1}, Float64, , device: open3d.core.Device = CUDA:0) -> None
Constructor of a VoxelBlockGrid
- Parameters:
voxel_size (SupportsFloat) – The voxel size of the volume in meters.
block_resolution (SupportsInt) – Resolution of local dense voxel blocks. By default 16 is used to create 16^3 voxel blocks.
transformation (open3d.core.Tensor, optional, default=[[1 0 0 0], [0 1 0 0], [0 0 1 0], [0 0 0 1]] Tensor[shape={4, 4}, stride={4, 1}, Float64) – A 4x4 3D transformation matrix. ()
(open3d.core.Device (device) – 0): The CPU or CUDA device used for the object.
optional – 0): The CPU or CUDA device used for the object.
default=CUDA – 0): The CPU or CUDA device used for the object.
- extract_pointcloud(self: open3d.t.pipelines.slam.Model, weight_threshold: SupportsFloat, estimated_number: SupportsInt) open3d.t.geometry.PointCloud¶
Extract point cloud from the volumetric model.
- Parameters:
weight_threshold (SupportsFloat) – Weight threshold to filter outlier voxel blocks.
estimated_number (SupportsInt) – Estimated number of surface points. Use -1 if no estimation is available.
- Returns:
open3d.t.geometry.PointCloud
- extract_trianglemesh(self: open3d.t.pipelines.slam.Model, weight_threshold: SupportsFloat, estimated_number: SupportsInt) open3d.t.geometry.TriangleMesh¶
Extract triangle mesh from the volumetric model.
- Parameters:
weight_threshold (SupportsFloat) – Weight threshold to filter outlier voxel blocks.
estimated_number (SupportsInt) – Estimated number of surface points. Use -1 if no estimation is available.
- Returns:
open3d.t.geometry.TriangleMesh
- get_current_frame_pose(self: open3d.t.pipelines.slam.Model) open3d.core.Tensor¶
- get_hashmap(self: open3d.t.pipelines.slam.Model) open3d.core.HashMap¶
Get the underlying hash map from 3D coordinates to voxel blocks.
- integrate(self: open3d.t.pipelines.slam.Model, input_frame: open3d.t.pipelines.slam.Frame, depth_scale: SupportsFloat, depth_max: SupportsFloat, trunc_voxel_multiplier: SupportsFloat) None¶
Integrate an input frame to a volume.
- Parameters:
input_frame (open3d.t.pipelines.slam.Frame) – The frame that contains raw depth and optionally images with the same size from the input.
depth_scale (SupportsFloat) – The scale factor to convert raw depth into meters.
depth_max (SupportsFloat) – The max clipping depth to filter noisy observations too far.
trunc_voxel_multiplier (SupportsFloat) – Truncation distance multiplier in voxel size for signed distance. For instance, –trunc_voxel_multiplier=8 with –voxel_size=0.006(m) creates a truncation distance of 0.048(m).
- Returns:
None
- synthesize_model_frame(self: open3d.t.pipelines.slam.Model, model_frame: open3d.t.pipelines.slam.Frame, depth_scale: SupportsFloat, depth_min: SupportsFloat, depth_max: SupportsFloat, trunc_voxel_multiplier: SupportsFloat, enable_color: bool = False, weight_threshold: SupportsFloat) None¶
Synthesize frame from the volumetric model using ray casting.
- Parameters:
model_frame (open3d.t.pipelines.slam.Frame) – The frame that contains ray casted depth and optionally color from the volumetric model.
depth_scale (SupportsFloat) – The scale factor to convert raw depth into meters.
depth_min (SupportsFloat) – The min clipping depth.
depth_max (SupportsFloat) – The max clipping depth to filter noisy observations too far.
trunc_voxel_multiplier (SupportsFloat) – Truncation distance multiplier in voxel size for signed distance. For instance, –trunc_voxel_multiplier=8 with –voxel_size=0.006(m) creates a truncation distance of 0.048(m).
enable_color (bool, optional, default=False)
weight_threshold (SupportsFloat) – Weight threshold to filter outlier voxel blocks.
- Returns:
None
- track_frame_to_model(self: open3d.t.pipelines.slam.Model, input_frame: open3d.t.pipelines.slam.Frame, model_frame: open3d.t.pipelines.slam.Frame, depth_scale: SupportsFloat, depth_max: SupportsFloat, depth_diff: SupportsFloat, method: open3d.t.pipelines.odometry.Method = Method.PointToPlane, criteria: collections.abc.Sequence[open3d.t.pipelines.odometry.OdometryConvergenceCriteria] = [OdometryConvergenceCriteria(max_iteration=6, relative_rmse=1.000000e-06, relative_fitness=1.000000e-06), OdometryConvergenceCriteria(max_iteration=3, relative_rmse=1.000000e-06, relative_fitness=1.000000e-06), OdometryConvergenceCriteria(max_iteration=1, relative_rmse=1.000000e-06, relative_fitness=1.000000e-06)]) open3d.t.pipelines.odometry.OdometryResult¶
Track input frame against raycasted frame from model.
- Parameters:
input_frame (open3d.t.pipelines.slam.Frame) – The frame that contains raw depth and optionally images with the same size from the input.
model_frame (open3d.t.pipelines.slam.Frame) – The frame that contains ray casted depth and optionally color from the volumetric model.
depth_scale (SupportsFloat) – The scale factor to convert raw depth into meters.
depth_max (SupportsFloat) – The max clipping depth to filter noisy observations too far.
depth_diff (SupportsFloat)
method (open3d.t.pipelines.odometry.Method, optional, default=Method.PointToPlane)
criteria (collections.abc.Sequence[open3d.t.pipelines.odometry.OdometryConvergenceCriteria], optional, default=[OdometryConvergenceCriteria(max_iteration=6, relative_rmse=1.000000e-06, relative_fitness=1.000000e-06), OdometryConvergenceCriteria(max_iteration=3, relative_rmse=1.000000e-06, relative_fitness=1.000000e-06), OdometryConvergenceCriteria(max_iteration=1, relative_rmse=1.000000e-06, relative_fitness=1.000000e-06)])
- Returns:
open3d.t.pipelines.odometry.OdometryResult
- update_frame_pose(self: open3d.t.pipelines.slam.Model, arg0: SupportsInt | SupportsIndex, arg1: open3d.core.Tensor) None¶
- property frame_id¶
Get the current frame index in a sequence.
- property frustum_block_coords¶
Active block coordinates from prior integration
- property transformation_frame_to_world¶
Get the 4x4 transformation matrix from the current frame to the world frame.
- property voxel_grid¶
Get the maintained VoxelBlockGrid.