bundle fusion代码精讲

引言

慕尼黑工大的bundlefusion开发至少超过数年时间,至今在RGBD类型的开源项目中依然是性能较佳的存在

原版在Windows环境中完成,且不易移植到其他框架中,东北大学的关老师做了Linux环境的移植,还在进行中

笔者在slam领域历时不久,且欣喜此份代码的高完成度和实时性,决定对各个模块逐一注释修改,希望将来有所启迪

1,FriedLiver/Source/FriedLiver.cpp

工程编译的main函数在此其中zParametersDefault.txt  zParametersBundlingDefault.txt被定义为抽取的配置文件

根据代码可以./FriedLiver  或者./FriedLiver  zParametersDefault.txt  zParametersBundlingDefault.txt执行

这里调用的ParameterFile 格式的类专门读取储存配置文件 和增删改查

parameterFile.h中ml空间中用一个类ParameterFile 定义了对文件读取和使用方法

GlobalAppState.h中有个

private:
    bool            m_bIsInitialized;
    ParameterFile    m_ParameterFile;  此次可以储存定义过得的数据类型
    //ID3D11Query*    m_pQuery;

回到FriedLiver.cpp   main函数中:

        //Read the global app state
    

实时全局一致的3D重建,使用动态表面重新整合技术实时,高品质,大尺寸场景的3D扫描是混合现实和机器人应用的关键。然而,可扩展性带来了姿态估计漂移的挑战,在累积模型中引入了显着的错误。方法通常需要几个小时的离线处理来全局纠正模型错误。最近的在线方法证明了令人信服的结果,但遭受以下缺点:(1)需要几分钟的时间才能执行在线修正,影响了真正的实时使用; (2)脆弱的帧到帧(或帧到模型)姿态估计导致许多跟踪失败;或(3)仅支持非结构化的基于点的表示,这限制了扫描质量和适用性。我们通过一个新颖的,实时的端对端重建框架来系统地解决这些问题。其核心是强大的姿态估计策略,通过考虑具有高效分层方法的RGB-D输入的完整历史,针对全局摄像机姿态优化每帧。我们消除了对时间跟踪的严重依赖,并且不断地将其定位到全局优化的帧。我们提出了一个可并行化的优化框架,它采用基于稀疏特征和密集几何和光度匹配的对应关系。我们的方法估计全局最优化(即,束调整的姿势)实时,支持从总跟踪故障(即重新定位)恢复的鲁棒跟踪,并实时重新估计3D模型以确保全局一致性;都在一个框架内。我们优于最先进的在线系统,质量与离线方法相同,但速度和扫描速度前所未有。我们的框架导致尽可能简单的扫描,使用方便和高质量的结果。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值