2021-08-26 g2o pdf总结

本文详细介绍了G2O框架中顶点(BaseVertex)和边(BaseUnaryEdge, BaseBinaryEdge)的基础概念,包括顶点的变量类型、运算符定义、边的error计算规则,以及雅各比矩阵的使用。重点讲解了BaseVertex的基本信息和oplusImpl函数,以及BaseUnaryEdge和BaseBinaryEdge的对应顶点类型、误差维度和测量值类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 概述

通过“顶点”和“边”来定义一个优化问题:
(1)顶点需要包含如下信息:
变量 x i x_i xi是什么类型的: D o m ( x i ) Dom(x_i) Dom(xi)
变量 Δ x i \Delta x_i Δxi是什么类型的: D o m ( Δ x i ) Dom(\Delta x_i) Dom(Δxi)
如何通过 x i x_i xi Δ x i \Delta x_i Δxi得到新的 x i x_i xi ⊞ : D o m ( x i ) × D o m ( Δ x i ) → D o m ( x i ) \boxplus : Dom(x_i) \times Dom(\Delta x_i) \rarr Dom(x_i) :Dom(xi)×Dom(Δxi)Dom(xi)

(2)边需要包含如下信息:
对于每一种类型的边,都代表error,需要满足: D o m ( Δ x i 1 ) × D o m ( Δ x i 2 ) . . . D o m ( Δ x i n ) → D o m ( z i ) Dom(\Delta x_{i1}) \times Dom(\Delta x_{i2})...Dom(\Delta x_{in}) \rarr Dom(z_i) Dom(Δxi1)×Dom(Δxi2)...Dom(Δxin)Dom(zi)
x i ⊞ Δ x i x_i \boxplus \Delta x_i xiΔxi的结果完全满足观测量 z i z_i zi时,上面的error应该等于0

(3)雅各比矩阵
在g2o的框架里,可以默认进行雅各比矩阵的数值求解。但还是推荐自己手推一个雅各比矩阵公式。
在这里插入图片描述

1.1 常用点和边类型

1.1.1 BaseVertex

需要指定:
(1) x i x_i xi Δ x i \Delta x_i Δxi的维度,是同一个数
(2) x i x_i xi的类型
(3) oplusImpl(double* v) 函数,也就是 ⊞ \boxplus 运算符,用来更新估计值_estimate,这个_estimate是一个vertex内部的成员变量

1.1.2 BaseUnaryEdge

需要指定:——下面的解释有问题
(1)对应的vertex的类型
(2)error的类型和维度
(3)computeError函数,将计算出的error存入 Eigen::Matrix类型的 _error变量当中

1.1.3 BaseBinaryEdge

需要指定:——下面的解释有问题
(1)对应的两个vertex的类型
(2)测量值measurement的类型和维度?
(3)compute error函数

这里是对的
重新解释一下:D是误差的维度,E是measurement的类型
在这里插入图片描述
这里D是误差维度,E是measurement类型,VertexXi 和VertexXj分别是两个顶点的类型
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值