lukeqsun / tsdf-fusion

Fuse multiple depth frames into a TSDF voxel volume.

Home Page:http://www.cs.princeton.edu/~andyz/code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Volumetric TSDF Fusion of Multiple Depth Maps

Teaser

CUDA/C++ code to fuse multiple registered depth maps into a projective truncated signed distance function (TSDF) voxel volume, which can then be used to create high quality 3D surface meshes and point clouds.

Looking for an older version? See here.

This repository is a part of Andy's Code Collection.

Requirements

  • NVIDA GPU with CUDA support
  • OpenCV (tested with OpenCV 2.4.11)

Demo

This demo fuses 50 registered depth maps from directory data/rgbd-frames into a projective TSDF voxel volume, and creates a 3D surface point cloud tsdf.ply, which can be visualized with a 3D viewer like Meshlab.

./compile.sh # compiles demo executable
./demo # 3D point cloud saved to tsdf.ply and voxel grid saved to tsdf.bin

[Optional] This demo also saves the computed voxel volume into a binary file tsdf.bin. Run the following script in Matlab to create a 3D surface mesh mesh.ply, which can be visualized with Meshlab.

tsdf2mesh; % 3D mesh saved to mesh.ply

Seen in

References

About

Fuse multiple depth frames into a TSDF voxel volume.

http://www.cs.princeton.edu/~andyz/code


Languages

Language:Cuda 54.3%Language:C++ 40.3%Language:MATLAB 4.0%Language:Shell 1.4%