Open3D (C++ API)  0.18.0
Functions
TrilinearDevoxelizeKernel.h File Reference

(b9e049c (Sun Dec 31 11:36:26 2023 -0800))

Go to the source code of this file.

Functions

void TrilinearDevoxelize (int b, int c, int n, int r, int r2, int r3, bool is_training, const float *coords, const float *feat, int *inds, float *wgts, float *outs)
 
void TrilinearDevoxelizeGrad (int b, int c, int n, int r3, const int *inds, const float *wgts, const float *grad_y, float *grad_x)
 

Function Documentation

◆ TrilinearDevoxelize()

void TrilinearDevoxelize ( int  b,
int  c,
int  n,
int  r,
int  r2,
int  r3,
bool  is_training,
const float *  coords,
const float *  feat,
int *  inds,
float *  wgts,
float *  outs 
)

This function performs trilinear devoxelization operation. It computes aggregated features from the voxel grid for each point passed in the input.

Parameters
bThe batch size.
cFeature dimension of voxel grid.
nNumber of points per batch.
rResolution of the grid.
r2r squared.
r3r cubed.
is_trainingWhether model is in training phase.
coordsArray with the point positions. The shape is [b, 3, n]
featArray with the voxel grid. The shape is [b, c, r, r, r]
indsThe voxel coordinates of point cube [b, 8, n]
wgtsweight for trilinear interpolation [b, 8, n]
outsOutputs, FloatTensor[b, c, n]

◆ TrilinearDevoxelizeGrad()

void TrilinearDevoxelizeGrad ( int  b,
int  c,
int  n,
int  r3,
const int *  inds,
const float *  wgts,
const float *  grad_y,
float *  grad_x 
)

This function computes gradient for trilinear devoxelization op. It computes gradient for the input voxelgrid.

Parameters
bThe batch size.
cFeature dimension of voxel grid.
nNumber of points per batch.
r3resolution cubed.
indsThe voxel coordinates of point cube [b, 8, n]
wgtsweight for trilinear interpolation [b, 8, n]
grad_yThe gradient passed from top.
grad_xThe computed gradient for voxelgrid.