|
| ScalableTSDFVolume (double voxel_length, double sdf_trunc, TSDFVolumeColorType color_type, int volume_unit_resolution=16, int depth_sampling_stride=4) |
|
| ~ScalableTSDFVolume () override |
|
void | Reset () override |
| Function to reset the TSDFVolume. More...
|
|
void | Integrate (const geometry::RGBDImage &image, const camera::PinholeCameraIntrinsic &intrinsic, const Eigen::Matrix4d &extrinsic) override |
| Function to integrate an RGB-D image into the volume. More...
|
|
std::shared_ptr< geometry::PointCloud > | ExtractPointCloud () override |
| Function to extract a point cloud with normals. More...
|
|
std::shared_ptr< geometry::TriangleMesh > | ExtractTriangleMesh () override |
| Function to extract a triangle mesh, using the marching cubes algorithm. (https://en.wikipedia.org/wiki/Marching_cubes) More...
|
|
std::shared_ptr< geometry::PointCloud > | ExtractVoxelPointCloud () |
| Debug function to extract the voxel data into a point cloud. More...
|
|
| TSDFVolume (double voxel_length, double sdf_trunc, TSDFVolumeColorType color_type) |
| Default Constructor. More...
|
|
virtual | ~TSDFVolume () |
|
virtual void | Reset ()=0 |
| Function to reset the TSDFVolume. More...
|
|
virtual void | Integrate (const geometry::RGBDImage &image, const camera::PinholeCameraIntrinsic &intrinsic, const Eigen::Matrix4d &extrinsic)=0 |
| Function to integrate an RGB-D image into the volume. More...
|
|
virtual std::shared_ptr< geometry::PointCloud > | ExtractPointCloud ()=0 |
| Function to extract a point cloud with normals. More...
|
|
virtual std::shared_ptr< geometry::TriangleMesh > | ExtractTriangleMesh ()=0 |
| Function to extract a triangle mesh, using the marching cubes algorithm. (https://en.wikipedia.org/wiki/Marching_cubes) More...
|
|
The ScalableTSDFVolume implements a more memory efficient data structure for volumetric integration.
This implementation is based on the following repository: https://github.com/qianyizh/ElasticReconstruction/tree/master/Integrate The reference is: Q.-Y. Zhou and V. Koltun Dense Scene Reconstruction with Points of Interest In SIGGRAPH 2013
An observed depth pixel gives two types of information: (a) an approximation of the nearby surface, and (b) empty space from the camera to the surface. They induce two core concepts of volumetric integration: weighted average of a truncated signed distance function (TSDF), and carving. The weighted average of TSDF is great in addressing the Gaussian noise along surface normal and producing a smooth surface output. The carving is great in removing outlier structures like floating noise pixels and bumps along structure edges.