g2o(General Graph Optimization)---通用图优化算法

g2o的本质:g2o是一个算法集的C++实现,而并不是在算法理论上的创新,即根据前人求解非线性最小二乘的理论,根据具体的问题,选用最合适的算法。

它是一个平台,你可以加入你自己的线性方程求解器,编写自己的优化目标函数,确定更新的方式。g2o的作者说Guassian-Newton和Levenberg-Marquardt方法比较naive,但是g2o的本质就是这些算法的实现。事实上,g2o iSAM SPA和 sSPA等非线性优化算法只是在非线性问题线性化时处理得不一样,在线性化后要求解线性方程都是利用了已有的linear solver库来求解,如 CSparse CHOLMOD PCG等,他们都需要依靠Eigen这个线性代数库。

g2o的用途:很多机器人的应用如SLAM(同步定位与制图)还有计算机视觉中的光束优化(bundle adjustment 参考http://blog.csdn.net/abcjennifer/article/details/7588865

http://courses.cs.washington.edu/courses/cse576/05sp/projects/proj3/artifacts/yongjoon/index.html)都会涉及到最小化非线性误差函数的问题。这类应用中,非线性误差函数可以用图(graph)的形式来表征。整个问题的求解就是要找到最符合观测量的相机参数或机器人状态。




g2o的实现:



类似算法:iSAM (参考http://openslam.org/iSAM.html

                    SPA2d (参考http://users.ics.forth.gr/~lourakis/sba/

                    HOG_Man


g2o与其他算法的效果对比:(具体参考论文:《g2o:a general graph optimization》)

Fig1:

Fig2:


Fig3:isam与其他算法的对比(参考:http://people.csail.mit.edu/kaess/isam/comparison.html




  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值