google / depth_fusion

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DepthFusion

This is not an official Google product.

Overview

DepthFusion is an open source software library for reconstructing 3D surfaces (meshes) from depth data produced by commercial off-the-shelf depth cameras such as Microsoft Kinect, Asus Xtion Pro, and Intel RealSense.

It is at its core an implementation of "A Volumetric Method for Building Complex Models from Range Images" by Curless and Levoy [SIGGRAPH 1996]. Camera pose can be determined using the frame-to-model technique popularized by KinectFusion [Newcombe et al. 2011], or using fiducial markers from OpenCV's ArUco contrib module.

It runs on real-time on high-end desktop GPUs.

Code structure

C++ and CUDA code are in src. GLSL shaders for the visualization are in src/shaders.

Dependencies

  • Qt 5.5
  • CUDA 7.5 (8.0 on Windows for VS2015/C++11 support).
  • libcgt (see below) and its transitive dependencies.
  • GLEW
  • OpenCV 3.0

Build instructions (CMake)

  1. Get https://github.com/jiawen/libcgt.
  2. Put libcgt the same level as depth_fusion (they should be siblings).
  3. mkdir build
  4. cd build
  5. cmake-gui ..

License

Apache 2.0.

About

License:Apache License 2.0


Languages

Language:C++ 76.5%Language:Cuda 15.9%Language:GLSL 4.3%Language:CMake 2.7%Language:C 0.6%