All Projects → unclearness → vacancy

unclearness / vacancy

Licence: BSD-3-Clause license
Vacancy: A Voxel Carving implementation in C++

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects
Batchfile
5799 projects

Projects that are alternatives of or similar to vacancy

softpool
SoftPoolNet: Shape Descriptor for Point Cloud Completion and Classification - ECCV 2020 oral
Stars: ✭ 62 (+55%)
Mutual labels:  3d-reconstruction
LPDC-Net
CVPR2021 paper "Learning Parallel Dense Correspondence from Spatio-Temporal Descriptorsfor Efficient and Robust 4D Reconstruction"
Stars: ✭ 27 (-32.5%)
Mutual labels:  3d-reconstruction
3DShapeGen
Code for 3D Reconstruction of Novel Object Shapes from Single Images paper
Stars: ✭ 92 (+130%)
Mutual labels:  3d-reconstruction
pyRANSAC-3D
A python tool for fitting primitives 3D shapes in point clouds using RANSAC algorithm
Stars: ✭ 253 (+532.5%)
Mutual labels:  3d-reconstruction
VoxelTerrain
This project's main goal is to generate and visualize terrain built using voxels. It was achieved using different approaches and computing technologies just for the sake of performance and implementation comparison.
Stars: ✭ 37 (-7.5%)
Mutual labels:  marching-cubes
isosurface
Rust algorithms for isosurface extraction
Stars: ✭ 51 (+27.5%)
Mutual labels:  marching-cubes
retrieval-fuse
[ICCV21] Code for "RetrievalFuse: Neural 3D Scene Reconstruction with a Database"
Stars: ✭ 69 (+72.5%)
Mutual labels:  3d-reconstruction
PyMarchingCubes
Marching cubes with and without color interpolation, and edge subsampling.
Stars: ✭ 121 (+202.5%)
Mutual labels:  marching-cubes
DualMarchingCuboids
A dual Marching Cubes method using cuboids, based on greedy meshing. Suitable for use with a uniform grid of data derived from multiple depth maps.
Stars: ✭ 32 (-20%)
Mutual labels:  marching-cubes
Face-X
Demonstration of different algorithms and operations on faces. Join the Discord channel for discussion.
Stars: ✭ 226 (+465%)
Mutual labels:  3d-reconstruction
ShapeFormer
Official repository for the ShapeFormer Project
Stars: ✭ 97 (+142.5%)
Mutual labels:  3d-reconstruction
MVSNet pl
MVSNet: Depth Inference for Unstructured Multi-view Stereo using pytorch-lightning
Stars: ✭ 49 (+22.5%)
Mutual labels:  3d-reconstruction
dynamic plane convolutional onet
[WACV 2021] Dynamic Plane Convolutional Occupancy Networks
Stars: ✭ 25 (-37.5%)
Mutual labels:  3d-reconstruction
StructuredLight
Creating a 3D reconstruction of an object using multiple images
Stars: ✭ 42 (+5%)
Mutual labels:  3d-reconstruction
zmesh
Marching Cubes & Mesh Simplification on multi-label 3D images.
Stars: ✭ 37 (-7.5%)
Mutual labels:  marching-cubes
3d-recon
Implementation for paper "Learning Single-View 3D Reconstruction with Limited Pose Supervision".
Stars: ✭ 59 (+47.5%)
Mutual labels:  3d-reconstruction
voxelfield
Server authoritative multiplayer shooter game with fully destructible terrain
Stars: ✭ 20 (-50%)
Mutual labels:  marching-cubes
Computer-Vision-and-Photogrammetry
Course at University of Wroclaw - full 3D reconstruction from images pipeline
Stars: ✭ 35 (-12.5%)
Mutual labels:  3d-reconstruction
SkeletonBridgeRecon
The code for CVPR2019 Oral paper "A Skeleton-bridged Deep Learning Approach for Generating Meshes of Complex Topologies from Single RGB Images"
Stars: ✭ 72 (+80%)
Mutual labels:  3d-reconstruction
ICON
ICON: Implicit Clothed humans Obtained from Normals (CVPR 2022)
Stars: ✭ 641 (+1502.5%)
Mutual labels:  3d-reconstruction

Vacancy: A Voxel Carving implementation in C++

Vacancy is a Voxel Carving (a.k.a. Visual Hull or Shape from Silhouette) implementaion in C++. Inputs are 2D silhouettes (binary mask) of target objects, corresponding camera parameters (both intrinsic and extrinsic) and 3D bounding box to roughly specify the position of the objects. Output is the reconstructed 3D model. In addition to naive one, supports KinectFusion like robust TSDF (Truncated Signed Distance Function) fusion.

Algorithm Overview

  • Initialize 3D voxels according to the input bounding box
  • Compute SDF (Signed Distance Function/Field) from silhouette in 2D
  • Volmetrically fuse 2D SDF values into the 3D voxels by using camera parameters
  • Extract explicit 3D mesh from implicit surface representation in the 3D voxels

Output mesh

Two mesh extraction methods are implemented: voxel and marching cubes. Marching cubes are much better in practice while voxel representation is suitable to understand how the algorithm works.

voxel marching cubes

Build

To build sample bunny executable, use cmake with CMakeLists.txt in the top directory. You can integrate Vacancy to your own projects as static library by cmake add_subdirectory() command.

Dependencies

Mandatory

Optional (can be disabled by cmake)

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