Linux での openMVG のインストールおよびコンパイル ガイド

openMVG (open Multiple View Geometry) は、古典的なオープンソースの 3D 再構成アルゴリズム ライブラリです。この記事では主に、Linux システムでの OpenMVG ライブラリのインストールとコンパイル方法を紹介します。

コードアドレス: github

公式ドキュメント: DOC

インストール手順は次のとおりです。

1. ソース コードをダウンロードします。1 つの方法は git clone を使用してダウンロードすることです。もう 1 つは zip を直接ダウンロードすることです。前者をお勧めします。後者は依存ライブラリ ファイルを完全にダウンロードできないため、コンパイルが失敗します。recursive は、依存ライブラリを再帰的にダウンロードできます。

git clone --recursive https://github.com/openMVG/openMVG.git

ダウンロードが完了したら、依存関係フォルダー内のこれら 3 つのフォルダーが空でないことを必ず確認してください。

それ以外の場合は、コンパイル中に「サブモジュールが見つかりません」または「サブモジュールがパスに登録されていません。 」というエラーが報告されます。解決策:ブログ、またはダウンロードに失敗したライブラリを個別に git clone し、対応するフォルダーに置きます。

2. 依存ライブラリのインストール

sudo apt-get install libpng-dev libjpeg-dev libtiff-dev libxxf86vm1 libxxf86vm-dev libxi-dev libxrandr-dev
sudo apt-get install graphviz

もちろん、このアルゴリズムは、Eigen3.4.0、ceres-solver、およびその他のライブラリにも依存しており、これらは自分でインストールできます。

3. コンパイル

フォルダーを作成し、ダウンロードしたソースコードをフォルダーに配置します。cmake を使用してコンパイルします。事故がなければコンパイルは成功します。

mkdir openMVG_Build && cd openMVG_Build
cmake -DCMAKE_BUILD_TYPE=RELEASE -DOpenMVG_BUILD_TESTS=ON -DOpenMVG_BUILD_EXAMPLES=ON . ../openMVG/src/
make

4. エラーの解決

(1)サブモジュールがありません

解決策: lianqi1008 のブログ

(2) 固有バージョンが低すぎる

エラーメッセージ:

/usr/include/eigen3/Eigen/SparseCholesky:34:2: error: #error SparseCholesky モジュールには MPL2 のみのモードで提供できるものは何もありません #error SparseCholesky モジュールには MPL2 のみのモードで提供できるものは何もありません 解決策: eigen を再インストール
 /
アップグレードますまたは、Cmakelist ファイルの 280 行目を変更します私は後者を使用していますが、結局のところ、Eigen ライブラリの他のアルゴリズムも使用されているため、バージョンをアップグレードすると、他のアルゴリズムのコンパイルが失敗する可能性があります。システムのEigenの代わりに組み込みのEigenライブラリを使用するように、次のように変更します。

おすすめ

転載: blog.csdn.net/weixin_44884315/article/details/132671669