OpenMVS relies on a number of open source libraries, some of which are optional. For details on customizing the build process, see the compilation instructions.
- Eigen version 3.2 or higher, 3.3 not supported
- OpenCV version 2.4 or higher
- Ceres version 1.10 or higher
- CGAL version 4.2 or higher
- Boost version 1.56 or higher
- VCG
- GLFW
Required tools:
Ubuntu 16.04 is used next as the example linux distribution.
Install Conan from https://https://conan.io/
#VCGLib (Required)
git clone https://github.com/cdcseacave/VCG.git vcglib
#Ceres (optional)
sudo apt-get -y install libatlas-base-dev libsuitesparse-dev
git clone https://ceres-solver.googlesource.com/ceres-solver ceres-solver
mkdir ceres_build && cd ceres_build
cmake . ../ceres-solver/ -DMINIGLOG=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF
make -j2 && sudo make install
cd ..
#GLFW3 (Optional)
sudo apt-get -y install freeglut3-dev libglew-dev libglfw3-dev
#OpenMVS
git clone https://github.com/cdcseacave/openMVS.git openMVS
mkdir openMVS_build && cd openMVS_build
conan install .. -b missing
cmake . ../openMVS -DCMAKE_BUILD_TYPE=Release -DVCG_ROOT="$main_path/vcglib"
#If you want to use OpenMVS as shared library, add to the CMake command:
-DBUILD_SHARED_LIBS=ON
#Install OpenMVS library (optional):
make -j2 && sudo make install
Visual Studio 2008 or newer are supported.
The build steps should be the same as in Linux, but haven't be tested.
#Run CMake, where VCPKG_ROOT environment variable points to the root of vcpkg installation:
cmake . ..\src -G "Visual Studio 15 2017 Win64" -DCMAKE_TOOLCHAIN_FILE=%VCPKG_ROOT%\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows -DVCG_ROOT="..\VCG"
#Open the solution in MSVC and build it
The build steps should be the same as in Linux, but haven't be tested.