01 2018 档案

摘要:这里不想解释怎么 marginalize,什么是 First Estimates Jacobian (FEJ)。这里只看看代码,看看Hessian矩阵是怎么构造出来的。 1 优化流程 整个优化过程,也是 Levenberg–Marquardt 的优化过程,这个优化过程在函数 "FullSystem: 阅读全文
posted @ 2018-01-31 21:55 JingeTU 阅读(5329) 评论(1) 推荐(4)
摘要:从数据流的角度讲一遍 DSO 代码框架。 DSO 的入口是 FullSystem::addActiveFrame,输入的影像生成 FrameHessian 和 FrameShell 的 Object,FrameShell 是 FrameHessian 的成员变量,FrameHessian 保存影像信 阅读全文
posted @ 2018-01-22 16:41 JingeTU 阅读(11016) 评论(10) 推荐(6)
摘要:这里有一个细节,我想了很久才想明白,DSO 中的 residual 联系了两个关键帧之间的相对位姿,但是最终需要优化帧的绝对位姿,中间的导数怎么转换?这里使用的是李群、李代数中的Adjoint。 参考 http://ethaneade.com/lie.pdf 。 需要变通一下,字母太多,表达不方便。 阅读全文
posted @ 2018-01-17 23:09 JingeTU 阅读(5024) 评论(9) 推荐(2)
摘要:接上一篇博客《直接法光度误差导数推导》,DSO 代码中 "CoarseInitializer::trackFrame" 目的是优化两帧(ref frame 和 new frame)之间的相对状态和 ref frame 中所有点的逆深度。 在代码中出现了变量 和变量 ,其中的"sc"是指 Schur 阅读全文
posted @ 2018-01-16 15:52 JingeTU 阅读(4186) 评论(0) 推荐(3)
摘要:DSO 代码中初始化的部分。CoarseInitializer 将第一帧作为 ref frame,第二帧作为 new frame。ref frame 的 idepth (inverse depth) 一开始的时候都设置为1,随后在确定 new frame 相对 ref frame 之间相对位姿、光度 阅读全文
posted @ 2018-01-05 11:52 JingeTU 阅读(8694) 评论(6) 推荐(3)