All Projects → andyzeng → Tsdf Fusion

andyzeng / Tsdf Fusion

Licence: bsd-2-clause
Fuse multiple depth frames into a TSDF voxel volume.

Projects that are alternatives of or similar to Tsdf Fusion

Tsdf Fusion Python
Python code to fuse multiple RGB-D images into a TSDF voxel volume.
Stars: ✭ 464 (+8.92%)
Mutual labels:  artificial-intelligence, 3d, 3d-reconstruction, vision, rgbd, cuda
3dmatch Toolbox
3DMatch - a 3D ConvNet-based local geometric descriptor for aligning 3D meshes and point clouds.
Stars: ✭ 571 (+34.04%)
Mutual labels:  artificial-intelligence, 3d, vision, rgbd
Apc Vision Toolbox
MIT-Princeton Vision Toolbox for the Amazon Picking Challenge 2016 - RGB-D ConvNet-based object segmentation and 6D object pose estimation.
Stars: ✭ 277 (-34.98%)
Mutual labels:  artificial-intelligence, 3d, vision, rgbd
Arc Robot Vision
MIT-Princeton Vision Toolbox for Robotic Pick-and-Place at the Amazon Robotics Challenge 2017 - Robotic Grasping and One-shot Recognition of Novel Objects with Deep Learning.
Stars: ✭ 224 (-47.42%)
Mutual labels:  artificial-intelligence, 3d, vision, rgbd
Pytorch Dense Correspondence
Code for "Dense Object Nets: Learning Dense Visual Object Descriptors By and For Robotic Manipulation"
Stars: ✭ 445 (+4.46%)
Mutual labels:  artificial-intelligence, 3d, vision
Visual Pushing Grasping
Train robotic agents to learn to plan pushing and grasping actions for manipulation with deep reinforcement learning.
Stars: ✭ 516 (+21.13%)
Mutual labels:  artificial-intelligence, 3d, vision
Intrinsic3d
Intrinsic3D - High-Quality 3D Reconstruction by Joint Appearance and Geometry Optimization with Spatially-Varying Lighting (ICCV 2017)
Stars: ✭ 297 (-30.28%)
Mutual labels:  3d, 3d-reconstruction, rgbd
Caer
High-performance Vision library in Python. Scale your research, not boilerplate.
Stars: ✭ 452 (+6.1%)
Mutual labels:  artificial-intelligence, vision, cuda
Home Platform
HoME: a Household Multimodal Environment is a platform for artificial agents to learn from vision, audio, semantics, physics, and interaction with objects and other agents, all within a realistic context.
Stars: ✭ 370 (-13.15%)
Mutual labels:  artificial-intelligence, 3d, vision
Cocoaai
🤖 The Cocoa Artificial Intelligence Lab
Stars: ✭ 134 (-68.54%)
Mutual labels:  artificial-intelligence, vision
Ravens
Train robotic agents to learn pick and place with deep learning for vision-based manipulation in PyBullet. Transporter Nets, CoRL 2020.
Stars: ✭ 133 (-68.78%)
Mutual labels:  artificial-intelligence, vision
Bottleneck Transformer Pytorch
Implementation of Bottleneck Transformer in Pytorch
Stars: ✭ 408 (-4.23%)
Mutual labels:  artificial-intelligence, vision
Pose Interpreter Networks
Real-Time Object Pose Estimation with Pose Interpreter Networks (IROS 2018)
Stars: ✭ 104 (-75.59%)
Mutual labels:  artificial-intelligence, 3d
Simulator
A ROS/ROS2 Multi-robot Simulator for Autonomous Vehicles
Stars: ✭ 1,260 (+195.77%)
Mutual labels:  artificial-intelligence, 3d
JetScan
JetScan : GPU accelerated portable RGB-D reconstruction system
Stars: ✭ 77 (-81.92%)
Mutual labels:  cuda, 3d-reconstruction
Tengine
Tengine is a lite, high performance, modular inference engine for embedded device
Stars: ✭ 4,012 (+841.78%)
Mutual labels:  artificial-intelligence, cuda
instant-ngp
Instant neural graphics primitives: lightning fast NeRF and more
Stars: ✭ 1,863 (+337.32%)
Mutual labels:  cuda, 3d-reconstruction
monodepth
Python ROS depth estimation from RGB image based on code from the paper "High Quality Monocular Depth Estimation via Transfer Learning"
Stars: ✭ 41 (-90.38%)
Mutual labels:  vision, rgbd
Komputation
Komputation is a neural network framework for the Java Virtual Machine written in Kotlin and CUDA C.
Stars: ✭ 295 (-30.75%)
Mutual labels:  artificial-intelligence, cuda
Dynamicfusion
Implementation of Newcombe et al. CVPR 2015 DynamicFusion paper
Stars: ✭ 267 (-37.32%)
Mutual labels:  3d-reconstruction, cuda

Volumetric TSDF Fusion of Multiple Depth Maps

Update: a python version of this code with both CPU/GPU support can be found here.

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. Tested on Ubuntu 14.04 and 16.04.

Looking for an older version? See here.

Change Log

  • Nov. 1, 2017. Bug fix: tsdf2mesh.m now properly generates a mesh in camera coordinates instead of voxel coordinates.
  • Oct. 30, 2017. Notice: changed default weight threshold for SaveVoxelGrid2SurfacePointCloud in demo code to enable creating point cloud visualizations with only one depth frame.
  • Aug. 30, 2017. Bug fix: remove deprecated offsets from surface distance compute during integration.

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.

Note: Input depth maps should be saved in format: 16-bit PNG, depth in millimeters.

./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

Citing

This repository is a part of 3DMatch Toolbox. If you find this code useful in your work, please consider citing:

@inproceedings{zeng20163dmatch, 
    title={3DMatch: Learning Local Geometric Descriptors from RGB-D Reconstructions}, 
    author={Zeng, Andy and Song, Shuran and Nie{\ss}ner, Matthias and Fisher, Matthew and Xiao, Jianxiong and Funkhouser, Thomas}, 
    booktitle={CVPR}, 
    year={2017} 
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].