SFM方向开源软件COLMAP代码分析

作为目前最优的SFM开源软件COLMAP(离线处理模式),其详细介绍可参考:http://colmap.github.io/ ,编译源码后运行程序界面如下:

其稀疏重建数据处理流程为:

1)“File->Project",设置工程目录以及导入待处理数据集;

2)”Processing->Feature extraction/Feature matching",对导入的数据集进行特征提取与匹配;

3)“Reconstructin->Start reconstruction",进行增量式重建。

重建示例:

 

源码分析:

下载下来的源码位于colmap-3.5/src路径下,包括下图所示几个子文件夹:

base/util文件夹下除提供最基本的数据缓存存储格式定义外还有整个SFM流程中的最底层操作,其中最关键的是correspondence_graph的建立,对于后续的最优初始化图像对的选取以及Next best view selection;特征提取与匹配的基本操作在feature文件夹下,增量式重建的最基本操作在sfm文件夹下,光束法平差的最基本操作在optim文件夹下,controllers文件夹下涉及对最底层增量式重建和光束法平差操作的进一步封装,其下的”automatic_reconstruction"将前面分析的三步数据处理流程合并,一键式重建,ui文件夹与软件界面相关。

流程伪代码表示:

详细的函数实现总结如下(列出了源码中主要步骤涉及到的主要函数,函数实现的功能就是函数名表示的含义。具体参数变量定义见源码):

以上函数涉及到很多的参数选项设置,针对上面的三个数据处理流程,涉及到的选项设置如下(具体见源码,这里只是提取汇总):

发展趋势:

SFM相比于vSLAM,其重建速度略慢,但精度较高。COLMAP仍然为离线处理模式,可以向在线处理模式发展。

 

 

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值