草庐IT

OpenMVS详细安装教程(ubuntu18.04)

牙牙要健康 2023-12-01 原文

OpenMVS详细安装教程-ubuntu18.04


前言

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

最近在ubuntu18.04上配置OpenMVS运行环境时踩了很多坑,在这期间查阅了很多资料和博客,于是想对安装过程进行总结,方便自己反复查阅以及分享经验避免大家重复踩坑。
博主是用docker在ubuntu18.04容器中安装的OpenMVS,已经打包成docker的镜像文件分享给大家。

# 查看ubuntu版本号
lsb_release -a


安装前的准备:安装cmake、git 、gcc 和g++
apt-get源修改参考

# 更新apt库,更新软件列表
sudo apt-get update
# 安装git,用于从Github上克隆项目到本地
sudo apt-get install git
# 安装cmake,用于程序的编译
sudo apt-get install cmake
# 安装gcc和g++,安装c和c++编译器
sudo apt-get install gcc g++

一、安装第三方库

# 建立一个MVS的文件夹
mkdir MVS && cd MVS 
sudo apt-get update -qq && sudo apt-get install -qq
# 安装图像格式的相关库
sudo apt-get -y install git cmake libpng-dev libjpeg-dev libtiff-dev libglu1-mesa-dev

1.安装 Eigen3.4

ubuntu18.4建议源码eigen3.4及以上版本安装(不能使用eigen3.2),或者通过git下载:

# 通过git下载Eigen3.4源码,需要科学上网
git clone https://gitlab.com/libeigen/eigen.git --branch 3.4
mkdir eigen_build && cd eigen_build 
cmake . ../eigen
make && sudo make install 
cd ..

2.安装Boost1.56版本以上

sudo apt-get -y install libboost-iostreams-dev libboost-program-options-dev libboost-system-dev libboost-serialization-dev

3.安装OpenCV2.4(或者更高版本)

sudo apt-get -y install libopencv-dev
# 查询OpenCV版本
pkg-config --modversion opencv
# 查询OpenCV库
pkg-config --cflags opencv
# 查询头文件目录
pkg-config --libs   opencv

4.安装CGAL

sudo apt-get -y install libcgal-dev libcgal-qt5-dev

5.安装VCGLib

# 通过git下载vcglib源码,需要科学上网
git clone https://github.com/cdcseacave/VCG.git vcglib

一、安装以及运行OpenMVS

1.安装OpenMVS的库

# 通过git下载OpenMVS源码,需要科学上网
git clone https://github.com/electech6/openMVS_comments.git openMVS 
mkdir openMVS_build && cd openMVS_build
# /path to vcglib/vcglib"改为自己的vcglib的路径:Vcglib的父级目录/vcglib
cmake . ../openMVS -DCMAKE_BUILD_TYPE=Release -DVCG_ROOT="/path to vcglib/vcglib"
# 生成OpenMVS库文件,j4线程数量,根据电脑性能选择合适的数字
sudo make -j4 && sudo make install


编译过程中可能出线的问题:

解决方案(参考):
使用git回退vcglib版本,回退到以前提交时间为2020年对应的历史版本即可(ubuntu18.04下亲测有效)。

# 进入vcglib项目根目录下,使用命令git log,找到需要返回的commit id,按Q键退出
cd vcglib && git log
# 彻底回退到某个版本,本地的源码也会变为指定版本的内容
git reset --hard 88f12f212a1645d1fa6416592a434c29e63b57f0

git log后查看历史提交内容:

git reset --hard变为指定版本的内容:

安装编译完成

2.OpenMVS测试

测试数据集百度云链接,提取码:4oz5
OpenMVS 可执行文件生成在openMVS/openMVS_build/bin/里面

安装Meshlab

# 安装依赖并更新
sudo apt --fix-broken install
sudo apt-get update
sudo apt-get upgrade
# 用apt-get安装meshlab
sudo apt-get install meshlab

安装完成

稠密重建

# 将数据集移动到openMVS_build目录下并重命名为data
mv /root/Downloads/OpenMVS测试数据集 /root/MVS/openMVS_build/data
# 在openMVS_build目录下执行如下命令:-w 设置的是数据的路径 -i 是输入的文件名 -o是输出的文件名
./bin/DensifyPointCloud -w /root/MVS/openMVS_build/data -i scene.mvs -o test_dense.mvs


在数据集data目录下生成test_dense.mvs文件,用Meshlab打开test_dense.mvs:

