作者丨方川@知乎

来源丨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

4.1 Least squares problem

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

4.2 Schur complement

4.3 Nullspace marginalization

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

2.Implement details

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

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

实验

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

Performance profiles

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

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

干货下载与学习

后台回复:巴塞罗自治大学课件,即可下载国外大学沉淀数年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从入门到精通:理论与实战

15.国内首个3D缺陷检测教程:理论、源码与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

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

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

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

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

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

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

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

  1. 刚刚,CVPR 2021论文接收结果「开奖了」

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要5分钟 Follow小博主,每天更新前沿干货 按照大会议程,本届大会论文接收结果会在今日公布.所以多数投稿人都处于「每隔几分钟就登录一次 CM ...

  2. 【CVPR 2021主席出炉】谭铁牛、虞晶怡当选,未来4年6位华人主席

    新智元获得独家消息,CVPR 2021 年主办团队终选投票已经结束.中国科学院院士谭铁牛将出任大会主席(General Chair,GC),上海科技大学的虞晶怡教授将任程序主席(Program Cha ...

  3. CVPR 2021 Oral | 室内动态场景中的相机重定位

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 关键词:动态场景,相机重定位 导  读 本文是对发表于计算机视觉和模式识别领域的顶级会议 CVPR 2 ...

  4. CVPR 2021 | 从理论和实验角度深入剖析对比损失中的温度超参数

    ©作者 | 李想 学校 | 哈尔滨工业大学(深圳) 研究方向 | 自然语言处理 Foreword 这次的论文笔记的内容是 CVPR'21 的一篇论文"Understanding the Be ...

  5. CVPR 2021 论文/代码分类汇总!持续更新中!

    CVPR 2021 的论文官方还没有完全公布,但有作者陆续公布出来一些.为方便大家跟进论文,了解最新技术,CV君在Github建了一个仓库,对已经出来的论文(目前是340多篇)进行了按类别汇总.对于O ...

  6. 图像匹配还用SIFT?来看看 CVPR 2021 比赛中的冠军方案

    本文转自旷视研究院. 在 CVPR 2021 Image Matching 比赛中,旷视研究院 3D 组取得了两冠一亚的成绩.Image Matching (图像匹配)是计算机视觉领域最基础的技术之一 ...

  7. CVPR 2021| 端到端场景无关视觉定位算法(SuperGlue一作出品)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 今天要介绍的文章是"Back to the Feature: Learning Robust ...

  8. CVPR 2021:记一次神奇的 Rebuttal 经历

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨信息门下遛狗@知乎(已授权) 来源丨https://zhuan ...

  9. 视频也能P!谷歌CVPR 2021最新视频P图模型omnimatte

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源:Google AI .新智元 [导读]你是否还在受视频P图不能 ...

最新文章

  1. AnimeGANv2 实现动漫风格迁移,简单操作
  2. php服务器监控windows,用Linux上的cacti去监控windows服务器(图)
  3. 计算机管理窗口下的菜单,win7电脑右键打不开管理菜单的详细攻略
  4. 通讯系统经验谈【一】TCP连接状态分析:SYNC_RECV,CLOSE_WAIT,TIME_WAIT
  5. JQuery.validate.js 表单验证
  6. 基于xilinx vivado的XDMA IP的使用详解
  7. 计算机地址栏搜索不了网,我的电脑地址栏不见了怎么办 地址栏不见了如何解决...
  8. 关闭Android电池温度告警框,android电源信息查看(电量、温度、电压)实例代码
  9. 软件开发包(SDK)安全与合规报告(2020)
  10. eclise去连接mysql,Eclipse如何连接MySQL
  11. python编程工时计算_Python编程题:两个日期间的天数统计(附代码)
  12. 8. wordpress源码解析-目录结构-文件调用关系(1)
  13. 【excel技巧读书笔记007】此工作薄包含一个或多个无法更新的链接
  14. CAD打印 acad.ctb丢失
  15. 硬盘三大种类( SSD ; HHD ; HDD )
  16. 剑指Offe面试题:用两个栈实现队列
  17. 关于Keil.STM32F1xx_DFP.1.0.5代码无法烧录解决办法
  18. ios模拟器 - Simulator录制视频
  19. 数据流图业务流程图之间的区别
  20. 什么是Nodejs?

热门文章

  1. springcloud与dubbo对比:
  2. 机器学习笔记7-监督学习
  3. PHP中的urlencode,rawurlencode和JS中的encodeURI,encodeURIComponent
  4. CentOS下的DNS服务器搭建
  5. [Python]Python操作/管理Mysql学习(一)
  6. [祝]微软山西DotNet俱乐部(高校行系列)山西大学公益讲座
  7. 干货!如何设计实现一个通用的分布式事务框架?
  8. 炸了!一口气问了我18个JVM问题!
  9. 某阿里程序员求助:绩效背1,老板让他主动走!敢要n+1就在背调时说坏话!怎么办?网友:大不了鱼死网破!...
  10. 讲解 Redis 的一篇深度好文!