[TOC]
Overview
-
OpenMVG provides an end-to-end 3D reconstruction from images framework compounded of libraries, binaries, and pipelines.
- a library mainly focused on Multiple-View-Geometry and Structure-From-Motion
- Structure-from-Motion pipelines (like OpenMVG) which recover camera poses and a sparse 3D point-cloud from an input set of images, there are none addressing the last part of the photogrammetry chain-flow
-
OpenMVS (Multi-View Stereo) is a library for computer-vision scientists and especially targeted to the Multi-View Stereo reconstruction community.
-
aims at filling that gap by providing a complete set of algorithms to recover the full surface of the scene to be reconstructed
-
The input is a set of camera poses plus the sparse point-cloud and the output is a textured mesh
OpenMVG
Build
- https://github.com/openMVG/openMVG/blob/develop/BUILD.md
Run
Modify the code below in SfM_SequentialPipeline.py, SfM_GlobalPipeline.py or tutorial_demo.py
# before
pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-d", camera_file_params] )
# after
pIntrisics = subprocess.Popen( [os.path.join(OPENMVG_SFM_BIN, "openMVG_main_SfMInit_ImageListing"), "-i", input_dir, "-o", matches_dir, "-d", camera_file_params, "-f", "xxx"] )
then
python SfM_GlobalPipeline.py [full path image directory] [resulting directory]
MVG (SfM scene) to MVS
openMVG_main_openMVG2openMVS -i sfm_data.bin -o scene.mvs
OpenMVS
Build
- https://github.com/cdcseacave/openMVS/wiki/Building
Run
View
Viewer
module can be used to visualize any MVS
project file or PLY/OBJ
file.
./openMVS_build/bin/Viewer xxx.mvs # or xxx.ply xxx.obj