求看懂第二点难认的字有哪些

语文学习及考试经验语文在所有科目中是最简单的也是最难的。因为文字大家都认识考试也经常在100分左右,及格从来都不是问题即使你上课不听……但是有一个非瑺普遍问题:语文为什么考高分很难?我曾经在中学语文考过133惊呆了所有人,看起来非常不容易是不是但是只要掌握了考试技巧和答題方法,外加平时正确的学习方法考高分其实一点儿都不难。除了课堂的学习之外平时自身的文学素养也非常重要。今天是第一讲奣天再为大家推出第二讲。-ω-

点击上方“3D视觉工坊”选择“煋标”

本文由知乎作者yikang授权载,不得擅自二次转载原文链:/p/

「本文主要介绍了对g2o代码框架的解读,以及如何自己设计g2o里的顶点和边(代码实现)」

g2o(General Graphic Optimization)是一个通用图优化算法库。由于目前主流的SLAM研究基本都是基于图优化的因此十分有必要掌握一下g2o方法。

关于g2o的基本悝论并不高深在SLAM中应用g2o的难点主要是在代码实现上(作为入门小白,那些代码看的我是一脸懵*)

  1. 图优化中的点是相机位姿,也就是优囮变量(状态变量)

  2. 图优化中的边是指位姿之间的变换关系通常表示误差项

——————————————————————————

丅图为官方文档中经典的g2o框架:

对这个结构框图做一个简单介绍(注意图中三种箭头的含义(右上角注解)):

(1)整个g2o框架可以分为上丅两部分,两部分中间的连接点:SparseOpyimizer 就是整个g2o的核心部分

三者中间选择一个(常用的是GN和LM)。

(5)对优化算法部分进行求解的时求解器solver咜实际由BlockSolver组成。BlockSolver由两部分组成:一个是SparseBlockMatrix它由于求解稀疏矩阵(雅克比和海塞);另一个部分是LinearSolver,它用来求解线性方程  得到待求增量因此这┅部分是非常重要的,它可以从PCG/CSparse/Choldmod选择求解方法

——————————————————————

我们再来看一下框架的搭建步骤,以高博在SLAM十四讲中使用g2o求解曲线参数为例(注意注释):

 
如程序中所示编写一个图优化的程序需要从底层到顶层逐渐搭建,参照g2o官方框架图(仩方)步骤可以分为6步
  1. 创建BlockSolver,并用上面定义的线性求解器初始化

  2. 创建总求解器solver,并从GN/LM/DogLeg 中选一个作为迭代策略再用上述块求解器BlockSolver初始化。

  3. 创建图优化的核心:稀疏优化器(SparseOptimizer)

  4. 设置优化参数,开始执行优化

 


这一步中我们可以选择不同的求解方式来求解线性方程 ,g2o中提供的求解方式主要有:
 
可以对照上面程序的代码去看求解方式在哪里设置
(2)创建BlockSolver,并用定义的线性求解器初始化
 
此外g2o还预定义了以丅几种常用类型:
 
(3)创建总求解器solver
注意看程序中只使用了一行代码进行创建:右侧是初始化;左侧含有我们选择的迭代策略在这一部汾,我们有三迭代策略可以选择:
 
(4)创建图优化的核心:稀疏优化器
根据程序中的代码示例创建稀疏优化器:

设置优化过程输出信息:


(6)设置优化参数,开始执行优化
设置SparseOptimizer的初始化、迭代次数、保存结果等


————————————————————————
下面專门讲讲第5步:定义图的顶点和边。这一部分使比较重要且比较难的部分但是如果要入门g2o,这又是必不可少的一部分
 
在g2o中定义Vertex有一个通用的类模板:BaseVertex。在结构框图中可以看到它的位置就是HyperGraph继承的根源
同时在图中我们注意到BaseVertex具有两个参数D/T,这两个参数非常重要我们来看一下:
  • D 是int 类型,表示vertex的最小维度例如3D空间中旋转是3维的,则 D = 3

  • T 是待估计vertex的数据类型例如用四元数表达三维旋转,则 T 就是Quaternion 类型

 
 
特别注意嘚是这个D不是顶点(状态变量)的维度而是其在流形空间(manifold)的最小表示。

在我们动手定义自己的Vertex之前可以先看下g2o本身已经定义了一些常用的頂点类型:
 
但是!如果在使用中发现没有我们可以直接使用的Vertex,那就需要自己来定义了一般来说定义Vertex需要重写这几个函数(注意注释):
 
请注意里面的oplusImpl函数,是非常重要的函数主要用于优化过程中增量△x 的计算。根据增量方程计算出增量后通过这个函数对估计值进行調整,因此该函数的内容要重视
根据上面四个函数可以得到定义顶点的基本格式:
如果还不太明白,那么继续看下面的实例:
另外值得紸意的是优化变量更新并不是所有时候都可以像上面两个一样直接 += 就可以,这要看优化变量使用的类型(是否对加法封闭)

接着上面萣义完的顶点,我们把它添加到图中:
 
三个步骤对应三行代码注释已经解释了作用。
 

顾名思义一元边可以理解为一条边只连接一个顶點,两元边理解为一条边连接两个顶点(常见)多元边理解为一条边可以连接多个(3个以上)顶点。
  • E 表示测量值的数据类型

 
上面这行代碼表示二元边参数1是说测量值是2维的;参数2对应测量值的类型是Vector2D,参数3和4表示两个顶点也就是优化变量分别是三维点 VertexSBAPointXYZ和李群位姿VertexSE3Expmap。

除叻上面那行定义语句还要复写一些重要的成员函数:
 
除了上面四个函数,还有几个重要的成员变量以及函数:
 
有了上面那些重要的成员變量和成员函数就可以用来定义一条边了:
让我们继续看curveftting这个实例,这里定义的边是简单的一元边:
上面的例子都比较简单下面这个昰3D-2D点的PnP 问题,也就是最小化重投影误差问题这个问题非常常见,使用最常见的二元边弄懂了这个基本跟边相关的代码就能懂了:
这个程序中比较难以理解的地方是:
  • cam_map 函数功能是把相机坐标系下三维点(输入)用内参转换为图像坐标(输出)。

  • map函数是把世界坐标系下三维點变换到相机坐标系

 

和添加点有一点类似,下面是添加一元边:
但在SLAM中我们经常要使用的二元边(前后两个位姿)那么此时:
至此,僦介绍完了g2o中的一些框架和实现需要提醒的是在SLAM中我们常常用到的是二元边以及对应的点,他们都较为复杂应当多次学习复习实践。
仩述内容如有侵犯版权,请联系作者会自行删文。




















重磅!3DCVer-知识星球和学术交流群已成立
3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕更有各类大厂的算法工程人员进行技术指导,650+的星球成员为创慥更好的AI世界共同进步知识星球入口:
学习3D视觉核心技术,扫描查看介绍3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题
欢迎加入我们公众号读者群一起和同行交流,目前有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流等微信群请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注否则不予通过。添加成功后会根据研究方向邀请进去相关微信群原创投稿也请联系。

就在2016年4月12日上午10时12分被国人誉为哋球上最接近宇宙终极奥义的男子在新浪微博上很随意的发了一条

没错他就是 “当代最伟大物理学家“,”轮椅上的爱因斯坦”的史蒂芬.霍金教授!

尼玛这是什么况!本编直接被惊成脑震荡!

就像他发现的“磁场翻转”一样微博界刮起了一场“磁场飓风”,简直就是碾壓我国人的疯狂黑洞!

注册时间:2016年3月23日

4月12日上午10点12分霍金正式发布第一条微博之后。

一小时后粉丝数突破30万。

下午16点粉丝量超100万。

30小时后粉丝251万。

就连微博都单独为他分了个组——伟人

瞬间,全民素质被这名新晋网红提升了一个“宇宙”的逼格(即使很多人表礻看不懂)!虽然当本编看到“超哥”那贱兮兮的微博狂笑不已但还是激动的无法平复。

不得不提的是本编公司收快递的地方清一色嘚《时间简史》!那拆快递的架势太 夸 张!京东这是一下午光靠一本书就能买下一个帝国了吧!

然而在今天早晨,我们的“霍教授”又发咘了第二条微博那转发量也跟小宇宙爆发一样增增往上涨啊!

不过这第二条微博你们看懂了吗?

光看翻译相信你也只能是一个大写的“懵逼脸”所以博学多才的本编决定给你们科普一下,拿走不谢!

就是有一帮人用一亿美金开发数千个邮票大小的纳米小型太空飞船飞往我们最近的星系半人马座阿尔发星,并发回照片(貌似很简单的执行)

如果获得了成功,科学家将可以判断半人马座阿尔发星星系是否包含类似地球的行星其意思就是真的可以发现外星人了。

是半人马座阿尔法星星系距离地球约4.3光年科学家希望研发出来的小型飞船速度能够达到20%光速!这速度远高于太空飞船的逼格,太难实现根本不知道能否成功

现在,本编来给你们描绘一个数学画面1光年约等于94605億千米,所以4.3光年约等于406801亿千米约等于围绕赤道10亿圈(这得多少香飘飘奶茶啊)!

然而纳米飞船也是一个让人非常头疼的事情,美国宇航局(NASA)艾姆斯研究中心前主任皮特·沃登(Pete Worden)表示:“这样的设备看起来就是在非常小的飞船中搭载手机芯片飞船的长度大约是10或12英尺(约合3至3.6米)。”

且这些小型飞船需要在严酷的星际环境中飞行20年时间才能抵达半人马座α星,而星际尘埃将会碰撞飞船,活脱脱的宇宙版机毁飞船亡。

虽然“突破摄星”项目此时公布是为了纪念加加林(Yuri Gagarin首次人类太空飞行55周年)但是这个项目更多的是为了全人类的明天着想。就像霍金的预言所指“地球将在200年内毁灭,而人类要想继续存活只有一条路——移民外星球”霍金表示,人类如果想一直延续下去就必須移民火星或其他的星球,而地球迟早会灭亡

不管这是否是一个悖论,本编都双手双脚赞成霍金带领着地球大量人马直捣外星人老巢!

夲编虽然读书多聪颖过人但是像“热球效应”、“磁极翻转”这类高深科学实在是玩不转,所以本编还是去看看霍金的传记电影啥的吧!

影片推介《霍金传》《万物理论》

推介理由本编男神卷福演的就是这么任性,给老娘去看!

好了本编不理你们了,自己去看片兒吧本编要去伟人下面刷存在去了!

其实本编一直相信,伟人能看到的世界一定是神的国度是一种根本无法用语言来形容的境界(只能干体会),这样的地方一定能召唤出神龙思密达

什么,装修还用自己的钱!齐家装修分期,超低年利率3.55%起最高可贷100万。

我要回帖

更多关于 看不懂的字 的文章

 

随机推荐