G2O优化方法使用流程:
1、构建模型的顶点:
oplusImpl( const double* update ) ——》顶点的更新函数
2、构建模型的边:void computeError()
——》计算曲线模型误差,边的误差计算函数,取出边所连接的顶点的当前估计值,与该顶点的观测值进行比较
3、生成带噪声的观测数据;
4、选择优化算法:LM 、GN、Dogleg等
4、申明一个图优化模型,并往模型中增加 顶点和边:g2o::SparseOptimizer optimizer;
optimizer.addVertex( v );
optimizer.addEdge( edge );
5、求解并输出:optimizer.initializeOptimization();
optimizer.optimize(100);
结合《视觉十四讲》的代码,添加注释:
#include <iostream>
#include <g2o/core/base_vertex.h>
#include <g2o/core/base_unary_edge.h>
#include <g2o/core/block_solver.h>
#includ