KrisLibrary  1.0.0
Classes | Public Member Functions | Public Attributes | List of all members
Geometry::DenseTSDFReconstruction Class Reference

Performs a kinect-fusion-like dense TSDF reconstruction. More...

#include <TSDFReconstruction.h>

Classes

struct  VoxelInfo
 

Public Member Functions

 DenseTSDFReconstruction (const AABB3D &volume, const IntTriple &res, Real truncationDistance=0.1)
 
void SetTruncationDistance (Real truncationDistance)
 Changes the truncation distance (this clears the TSDF)
 
void Register (const Meshing::PointCloud3D &pc, const RigidTransform &Tcamera_est, ICPParameters &params)
 Performs registration between the point cloud and the TSDF. More...
 
void Fuse (const RigidTransform &Tcamera, const Meshing::PointCloud3D &pc, Real weight=1.0)
 Fuses the point cloud (in camera coordinates) into the TSDF.
 
void ExtractMesh (Meshing::TriMesh &mesh)
 Builds the mesh using the marching cubes algorithm.
 
void ExtractMesh (Meshing::TriMesh &mesh, GLDraw::GeometryAppearance &app)
 Builds a colored mesh using the marching cubes algorithm.
 
void ExtractMesh (const AABB3D &roi, Meshing::TriMesh &mesh)
 Extracts the mesh at a region of interest (bounding box)
 
void ExtractMesh (const AABB3D &roi, Meshing::TriMesh &mesh, GLDraw::GeometryAppearance &app)
 Extracts a colored mesh at a region of interest (bounding box)
 
void GetColor (const Vector3 &point, float *color) const
 Gets the 3 color channels of a point, if colored. Each of r,g,b is in the range [0,1].
 
void ClearPoint (const Vector3 &p, Real dist=0, Real weight=1.0)
 Clears the TSDF at a given point.
 
void ClearBox (const Vector3 &bmin, const Vector3 &bmax, Real weight=1.0)
 Clears the TSDF in a given box.
 
size_t MemoryUsage () const
 Estimates memory usage, in bytes.
 

Public Attributes

Real truncationDistance
 The max truncation distance (default 0.1)
 
Real depthStddev0
 The standard deviation of a depth value is assumed to be depthStddev0 + d*depthStddev1 (defaults 0.005, 0.01)
 
Real depthStddev1
 
Real forgettingRate
 The rate at which voxel data is forgotten due to age e^-(forgettingRate*age) (default 0)
 
bool colored
 If true, the TSDF will be colored (as long as the first point cloud is colored) (default true)
 
std::vector< int > auxiliaryAttributes
 These indices are added from a PointCloud's attributes to the auxilary volume grid (default empty)
 
Meshing::VolumeGridTemplate< float > tsdf
 
MultiVolumeGrid auxiliary
 
Array3D< VoxelInfoinfo
 
int scanID
 
Meshing::TriMesh currentMesh
 
int currentMeshID
 

Detailed Description

Performs a kinect-fusion-like dense TSDF reconstruction.

All camera transforms have the convention that z > 0 is forward.

Member Function Documentation

void DenseTSDFReconstruction::Register ( const Meshing::PointCloud3D pc,
const RigidTransform Tcamera_est,
ICPParameters params 
)

Performs registration between the point cloud and the TSDF.

  • pc: the point cloud, in camera coordinates
  • Tcamera_est: the estimated camera transform
  • params: the parameters for ICP and the solution (in/out)

References Math::dot(), Math::IsInf(), and Math3D::TransformFit().


The documentation for this class was generated from the following files: