BALProblem.h---------定义BALProblem类。

    BALProblem类保存我们的BA所需要的所有数据,包括相机与路标之间的联系,相机变量+路标变量的初始值。这些数据的原始信息都保存在data文件夹下的txt文件中。
    BALProblem类提供了将数据导出到ply文件的功能,可以通过Mashlab软件查看点云的三维信息。

g2o_bal_class.h ------自定义节点和边,节点:相机和路标点,边表示他们之间的观测。覆盖基类中的一些函数。

          节点VertexCameraBAL、VertexPointBAL是直接把更新量看做向量求加法。

          边EdgeObservationBAL:每一条边都对应一个代价函数。自动求导公式需要类型将需要求导的公式是现在括号运算符()中。

g2o_bundle.cpp--------

      BuildProblem函数:完成对于目标函数的构造
               为了充分利用BA中的稀疏性,将路标中的setMarginalized属性=ture
      WriteToBALProblem
      SetMinimizerOptions
      SetLinearSolver
      SetSolverOptionsFromFlags:使用用户的输入参数来设置优化求解。
      SolveProblem
----------使用g2o:
1、选择一种非线性优化的下降策略。
2、选择一个线性求解器。
3、搭建问题,求解

-dense_linear_algebra_library <string> Options are: eigen and lapack. (default: eigen)
-final_ply <string> Export the refined BAL file data as a PLY (default: final.ply)
-initial_ply <string> Export the BAL file data as a PLY file. (default: initial.ply)
-input <string> file which will be processed
-linear_solver <string> Options are: sparse_schur, dense_schur, sparse_normal_cholesky (default: dense_schur)
-num_iterations <int> Number of iterations. (default: 10)
-num_threads <int> Number of threads. (default: 1)
-ordering <string> Options are: automatic, user. (default: automatic)
-point_sigma <double> Standard deviation of the point perturbation. (default: 0)
-random_seed <int> Random seed used to set the state (default: 38401)
-robustify Use a robust loss function
-rotation_sigma <double> Standard deviation of camera rotation perturbation. (default: 0)
-sparse_linear_algebra_library <string> Options are: suite_sparse and cx_sparse. (default: suite_sparse)
-translation_sigma <double> translation perturbation. (default: 0)
-trust_region_strategy <string> Options are: levenberg_marquardt, dogleg. (default: levenberg_marquardt)

g20学习笔记的更多相关文章

  1. 【整理】HTML5游戏开发学习笔记(5)- 猜谜游戏

    距上次学习笔记已有一个多月过去了,期间由于新项目赶进度,以致该学习计划给打断,十分惭愧.书本中的第六章的例子相对比较简单.所以很快就完成. 1.预备知识html5中video标签的熟悉 2.实现思路对 ...

  2. 23 DesignPatterns学习笔记:C++语言实现 --- 1.5 Prototype

    23 DesignPatterns学习笔记:C++语言实现 --- 1.5 Prototype 2016-07-21 (www.cnblogs.com/icmzn) 模式理解

  3. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  4. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  5. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  6. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  7. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  8. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  9. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

随机推荐

  1. I.MX6 Android can-utils 移植

    /******************************************************************* * I.MX6 Android can-utils 移植 * ...

  2. scrapy学习笔记:项目中 使用代理ip

    做为一个爬虫,最头疼的问题就是你的ip被封,想要在Scrapy领域无限制畅游,做好伪装是第一步,于是乎,抓取代理IP成了很多教程的开始部分.这里我说一下代理scrapy中代理ip,仅供大家借鉴! 代理 ...

  3. luogu 3960 列队

    noip2017 D2T3 列队 某zz选手当时直接放弃了写了50还写错了 题目大意: 有一个n行m列的方阵,第i行j列的点编号为(i-1)m+j 每次把第x行y列的点拿出来,然后把这一行它之后的点都 ...

  4. 【Usaco2008 Dec】Patting Heads

    [题目链接] 点击打开链接 [算法] 我们知道,每个编号为a[i]都要被编号是a[i]的约数的牛拍一次头(除了它自己),因此,只需用类似于筛法的方式统计答案, 即可 [代码] #include< ...

  5. 深入分析glibc内存释放时的死锁bug

    通常我们认为一旦内存写溢出,程序就很容易崩溃.所以服务器上通常会对一些重要进程做脚本保护,一旦崩溃立即重新拉起. 最近发现我们一个公共服务内存写溢出时程序没有崩溃,而是卡死了. 为了深入分析原因,我们 ...

  6. bzoj1090 [SCOI2003]字符串折叠——区间DP

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1090 区间DP... 代码如下: #include<iostream> #inc ...

  7. bzoj4631

    4631: 踩气球 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 260  Solved: 133[Submit][Status][Discuss] ...

  8. TCP、UDP和HTTP关系

    TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层.IP:网络层协议: TCP和UDP:传输层协议:TCP提供有保证的数据传输,UDP不提供. HTTP:应用层协议(超文本传输协议): 如 ...

  9. Tomcat闪退的解决办法

    1 首先考虑的是端口占用 2 现在讲的是这一种方法 (1)找到解压缩的文件的bin目录 找到startup.bat 记事本打开 开头加上两句话 SET JAVA_HOME=C:\Program Fil ...

  10. P2093 [国家集训队]JZPFAR(KDTree)

    传送门 类似于p4357 不过因为距离相等的时候要优先选择序号小的,所以要重载一下运算符 //minamoto #include<bits/stdc++.h> #define R regi ...