Loading [MathJax]/extensions/TeX/AMSsymbols.js
Open3D (C++ API)  0.14.1
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Data Structures | Functions
open3d::t::geometry::kernel::tsdf Namespace Reference

Data Structures

struct  ColoredVoxel16i
 
struct  ColoredVoxel32f
 
struct  Coord3i
 
struct  Coord3iHash
 
struct  MiniVecCache
 
struct  Voxel32f
 

Functions

template<typename voxel_t >
OPEN3D_DEVICE voxel_t * DeviceGetVoxelAt (int xo, int yo, int zo, int curr_block_idx, int resolution, const NDArrayIndexer &nb_block_masks_indexer, const NDArrayIndexer &nb_block_indices_indexer, const NDArrayIndexer &blocks_indexer)
 
template<typename voxel_t >
OPEN3D_DEVICE void DeviceGetNormalAt (int xo, int yo, int zo, int curr_block_idx, float *n, int resolution, float voxel_size, const NDArrayIndexer &nb_block_masks_indexer, const NDArrayIndexer &nb_block_indices_indexer, const NDArrayIndexer &blocks_indexer)
 
OPEN3D_DEVICE int64_t DeviceGetLinearIdx (int xo, int yo, int zo, int curr_block_idx, int resolution, const NDArrayIndexer &nb_block_masks_indexer, const NDArrayIndexer &nb_block_indices_indexer)
 
void Touch (std::shared_ptr< core::HashMap > &hashmap, const core::Tensor &points, core::Tensor &voxel_block_coords, int64_t voxel_grid_resolution, float voxel_size, float sdf_trunc)
 
void Integrate (const core::Tensor &depth, const core::Tensor &color, const core::Tensor &block_indices, const core::Tensor &block_keys, core::Tensor &block_values, const core::Tensor &intrinsics, const core::Tensor &extrinsics, int64_t resolution, float voxel_size, float sdf_trunc, float depth_scale, float depth_max)
 
void EstimateRange (const core::Tensor &block_keys, core::Tensor &range_minmax_map, const core::Tensor &intrinsics, const core::Tensor &extrinsics, int h, int w, int down_factor, int64_t block_resolution, float voxel_size, float depth_min, float depth_max)
 
void RayCast (std::shared_ptr< core::DeviceHashBackend > &hashmap, const core::Tensor &block_values, const core::Tensor &range_map, core::Tensor &vertex_map, core::Tensor &depth_map, core::Tensor &color_map, core::Tensor &normal_map, const core::Tensor &intrinsics, const core::Tensor &extrinsics, int h, int w, int64_t block_resolution, float voxel_size, float sdf_trunc, float depth_scale, float depth_min, float depth_max, float weight_threshold)
 
void ExtractSurfacePoints (const core::Tensor &block_indices, const core::Tensor &nb_block_indices, const core::Tensor &nb_block_masks, const core::Tensor &block_keys, const core::Tensor &block_values, core::Tensor &points, utility::optional< std::reference_wrapper< core::Tensor >> normals, utility::optional< std::reference_wrapper< core::Tensor >> colors, int64_t block_resolution, float voxel_size, float weight_threshold, int &valid_size)
 
void ExtractSurfaceMesh (const core::Tensor &block_indices, const core::Tensor &inv_block_indices, const core::Tensor &nb_block_indices, const core::Tensor &nb_block_masks, const core::Tensor &block_keys, const core::Tensor &block_values, core::Tensor &vertices, core::Tensor &triangles, utility::optional< std::reference_wrapper< core::Tensor >> vertex_normals, utility::optional< std::reference_wrapper< core::Tensor >> vertex_colors, int64_t block_resolution, float voxel_size, float weight_threshold, int &vertex_count)
 
void TouchCPU (std::shared_ptr< core::HashMap > &hashmap, const core::Tensor &points, core::Tensor &voxel_block_coords, int64_t voxel_grid_resolution, float voxel_size, float sdf_trunc)
 
void IntegrateCPU (const core::Tensor &depth, const core::Tensor &color, const core::Tensor &block_indices, const core::Tensor &block_keys, core::Tensor &block_values, const core::Tensor &intrinsics, const core::Tensor &extrinsics, int64_t resolution, float voxel_size, float sdf_trunc, float depth_scale, float depth_max)
 
void EstimateRangeCPU (const core::Tensor &block_keys, core::Tensor &range_minmax_map, const core::Tensor &intrinsics, const core::Tensor &extrinsics, int h, int w, int down_factor, int64_t block_resolution, float voxel_size, float depth_min, float depth_max)
 
