CVPR 2021 | SquareRootBA:大场景中的平方根集束调整

作者丨方川@知乎

来源丨https://zhuanlan.zhihu.com/p/479818521

编辑丨3D视觉工坊

标题:Square Root Bundle Adjustment for Large-Scale Reconstruction

作者:Nikolaus Demmel, Christiane Sommer, Daniel Cremers, Vladyslav Usenko

来源:CVPR 2021

今天我们要精读的文章事来自TUM的Square Root Bundle Adjustment for Large-Scale Reconstruction。这篇工作针对Bundle Adjustment中边缘化问题,提出了对待优化地图点做QR分解的方法,来加速BA, 并且可以达到与传统舒尔补方法相当的精度结果. 本文方法对在资源受限的嵌入式设备上运行大规模BA有一定的借鉴意义.

摘要

本文提出一种新的Bundle Adjustment的公式模型, 在地图点边缘化过程中引入QR分解, 以此来达到减少bundle adjustment计算量的目的, 我们称之为square root BA, 代数上等价于平时使用的Schur complement, 但是本文方法可以使用单精度浮点运算解决大场景下的bundle adjustment问题. 在真实数据上的实验结果表明, square root BA可以得到和Schur complemnet一样精度,而且运行速度更快.

主要贡献:

1.本文提出一种零空间投影的边缘化方法,替代传统的舒尔补, 实验证明了本文方法与舒尔补在代数上是等价的;

2.针对BA问题的特殊结构, 本文实现了高效的零空间投影边缘化;

3.本文方法可以很好的并行化, 并且可以支持单精度浮点运算;

4.本文方法在大场景的BA数据集上做了大量测试, 并且与sota的ceres优化框架做了对比, 证明本文方法的可行性;

算法流程

1. Square root bundle adjustment

f16421d78e2ebd32c736594723c86d61.png

4.1 Least squares problem

我们一般采用Levenberg-Marquardt算法求解公式(5), LM算法的基本思想是把残差线性化, 把最小二乘问题转换为一个带阻尼的线性问题:

f0a0d88e101df4801c0e27a12b27c8ee.png

f31d5f20fb30a68beff43e6e6bdd8270.png

4.2 Schur complement

f346647f3c4c50d098dbfeb81dbd4630.png

4.3 Nullspace marginalization

8cdd2034c316006500c5ba21cf85d8ed.png

至此,公式(6)定义的优化问题变成了优化目标公式(17), 目标函数的参数数量大大减少, 而且不需要像舒尔补那样显式构建Hessian矩阵.

2.Implement details

c282103b7e46e8b4d6861c683c198da7.png

7c0f781951500ef55c602e9615967b81.png

90a957c64058a7584357fcb13b653906.png

使用共轭梯度线性求解器.

系统可以对每个地图点的landmark block独立的处理线性化、边缘化、两步求解工作, 所以可以直接并行化计算.

实验

对比实验中的几项对比对象:

bb15552c7d27afc3e2fea49cd43b6cd7.png

659e1963a9f16fdb5cd65ad1ad7c0070.png

Performance profiles

0f641b3c86f8076ea574bae634441748.png 778d9eb299264431f403aacbb8e1ab63.png

内存占用情况: 每个landmark block的存储大小与观测到该地图点的相机数量成平方增长.

ba389532c218dbdcac31e1b660f6513a.png

本文仅做学术分享,如有侵权,请联系删文。

干货下载与学习

后台回复:巴塞罗自治大学课件,即可下载国外大学沉淀数年3D Vison精品课件

后台回复:计算机视觉书籍,即可下载3D视觉领域经典书籍pdf

后台回复:3D视觉课程,即可学习3D视觉领域精品课程

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

14.ROS2从入门到精通:理论与实战

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

d7e06785f53f1ca1b824edeab16f9d14.png

▲长按加微信群或投稿

8e1440ff43b666ffda590f5dd57313c3.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

337bef0f6370ddb6b7b8fb8efbaa7cb7.png

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~

猜你喜欢

转载自blog.csdn.net/qq_29462849/article/details/124013267