ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

g2o论文阅读笔记

2019-07-15 18:00:47  阅读:328  来源: 互联网

标签:非线性 BA 论文 笔记 SLAM g2o 优化 节点


纯粹方便自己理解整理的笔记,以前总是写在纸上,不知不觉都丢了。希望写在博客里,慢慢积累一些。

0、简介

SLAM/BA问题的目标:找到一组参数或状态变量,以最大限度地解释受高斯噪声影响的一组测量值。

这种问题可以被表示为一个图,图中的节点node:待优化的状态变量,图中的边edge:它所连接的两个节点的成对观察。

前人常使用标准方法(如高斯-牛顿、Levenberg-Marquardt、高斯-赛德尔或梯度下降的变体)的简单实现这种问题。

这篇论文描述了一个执行非线性最小二乘问题优化的一般框架。

图1概述了使用G2O作为优化后端可以解决的各种问题:

 

一个2D SLAM algorithm可以用不超过 30 行C++代码就实现了,只需要指定误差函数和参数。

1、解决SLAM/BA问题的相关工作

大多数算法都假设协方差大致是球形的,因此在优化pose graph时有困难,有些协方差具有零空间 或 特征值上具有实质性差异。

图优化可以看作是一个非线性最小二乘问题,通过在当前状态附近线性化、求解和迭代 进行求解。

求解线性系统的一种技术是预处理共轭梯度(PCG),是用于大型稀疏姿态约束系统的解算器,效率高。

g2o里面也包含了一个稀疏的PCG,使用了块状雅可比矩阵的预处理技术。

大量的工作都有很多局限性,但是g2o是通用的,适用于:2D SLAM with landmarks, 使用单目/双目相机的BA。

Sparse Bundle Adjustment是利用3D 点与相机姿态之间雅可比矩阵的稀疏性的非线性最小二乘法。

还有一些基于非线性共轭梯度的系统,不明确地形成线性系统,虽然收敛得很慢,但可以处理非常大的数据集,比如SSBA。

2、基于最小二乘法的非线性图优化

 误差函数模型如下,一般会找到它的最小值:

为了简单表示,下面使用简写表示变量:

 

使用这种形式表示的问题 可以通过有向图表示。

图的节点i表示参数块xi,节点i和j之间的边表示两个参数块xi和xj之间的有序约束。 图2显示了图形和目标函数之间的映射示例:

 A.最小二乘优化

 如果已经知道一个不错初始值x_,则公式(2)的数值解可以使用GN.LM方法,主要思想就是在当前初始值x_附近进行tylor一阶展开:

 

然后,在方程(1)的误差项Fij中代入方程(5)

 

标签:非线性,BA,论文,笔记,SLAM,g2o,优化,节点
来源: https://www.cnblogs.com/wongyi/p/11190415.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有