Totoro97 / Vid2Curve

Thin structure reconstruction
GNU General Public License v3.0
195 stars 37 forks source link

Vid2Curve

This is the reference implementation for thin structure reconstruction from an image sequence.

Dependency

Installation

This project is mainly developed and tested at Manjaro Linux. Please refer to the following steps to accomplish your installation.

git clone https://github.com/Totoro97/Vid2Curve.git
cd Vid2Curve
mkdir build
cd build
# ----- Default compile setting -----
cmake ..
make Display
# ----- Or compile with GUI(Pangolin) -----
cmake .. -DUSE_GUI=1
make Display

Usage

At the build directory, run command ./Display .

In the config.ini file, you can modify the DataPath field for your own use and test.

The mesh and the curve skeleton will be saved as curves_mesh.obj and curves.obj at the build directory after the reconstruction process is done. And the camera poses will be saved at cameras.txt as rotation matrix and translation vectors (from world to camera).

Data Preparation

In this repository we have prepared two simple examples for your quick validation. For more cases, please refer to the link.

If you would like to use the project for reconstruction of your own thin objects, please prepare the data as the following steps:

Citation

If you would like to use this project for your own use, please cite:

@article{wang2020vid2curve,
  title={Vid2Curve: Simultaneous Camera Motion Estimation and Thin Structure Reconstruction from an RGB Video},
  author={Wang, Peng and Liu, Lingjie and Chen, Nenglun and Chu, Hung-Kuo and Theobalt, Christian and Wang, Wenping},
  Journal={ACM Trans. Graph. (SIGGRAPH)},
  year={2020},
  Number={4},
  Volume={38},
  DOI={https://doi.org/10.1145/3386569.3392476},
  Publisher={ACM}
}

Acknowledgment

This project also uses the codes from :

Thanks for these great implementations.