colmap


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

三维重建流程

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

在这里插入图片描述

稀疏重建

稀疏重建的基本流程如下图所示,最终得到场景中的相机姿态和表示场景结构的稀疏点云;
在这里插入图片描述

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

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

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

colmap GUI使用

输入

工程结构如下图所示:
在这里插入图片描述
File > New project,选择数据库文件和图像文件夹

在这里插入图片描述

处理
1.特征提取

processing - Feature Extraction

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

2.特征匹配

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

3. 增量式重建

reconstruction - > start reconstruction

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

输出

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

  • 7
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值