• 编译运行windows+OpenMVG+OpenMVS+vs2017


    安装vcpkg过程需要翻墙!!!

    github下载代码

    1. git clone https://github.com/microsoft/vcpkg
    2. git clone https://github.com/cdcseacave/VCG.git
    3. git clone https://github.com/cdcseacave/openMVS.git src

    安装vcpkg包

    1. cd .\vcpkg
    2. .\bootstrap-vcpkg.bat
    3. vcpkg integrate install
    4. vcpkg install zlib:x64-windows boost:x64-windows eigen3:x64-windows ceres:x64-windows opencv:x64-windows cgal:x64-windows glew:x64-windows glfw3:x64-windows

    编译OpenMVS

    1. mkdir .\build-mvs
    2. cd .\build-mvs
    3. cmake . ..\openMVS -G "Visual Studio 15 2017 Win64" -DCMAKE_TOOLCHAIN_FILE=..\vcpkg\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows -DVCG_ROOT="..\VCG" -DCMAKE_CUDA_ARCHITECTURES=75 -DCMAKE_CUDA_STANDARD=14

    用cmake-gui编译OpenMVG

    打开vs编译release版本

    下载图片数据到文件夹images

    防止CPU跑满系统崩溃,以下命令行增加了

    start /WAIT /affinity 0x7f

    运行OpenMVG

    1. mkdir .\mvg
    2. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_SfMInit_ImageListing.exe -i .\images\ -d D:\OpenMVS\openMVG\src\openMVG\exif\sensor_width_database\sensor_width_camera_database.txt -o .\mvg\matches -f 10160
    3. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_ComputeFeatures.exe -i .\mvg\matches\sfm_data.json -o .\mvg\matches
    4. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_PairGenerator.exe -i .\mvg\matches\sfm_data.json -o .\mvg\matches\pairs.bin
    5. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_ComputeMatches.exe -i .\mvg\matches\sfm_data.json -p .\mvg\matches\pairs.bin -o .\mvg\matches\matches.putative.bin
    6. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_GeometricFilter.exe -i .\mvg\matches\sfm_data.json -m .\mvg\matches\matches.putative.bin -g f -o .\mvg\matches\matches.f.bin
    7. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_SfM.exe -s INCREMENTAL -i .\mvg\matches\sfm_data.json -M .\mvg\matches\matches.f.bin -o .\mvg\output
    8. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_ComputeSfM_DataColor.exe -i .\mvg\output\sfm_data.bin -o .\mvg\output\sfm_data_colorized.ply
    9. mkdir .\mvs
    10. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_openMVG2openMVS.exe -i .\mvg\output\sfm_data.bin -d .\mvs\undistortedImages -o .\mvs\scene.mvs

    如果运行自己图片,第一行添加 -f 10000,计算方式见下面公式

    start /WAIT /affinity 0x7f D:\OpenMVS\build-mvg\Windows-AMD64-Release\Release\openMVG_main_SfMInit_ImageListing.exe -i .\images\ -d D:\OpenMVS\openMVG\src\openMVG\exif\sensor_width_database\sensor_width_camera_database.txt -o .\mvg\matches -f 10160

    openMVG documentation! — openMVG library

    运行OpenMVS

    1. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvs\bin\vc15\x64\Release\DensifyPointCloud.exe -i ..\mvs\scene.mvs -w .\mvs
    2. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvs\bin\vc15\x64\Release\ReconstructMesh.exe -i ..\mvs\scene_dense.mvs -w .\mvs
    3. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvs\bin\vc15\x64\Release\RefineMesh.exe -i ..\mvs\scene_dense_mesh.mvs -w .\mvs
    4. start /WAIT /affinity 0x7f D:\OpenMVS\build-mvs\bin\vc15\x64\Release\TextureMesh.exe -i ..\mvs\scene_dense_mesh.mvs -w .\mvs

    查看结果,也可以用cloudcompare

    D:\OpenMVS\build-mvs\bin\vc15\x64\Release\Viewer.exe -i .\mvs\scene_dense_mesh_texture.mvs
    

  • 相关阅读:
    区块链(9):java区块链项目的Web服务实现之实现web服务
    Draft-P802.11be-D3.2协议学习__$36-EHT-PHY__$36.5-Parameters-for-EHT-MCSs
    vertx学习总结5
    软考高级系统架构设计师系列之:案例分析典型试题二
    马斯克雷军竞速「机器人」背后,一场机器革命正在发生 | 幂集创新
    JavaScript 基础知识
    【洛谷P2024】食物链【种类并查集】
    【机器学习-周志华】学习笔记-第十三章
    【0229】libpq库实现压测PG服务器max_connections的最大连接数
    vue 图片裁剪并回传显示
  • 原文地址:https://blog.csdn.net/qq_36638362/article/details/134078936