OpenMVS (open Multi View Stereo) のインストール(Ubuntu 上)

概要

OpenMVS は,MVS (Multi View Stereo) の機能を持つオープンソースソフトウェアである.

目次

関連する外部ページ

URL: https://github.com/cdcseacave/openMVS

第1章 前準備

Ubuntu のシステム更新

Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行する.これは,パッケージ情報を最新の状態に保ち,インストール済みのパッケージをセキュリティアップデートやバグ修正を含めて更新するためである.

Ubuntu のインストールはこちらの別ページで説明する.
# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを包括的に更新 (依存関係も考慮)
sudo apt full-upgrade
# カーネル更新等で実際に再起動が必要な場合のみ実行を推奨
# sudo shutdown -r now

Git, CMake のインストール(Ubuntu 上)

インストールするには,端末で,次のコマンドを実行する.

sudo apt -y install git cmake cmake-curses-gui cmake-gui

C/C++ コンパイラと Make とビルドツールのインストール

ソフトウェアをソースコードからビルドするには,C/C++ コンパイラ(通常は GCC)や make ユーティリティといった開発ツールが重要である.Ubuntu では,これらのツールは build-essential パッケージにまとめられている.インストールするには,端末で,次のコマンドを実行する.

sudo apt -y install build-essential libtool texinfo dpkg-dev pkg-config

libtool, texinfo, dpkg-dev, pkg-config は,より複雑なビルドやパッケージ管理の際に役立つ開発関連ツールである.

NVIDIA ドライバ,NVIDIA CUDA ツールキット,NVIDIA cuDNN のインストール(Ubuntu 上)

Ubuntu での NVIDIA ドライバ,NVIDIA CUDA ツールキット 12.8,NVIDIA cuDNN のインストール: 別ページ »で説明

第2章 OpenMVS のインストール(ソースコードを使用)(Ubuntu 上)

Eigen のインストール(Ubuntu 上)

端末で,次のコマンドを実行する.OpenMVS は Eigen 3.4 以上を要求する.

sudo apt -y install libeigen3-dev

SuiteSparse, CXSparse, libmetis, BLAS, LAPACK のインストール(Ubuntu 上)

端末で,次のコマンドを実行する.

sudo apt -y install libatlas-base-dev libsuitesparse-dev

Ceres Solver のインストール(ソースコードを使用)(Ubuntu 上)

公式ページ http://ceres-solver.org/installation.html の手順に従う.

  1. 前提ソフトウェア

    Ceres Solver のインストールのために, cmake, google-glog, gflags, Eigen, BLAS, LAPACK, SuiteSparse をインストールする.

    端末で,次のコマンドを実行する.

    sudo apt -y install cmake libgoogle-glog-dev libgflags-dev libatlas-base-dev libeigen3-dev libsuitesparse-dev
    
  2. Ceres Solver のビルド

    -b 2.2.0」は,2026年6月時点の最新の安定版(バージョン 2.2.0)をダウンロードすることを指定している. 最新の安定版については https://github.com/ceres-solver/ceres-solver で確認する.

    cd /tmp
    sudo rm -rf ceres-solver
    git clone https://ceres-solver.googlesource.com/ceres-solver -b 2.2.0
    cd ceres-solver
    mkdir build
    cd build
    cmake .. -DEIGENSPARSE=ON -DSUITESPARSE=ON \
      -DSuiteSparse_AMD_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_CAMD_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_COLAMD_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_CCOLAMD_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_CHOLMOD_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_SPQR_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_Config_INCLUDE_DIR=/usr/include/suitesparse \
      -DSuiteSparse_Config_LIBRARY=/usr/lib/x86_64-linux-gnu/libsuitesparseconfig.a
    make -j4
    
  3. 終了の確認

    ここまでの一連の操作で,エラーメッセージが出るなどの問題がないこと.

  4. Ceres Solver のインストール
    sudo make install
    
  5. 終了の確認
  6. 動作確認
    cd /tmp/ceres-solver/build
    ./bin/simple_bundle_adjuster ../data/problem-16-22106-pre.txt
    
  7. テスト
    make test
    
  8. テスト結果の確認

Boost, OpenCV, CGAL, VCGLib, GLFW3, その他のインストール

以上のほか,OpenMVS のインストールに必要なものをインストールする.

この手順は,次の Web ページの説明による.

https://github.com/cdcseacave/openMVS/wiki/Building

端末で,次のコマンドを実行する.

#Prepare and empty machine for building:
sudo apt -y install git cmake libpng-dev libjpeg-dev libtiff-dev libglu1-mesa-dev

#Boost (Required)
sudo apt -y install libboost-iostreams-dev libboost-program-options-dev libboost-system-dev libboost-serialization-dev

#OpenCV (Required)
sudo apt -y install libopencv-dev

#CGAL (Required)
sudo apt -y install libcgal-dev libcgal-qt5-dev

#VCGLib (Required)
cd /usr/local/
sudo rm -rf vcglib
sudo git clone https://github.com/cdcseacave/VCG.git vcglib
sudo chown -R $USER vcglib

#GLFW3 (Optional)
sudo apt -y install freeglut3-dev libglew-dev libglfw3-dev

OpenMVS のインストール(Ubuntu 上)

#OpenMVS
cd /tmp
sudo rm -rf openMVS
git clone https://github.com/cdcseacave/openMVS.git openMVS
sudo rm -rf openMVS_build 
mkdir openMVS_build 
cd openMVS_build
cmake . ../openMVS -DCMAKE_BUILD_TYPE=Release -DVCG_ROOT="/usr/local/vcglib"

#Install OpenMVS library (optional):
make -j2 
sudo make install
OpenMVS のインストールでの「make -j2」でエラーが出るときは, NVIDIA CUDA ツールキットを使うことをあきらめて, 「cmake . ../openMVS -DCMAKE_BUILD_TYPE=Release -DVCG_ROOT="/usr/local/vcglib"」の代わりに 次のように操作する. そして,残りを実行する.
cmake . ../openMVS -DCMAKE_BUILD_TYPE=Release -DVCG_ROOT="/usr/local/vcglib" -DOpenMVS_USE_CUDA=OFF

インストール終了の確認として,ここまでの一連の操作で,エラーメッセージが出るなどの問題がないことを確認する.