A tutorial for colmap to openMVS

COLMAP步骤

Step1 特征提取

colmap feature_extractor 
--SiftExtraction.use_gpu 0 
--database_path $PROJECT/database.db
--image_path $DATA_ROOT/$PROJECT/images

Step2 特征匹配

colmap exhaustive_matcher
--SiftMatching.use_gpu 0
--database_path $PROJECT/database.db

Step3 SFM/空中三角测量

colmap mapper
--database_path $PROJECT/database.db 
--image_path $DATA_ROOT/$PROJECT/images 
--output_path $PROJECT/sparse

Step4 影像去畸变

colmap image_undistorter 
--image_path $DATA_ROOT/$PROJECT/images 
--input_path $PROJECT/sparse/0 
--output_path $PROJECT/dense 
--output_type COLMAP 
    here --output_type, you could find the usage at

Step5 模型转换

(将所有相机模型转换为针孔pinhole模型)

colmap model_converter 
--input_path $PROJECT/dense/sparse 
--output_path $PROJECT/dense/sparse  
--output_type TXT
    Under this step, you will see three txt file will be created at $PROJECT/dense/sparse dir. cameras.txt, images.txt, point3D.txt But you could choice another place to save them. And PINHOLE is in cameras.txt you will see.

OpenMVS步骤

Step6 格式转换

InterfaceCOLMAP 
--working-folder $(pwd)/$PROJECT/ 
--input-file $(pwd)/$PROJECT/ 
--output-file $(pwd)/$PROJECT/model_colmap.mvs

Step7 密集重建

DensifyPointCloud 
--input-file $(pwd)/$PROJECT/model_colmap.mvs 
--working-folder $(pwd)/$PROJECT/ 
--output-file $(pwd)/$PROJECT/model_dense.mvs 
--archive-type -1 
    Here --archive-type -1 must be set

Step8 表面重建/构网

ReconstructMesh --input-file $(pwd)/$PROJECT/model_dense.mvs 
--working-folder $(pwd)/$PROJECT/ 
--output-file $(pwd)/$PROJECT/model_dense_mesh.mvs

Step9 网格精化

RefineMesh 
--resolution-level 1 
--input-file $(pwd)/$PROJECT/model_dense_mesh.mvs 
--working-folder $(pwd)/$PROJECT/ 
--output-file $(pwd)/$PROJECT/model_dense_mesh_refine.mvs

Step10 纹理映射

TextureMesh 
--export-type obj 
--output-file $(pwd)/$PROJECT/model.obj 
--working-folder $(pwd)/$PROJECT/ 
--input-file $(pwd)/$PROJECT/model_dense_mesh_refine.mvs
经验分享 程序员 微信小程序 职场和发展