colmap

colmap

  • 三维重建流程
    • 稀疏重建
      • colmap GUI使用
        • 输入
        • 处理
          • 1.特征提取
          • 2.特征匹配
          • 3. 增量式重建
        • 输出
      • colmap 命令行
        • 特征提取
        • 特征匹配
        • 建稀疏图

colmap是用于三维重建的经典软件

三维重建流程

基于MVS的三维重建技术流程包括以下步骤:数据采集,稀疏重建,深度图估计和稠密重建;

colmap_第1张图片

稀疏重建

稀疏重建的基本流程如下图所示,最终得到场景中的相机姿态和表示场景结构的稀疏点云;
colmap_第2张图片

我们主要利用SfM进行稀疏重建

SfM,(Structure From Motion,从运动中恢复结构),是一种从一组不同视角下拍摄的无序或有序影像中,同时恢复场景三维结构和相机姿态的技术。

增量式SfM选择无序影像进行特征匹配,并进行几何纠正、三角测量恢复稀疏点云结构,通过已有点云重新估计相对姿态,再进行局部和全局的BA优化。之后逐步向已有的结构中增加视角或影像,进行三角测量和姿态估计,再进行BA优化修正结构数据,最后输出全部的相机参数和稀疏三维点云。

colmap GUI使用

输入

工程结构如下图所示:
colmap_第3张图片
File > New project,选择数据库文件和图像文件夹

colmap_第4张图片

处理

1.特征提取

processing - Feature Extraction

只需要将相机模型选择为“Pinhole”模型即可,其他参数默认可以不变。一般我们采集的影像是携带有EXIF文件的,所以这里,需要选上“Parameters from EXIF”,意思是从EXIF中提取相机内参数。之后点击“Extract”即可进行特征提取.

2.特征匹配

processing -> Feature Matching,选择默认的参数,然后点击“Run”

3. 增量式重建

reconstruction - > start reconstruction

增量式重建是个逐渐增加视角,并进行迭代优化重投影误差的过程。目的是计算不同视图的相机参数、得到场景的稀疏点云和确定不同视图与点云之间的可视关系。整个过程将会自动进行增量式重建,我们可以从旁边的log框内查询当前状态。
colmap_第5张图片
结束后,就可以获得目标场景稀疏点云和各个视角的相机姿态

输出

COLMAP 使用二进制文件格式(扩展名为.bin,机器可读、速度快)来存储稀疏模型。此外,COLMAP 提供了将稀疏模型存储为文本文件(扩展名为.txt,人类可读、慢)的选项。

在这两种情况下,信息都被分成三个文件,分别是关于相机、 图像和点的信息。包含这三个文件的任何目录构成一个稀疏模型。

在这里插入图片描述
在这里插入图片描述
File > Export model 和 File > Export model as text可以分别导出bin和txt文件

可以用File > Import model导入模型

colmap 命令行

特征提取

colmap feature_extractor --database_path p2/database.db --image_path p2/images

特征匹配

colmap exhaustive_matcher --database_path p2/database.db --SiftMatching.max_num_matches 5768

设置max_num_matches,防止超出显存

建稀疏图

mkdir p2/sparse

colmap mapper --database_path p2/database.db --image_path p2/images --output_path p2/sparse

https://zhuanlan.zhihu.com/p/184978050
https://blog.csdn.net/X_kh_2001/article/details/82591978#t9
https://colmap.github.io/install.html

你可能感兴趣的:(colmap,colmap)