首先上一篇文章详细介绍了openmvs的环境配置。
此篇文章记录一下跑通GitHub openmvs示例项目的全过程。
首先openmvs开源项目中使用Sceaux Castle图像和OpenMVG管道来恢复相机位置和稀疏点云。
此时可以选择自行配置OpenMVG后来恢复相机位置和稀疏点云。
由于完整的示例(包括模块的 Windows x64 二进制文件)可以在OpenMVS_sample 中找到。所以此次直接从openmvs的DensifyPointCloud构建稠密点云开始操作。
开始
准备工作:
1、下载示例影像。
3、在openmvs文件夹下新建一个data子文件夹,将scene.mvs 文件放入文件夹内。再从data文件夹内新建一个images子文件夹,将第一步下载的图像放入此文件夹内。(如图所示,data文件夹中应只有一个images文件夹和scene.mvs文件,下图为跑完之后的文件夹,所以多了一些文件。)
此上工作准备完成后开始运行程序。
1、密集点云重建
打开配置好的openmvs,将DensifyPointCloud设置为启动项,右键DensifyPointCloud属性,找到调试,设置命令参数和工作目录。(如图所示)完成后点击确认,然后运行程序。
运行结束后获得的密集点云。data文件夹中会出现scene_dense.mvs等文件。可以用openmvs自带的viewer.exe查看.mvs文件。(如下图)
PS:此步还可以设置其他参数,采用不同的密集点云重建方法。这里就不一 一实验了。
2、粗糙网格重建
将ReconstructMesh设为启动项 ,右键ReconstructMesh属性,同样进行命令参数和工作目录的设置。(如图),命令参数为scene_dense.mvs。设置完成后确认,运行程序。
运行结束后得到 scene_dense_mesh.mvs 等文件。使用viewer.exe查看。
3、网格细化
将RefineMesh设为启动项 ,右键RefineMesh属性,同样进行命令参数和工作目录的设置。(如图),命令参数为scene_dense_mesh.mvs。设置完成后确认,运行程序。
运行结束后得到scene_dense_mesh_refine.mvs等文件。使用viewer.exe查看。
4、网格纹理
将TextureMesh设为启动项 ,右键TextureMesh属性,同样进行命令参数和工作目录的设置。(如图),命令参数为scene_dense_mesh_refine.mvs。设置完成后确认,运行程序。
运行结束后得到scene_dense_mesh_refine_texture.mvs等文件。使用viewer.exe查看。
至此,openmvs的示例项目已跑完,其中参数只用的最简单的参数,openmvs的很多功能还没有用到。之后会继续更新相关代码的解读和参数的设置。