[最新有效]高翔RGB-D SLAM中最新版本g2o報錯解決方案

報錯一共有兩個原因:

  1. 初始化g2o的接口已經發生變動需要修改
    解決方案:以下是最新的初始化g2o的代碼(2019年11月15日14:17:40)
// 初始化g2o 
typedef g2o::BlockSolver< g2o::BlockSolverTraits<6,3> > Block;  // pose維度爲 6, landmark 維度爲 3
 
std::unique_ptr<Block::LinearSolverType> linearSolver ( new g2o::LinearSolverEigen<Block::PoseMatrixType>());
 
std::unique_ptr<Block> solver_ptr ( new Block ( std::move(linearSolver)));
 
g2o::OptimizationAlgorithmGaussNewton* solver = new g2o::OptimizationAlgorithmGaussNewton ( std::move(solver_ptr));
 
g2o::SparseOptimizer optimizer;
optimizer.setAlgorithm( solver );
  1. globalOptimizer not in scop
    解決方案:
    將代碼中所有的變量名爲globalOptimizer改爲optimizer

你的贊是我分享易懂教程的最大動力!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章