曲面重建```

./bin/ReconstructMesh -w /root/MVS/openMVS_build/data -i test_dense.mvs -o test_mesh.mvs


在数据集data目录下生成test_mesh.ply文件,用Meshlab打开test_mesh.ply:

网格优化

./bin/RefineMesh -w /root/MVS/openMVS_build/data -i test_mesh.mvs -o test_refinemesh.mvs

在数据集data目录下生成test_refinemesh.ply文件,用Meshlab打开test_refinemesh.ply:

纹理贴图

./bin/TextureMesh -w /root/MVS/openMVS_build/data -i test_refinemesh.mvs -o test_texture.mvs

在数据集data目录下生成test_texture.ply以及test_texture.png文件,用Meshlab打开test_texture.ply:查看test_texture.png文件:

总结

尽可能简单、详细的介绍OpenMVS的安装流程以及解决了安装过程中可能存在的问题。后续会根据自己学到的知识结合个人理解讲解OpenMVS的原理和代码。

有关OpenMVS详细安装教程(ubuntu18.04)的更多相关文章

  1. ruby - i18n Assets 管理/翻译 UI - 2

    我正在使用i18n从头开始​​构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在ruby​​onrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi

  2. ruby - 在 64 位 Snow Leopard 上使用 rvm、postgres 9.0、ruby 1.9.2-p136 安装 pg gem 时出现问题 - 2

    我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po

  3. ruby-on-rails - Rails 3 I18 : translation missing: da. datetime.distance_in_words.about_x_hours - 2

    我看到这个错误:translationmissing:da.datetime.distance_in_words.about_x_hours我的语言环境文件:http://pastie.org/2944890我的看法:我已将其添加到我的application.rb中:config.i18n.load_path+=Dir[Rails.root.join('my','locales','*.{rb,yml}').to_s]config.i18n.default_locale=:da如果我删除I18配置,帮助程序会处理英语。更新:我在config/enviorments/devolpment

  4. ruby - 完全离线安装RVM - 2

    我打算为ruby​​脚本创建一个安装程序,但我希望能够确保机器安装了RVM。有没有一种方法可以完全离线安装RVM并且不引人注目(通过不引人注目,就像创建一个可以做所有事情的脚本而不是要求用户向他们的bash_profile或bashrc添加一些东西)我不是要脚本本身,只是一个关于如何走这条路的快速指针(如果可能的话)。我们还研究了这个很有帮助的问题:RVM-isthereawayforsimpleofflineinstall?但有点误导,因为答案只向我们展示了如何离线在RVM中安装ruby。我们需要能够离线安装RVM本身,并查看脚本https://raw.github.com/wayn

  5. ruby-on-rails - rails 目前在重启后没有安装 - 2

    我有一个奇怪的问题:我在rvm上安装了ruby​​onrails。一切正常,我可以创建项目。但是在我输入“railsnew”时重新启动后,我有“程序'rails'当前未安装。”。SystemUbuntu12.04ruby-v"1.9.3p194"gemlistactionmailer(3.2.5)actionpack(3.2.5)activemodel(3.2.5)activerecord(3.2.5)activeresource(3.2.5)activesupport(3.2.5)arel(3.0.2)builder(3.0.0)bundler(1.1.4)coffee-rails(

  6. ruby - 如何为 emacs 安装 ruby​​-mode - 2

    我刚刚为fedora安装了emacs。我想用emacs编写ruby。为ruby​​提供代码提示、代码完成类型功能所需的工具、扩展是什么? 最佳答案 ruby-mode已经包含在Emacs23之后的版本中。不过,它也可以通过ELPA获得。您可能感兴趣的其他一些事情是集成RVM、feature-mode(Cucumber)、rspec-mode、ruby-electric、inf-ruby、rinari(用于Rails)等。这是我当前用于Ruby开发的Emacs配置:https://github.com/citizen428/emacs

  7. ruby-on-rails - 无法在centos上安装therubyracer(V8和GCC出错) - 2

    我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e

  8. ruby - 通过 RVM (OSX Mountain Lion) 安装 Ruby 2.0.0-p247 时遇到问题 - 2

    我的最终目标是安装当前版本的RubyonRails。我在OSXMountainLion上运行。到目前为止,这是我的过程:已安装的RVM$\curl-Lhttps://get.rvm.io|bash-sstable检查已知(我假设已批准)安装$rvmlistknown我看到当前的稳定版本可用[ruby-]2.0.0[-p247]输入命令安装$rvminstall2.0.0-p247注意:我也试过这些安装命令$rvminstallruby-2.0.0-p247$rvminstallruby=2.0.0-p247我很快就无处可去了。结果:$rvminstall2.0.0-p247Search

  9. ruby - 如何在 Lion 上安装 Xcode 4.6,需要用 RVM 升级 ruby - 2

    我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121

  10. ruby - Fast-stemmer 安装问题 - 2

    由于fast-stemmer的问题,我很难安装我想要的任何ruby​​gem。我把我得到的错误放在下面。Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingfast-stemmer:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR=

随机推荐