void RayCastCPU (std::shared_ptr< core::DeviceHashBackend > &hashmap, const core::Tensor &block_values, const core::Tensor &range_map, core::Tensor &vertex_map, core::Tensor &depth_map, core::Tensor &color_map, core::Tensor &normal_map, const core::Tensor &intrinsics, const core::Tensor &extrinsics, int h, int w, int64_t block_resolution, float voxel_size, float sdf_trunc, float depth_scale, float depth_min, float depth_max, float weight_threshold)
 
void ExtractSurfacePointsCPU (const core::Tensor &block_indices, const core::Tensor &nb_block_indices, const core::Tensor &nb_block_masks, const core::Tensor &block_keys, const core::Tensor &block_values, core::Tensor &points, utility::optional< std::reference_wrapper< core::Tensor >> normals, utility::optional< std::reference_wrapper< core::Tensor >> colors, int64_t block_resolution, float voxel_size, float weight_threshold, int &valid_size)
 
void ExtractSurfaceMeshCPU (const core::Tensor &block_indices, const core::Tensor &inv_block_indices, const core::Tensor &nb_block_indices, const core::Tensor &nb_block_masks, const core::Tensor &block_keys, const core::Tensor &block_values, core::Tensor &vertices, core::Tensor &triangles, utility::optional< std::reference_wrapper< core::Tensor >> vertex_normals, utility::optional< std::reference_wrapper< core::Tensor >> vertex_colors, int64_t block_resolution, float voxel_size, float weight_threshold, int &vertex_count)
 

Function Documentation

◆ DeviceGetLinearIdx()

OPEN3D_DEVICE int64_t open3d::t::geometry::kernel::tsdf::DeviceGetLinearIdx ( int  xo,
int  yo,
int  zo,
int  curr_block_idx,
int  resolution,
const NDArrayIndexer nb_block_masks_indexer,
const NDArrayIndexer nb_block_indices_indexer 
)
inline

◆ DeviceGetNormalAt()

template<typename voxel_t >
OPEN3D_DEVICE void open3d::t::geometry::kernel::tsdf::DeviceGetNormalAt ( int  xo,
int  yo,
int  zo,
int  curr_block_idx,
float *  n,
int  resolution,
float  voxel_size,
const NDArrayIndexer nb_block_masks_indexer,
const NDArrayIndexer nb_block_indices_indexer,
const NDArrayIndexer blocks_indexer 
)
inline

◆ DeviceGetVoxelAt()

template<typename voxel_t >
OPEN3D_DEVICE voxel_t* open3d::t::geometry::kernel::tsdf::DeviceGetVoxelAt ( int  xo,
int  yo,
int  zo,
int  curr_block_idx,
int  resolution,
const NDArrayIndexer nb_block_masks_indexer,
const NDArrayIndexer nb_block_indices_indexer,
const NDArrayIndexer blocks_indexer 
)
inline

◆ EstimateRange()

void open3d::t::geometry::kernel::tsdf::EstimateRange ( const core::Tensor block_keys,
core::Tensor range_minmax_map,
const core::Tensor intrinsics,
const core::Tensor extrinsics,
int  h,
int  w,
int  down_factor,
int64_t  block_resolution,
float  voxel_size,
float  depth_min,
float  depth_max 
)

◆ EstimateRangeCPU()

void open3d::t::geometry::kernel::tsdf::EstimateRangeCPU ( const core::Tensor block_keys,
core::Tensor range_minmax_map,
const core::Tensor intrinsics,
const core::Tensor extrinsics,
int  h,
int  w,
int  down_factor,
int64_t  block_resolution,
float  voxel_size,
float  depth_min,
float  depth_max 
)

◆ ExtractSurfaceMesh()

void open3d::t::geometry::kernel::tsdf::ExtractSurfaceMesh ( const core::Tensor block_indices,
const core::Tensor inv_block_indices,
const core::Tensor nb_block_indices,
const core::Tensor nb_block_masks,
const core::Tensor block_keys,
const core::Tensor block_values,
core::Tensor vertices,
core::Tensor triangles,
utility::optional< std::reference_wrapper< core::Tensor >>  vertex_normals,
utility::optional< std::reference_wrapper< core::Tensor >>  vertex_colors,
int64_t  block_resolution,
float  voxel_size,
float  weight_threshold,
int &  vertex_count 
)

◆ ExtractSurfaceMeshCPU()

