Open3D (C++ API)
0.14.1
|
#include <Model.h>
Public Member Functions | |
Model () | |
Model (float voxel_size, int block_resolution, int block_count, const core::Tensor &T_init=core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")), const core::Device &device=core::Device("CUDA:0")) | |
core::Tensor | GetCurrentFramePose () |
void | UpdateFramePose (int frame_id, const core::Tensor &T_frame_to_world) |
void | SynthesizeModelFrame (Frame &raycast_frame, float depth_scale, float depth_min, float depth_max, bool enable_color=true) |
odometry::OdometryResult | TrackFrameToModel (const Frame &input_frame, const Frame &raycast_frame, float depth_scale, float depth_max, float depth_diff) |
void | Integrate (const Frame &input_frame, float depth_scale, float depth_max) |
t::geometry::PointCloud | ExtractPointCloud (int estimated_number=-1, float weight_threshold=3.0f) |
t::geometry::TriangleMesh | ExtractTriangleMesh (int estimated_number=-1, float weight_threshold=3.0f) |
core::HashMap | GetHashMap () |
Get block hashmap int the TSDFVoxelGrid. More... | |
Data Fields | |
t::geometry::VoxelBlockGrid | voxel_grid_ |
Maintained volumetric map. More... | |
core::Tensor | frustum_block_coords_ |
core::Tensor | T_frame_to_world_ |
int | frame_id_ = -1 |
Model class maintaining a volumetric grid and the current active frame's pose. Wraps functionalities including integration, ray casting, and surface reconstruction.
|
inline |
open3d::t::pipelines::slam::Model::Model | ( | float | voxel_size, |
int | block_resolution, | ||
int | block_count, | ||
const core::Tensor & | T_init = core::Tensor::Eye(4, core::Float64, core::Device("CPU:0")) , |
||
const core::Device & | device = core::Device("CUDA:0") |
||
) |
t::geometry::PointCloud open3d::t::pipelines::slam::Model::ExtractPointCloud | ( | int | estimated_number = -1 , |
float | weight_threshold = 3.0f |
||
) |
Extract surface point cloud for visualization / model saving.
estimated_number | Estimation of the point cloud size, helpful for real-time visualization. |
weight_threshold | Weight threshold of the TSDF voxels to prune noise. |
t::geometry::TriangleMesh open3d::t::pipelines::slam::Model::ExtractTriangleMesh | ( | int | estimated_number = -1 , |
float | weight_threshold = 3.0f |
||
) |
Extract surface triangle mesh for visualization / model saving.
estimated_number | Estimation of the point cloud size, helpful for real-time visualization. |
weight_threshold | Weight threshold of the TSDF voxels to prune noise. |
|
inline |
core::HashMap open3d::t::pipelines::slam::Model::GetHashMap | ( | ) |
Get block hashmap int the TSDFVoxelGrid.
void open3d::t::pipelines::slam::Model::Integrate | ( | const Frame & | input_frame, |
float | depth_scale, | ||
float | depth_max | ||
) |
Integrate RGBD frame into the volumetric voxel grid.
input_frame | Input RGBD frame. |
depth_scale | Scale factor to convert raw data into meter metric. |
depth_max | Depth truncation to discard points far away from the camera. |
void open3d::t::pipelines::slam::Model::SynthesizeModelFrame | ( | Frame & | raycast_frame, |
float | depth_scale, | ||
float | depth_min, | ||
float | depth_max, | ||
bool | enable_color = true |
||
) |
Apply ray casting to obtain a synthesized model frame at the down sampled resolution.
raycast_frame | RGBD frame to fill the raycasting results. |
depth_scale | Scale factor to convert raw data into meter metric. |
depth_min | Depth where ray casting starts from. |
depth_max | Depth where ray casting stops at. |
odometry::OdometryResult open3d::t::pipelines::slam::Model::TrackFrameToModel | ( | const Frame & | input_frame, |
const Frame & | raycast_frame, | ||
float | depth_scale, | ||
float | depth_max, | ||
float | depth_diff | ||
) |
Track using PointToPlane depth odometry. TODO(wei): support hybrid or intensity methods.
input_frame | Input RGBD frame. |
raycast_frame | RGBD frame generated by raycasting. |
depth_scale | Scale factor to convert raw data into meter metric. |
depth_max | Depth truncation to discard points far away from the camera. |
|
inline |
int open3d::t::pipelines::slam::Model::frame_id_ = -1 |
core::Tensor open3d::t::pipelines::slam::Model::frustum_block_coords_ |
core::Tensor open3d::t::pipelines::slam::Model::T_frame_to_world_ |
T_frame_to_model, maintained tracking state in a (4, 4), Float64 Tensor on CPU.
t::geometry::VoxelBlockGrid open3d::t::pipelines::slam::Model::voxel_grid_ |
Maintained volumetric map.