void open3d::t::geometry::kernel::tsdf::ExtractSurfaceMeshCPU ( const core::Tensor block_indices,
const core::Tensor inv_block_indices,
const core::Tensor nb_block_indices,
const core::Tensor nb_block_masks,
const core::Tensor block_keys,
const core::Tensor block_values,
core::Tensor vertices,
core::Tensor triangles,
utility::optional< std::reference_wrapper< core::Tensor >>  vertex_normals,
utility::optional< std::reference_wrapper< core::Tensor >>  vertex_colors,
int64_t  block_resolution,
float  voxel_size,
float  weight_threshold,
int &  vertex_count 
)

◆ ExtractSurfacePoints()

void open3d::t::geometry::kernel::tsdf::ExtractSurfacePoints ( const core::Tensor block_indices,
const core::Tensor nb_block_indices,
const core::Tensor nb_block_masks,
const core::Tensor block_keys,
const core::Tensor block_values,
core::Tensor points,
utility::optional< std::reference_wrapper< core::Tensor >>  normals,
utility::optional< std::reference_wrapper< core::Tensor >>  colors,
int64_t  block_resolution,
float  voxel_size,
float  weight_threshold,
int &  valid_size 
)

◆ ExtractSurfacePointsCPU()

void open3d::t::geometry::kernel::tsdf::ExtractSurfacePointsCPU ( const core::Tensor block_indices,
const core::Tensor nb_block_indices,
const core::Tensor nb_block_masks,
const core::Tensor block_keys,
const core::Tensor block_values,
core::Tensor points,
utility::optional< std::reference_wrapper< core::Tensor >>  normals,
utility::optional< std::reference_wrapper< core::Tensor >>  colors,
int64_t  block_resolution,
float  voxel_size,
float  weight_threshold,
int &  valid_size 
)

Coordinate transform

Coordinate transform

◆ Integrate()

void open3d::t::geometry::kernel::tsdf::Integrate ( const core::Tensor depth,
const core::Tensor color,
const core::Tensor block_indices,
const core::Tensor block_keys,
core::Tensor block_values,
const core::Tensor intrinsics,
const core::Tensor extrinsics,
int64_t  resolution,
float  voxel_size,
float  sdf_trunc,
float  depth_scale,
float  depth_max 
)

◆ IntegrateCPU()

void open3d::t::geometry::kernel::tsdf::IntegrateCPU ( const core::Tensor depth,
const core::Tensor color,
const core::Tensor block_indices,
const core::Tensor block_keys,
core::Tensor block_values,
const core::Tensor intrinsics,
const core::Tensor extrinsics,
int64_t  resolution,
float  voxel_size,
float  sdf_trunc,
float  depth_scale,
float  depth_max 
)

Coordinate transform

Coordinate transform

◆ RayCast()

void open3d::t::geometry::kernel::tsdf::RayCast ( std::shared_ptr< core::DeviceHashBackend > &  hashmap,
const core::Tensor block_values,
const core::Tensor range_map,
core::Tensor vertex_map,
core::Tensor depth_map,
core::Tensor color_map,
core::Tensor normal_map,
const core::Tensor intrinsics,
const core::Tensor extrinsics,
int  h,
int  w,
int64_t  block_resolution,
float  voxel_size,
float  sdf_trunc,
float  depth_scale,
float  depth_min,
float  depth_max,
float  weight_threshold 
)

◆ RayCastCPU()

void open3d::t::geometry::kernel::tsdf::RayCastCPU ( std::shared_ptr< core::DeviceHashBackend > &  hashmap,
const core::Tensor block_values,
const core::Tensor range_map,
core::Tensor vertex_map,
core::Tensor depth_map,
core::Tensor color_map,
core::Tensor normal_map,
const core::Tensor intrinsics,
const core::Tensor extrinsics,
int  h,
int  w,
int64_t  block_resolution,
float  voxel_size,
float  sdf_trunc,
float  depth_scale,
float  depth_min,
float  depth_max,
float  weight_threshold 
)

◆ Touch()

void open3d::t::geometry::kernel::tsdf::Touch ( std::shared_ptr< core::HashMap > &  hashmap,
const core::Tensor points,
core::Tensor voxel_block_coords,
int64_t  voxel_grid_resolution,
float  voxel_size,
float  sdf_trunc 
)

◆ TouchCPU()

void open3d::t::geometry::kernel::tsdf::TouchCPU ( std::shared_ptr< core::HashMap > &  hashmap,
const core::Tensor points,
core::Tensor voxel_block_coords,
int64_t  voxel_grid_resolution,
float  voxel_size,
float  sdf_trunc 
)