1.Robust Odometry Estimation for RGB-D Cameras

Author: Christian Ked, Jiirgen Sturm, and Daniel Cremers


文章目录

  • 1.Robust Odometry Estimation for RGB-D Cameras
    • 一、个人总结
    • 二、论文笔记
      • 1. Direct Motion Estimation
      • 2. Robust Motion Estimation
      • 3. Evaluation
      • 4. Conclusion

一、个人总结

研究背景:怎么在没有外部参考系的情况下实现导航和位置控制?

研究问题:以高帧速、低时延计算运动更新量,并使运动估计的更新量对离群点鲁棒。

前人成果:

  • 单目和双目常用基于特征的方法跟踪运动,通过RANSAC提高鲁棒性。同时,使用BA改善估计结果。缺点是:忽视了很多有价值的信息。
  • 使用稠密的方法介绍了四个。其中最后的例子证明使用RGB-D图像的VO能在静态场景下获得较高的精度。
  • 最近的工作表明:通过当前图像和场景模型匹配,而不是和前一帧匹配,稠密方法的精度可以提高。典型例子是KinectFusion和DTAM。为了实现对离群点的鲁棒,许多方法使用二值化去把图像分为内点和离群点,或者使用稳健统计学中连续性方法。鲁棒化误差函数在像BA这样的领域也是很常用的。
  • 有几种方法在运动估计值使用非均匀分布的先验来指导优化过程朝向正确的结果。这些先验可以来自运动假设、其他传感器的测量和滤波。
  • 和先前的工作相比,作者提供了一个模型的概率推导。优点:这个公式能使我们根据应用选择合适的传感器和运动模型。作者建议使用基于t分布的鲁棒传感器模型和匀速运动先验。

本文贡献:

  • 基于RGB-D数据,提出了用于直接运动估计的概率公式。
  • 来自真实世界的鲁棒传感器模型。
  • 先验的整合。

二、论文笔记

1. Direct Motion Estimation

基于灰度不变假设。

A. Warping Function

B. Likelihood function

p(ξ)p(\xi)p(ξ)表示的就是相机运动的先验分布,可以是均匀分布、IMU的测量数据、卡尔曼滤波的预测结果。

C. Maximum A Posteriori (MAP) Estimation

(14)式中的p(ξ)p(\xi)p(ξ)是在连乘号外面。若只考虑似然概率,有:

(16)式中推导应为:
∂log⁡p(ri∣ξ)∂ξ=∂log⁡p(ri∣ξ)∂ri∂ri∂ξ=∂log⁡p(ri)∂ri∂ri∂ξ=0\frac{\partial\log p(r_i|\xi)}{\partial \xi}=\frac{\partial\log p(r_i|\xi)}{\partial r_i}\frac{\partial r_i}{\partial \xi} =\frac{\partial\log p(r_i)}{\partial r_i}\frac{\partial r_i}{\partial \xi}=0 ∂ξ∂logp(ri​∣ξ)​=∂ri​∂logp(ri​∣ξ)​∂ξ∂ri​​=∂ri​∂logp(ri​)​∂ξ∂ri​​=0
在∂log⁡p(ri∣ξ)∂ri\frac{\partial\log p(r_i|\xi)}{\partial r_i}∂ri​∂logp(ri​∣ξ)​中,ξ\xiξ是满足方程的解,也就是MAP问题的最优解。因此,p(ri)p(r_i)p(ri​)应该是最优解ξ\xiξ处的先验分布。如果p(ri)p(r_i)p(ri​)是正态分布的函数,则ω(ri)\omega(r_i)ω(ri​)为常数,这就是一般的最小二乘问题。若p(ri)p(r_i)p(ri​)不是正态分布,则ω(ri)\omega(r_i)ω(ri​)就不是常数,这就变成了加权的最小二乘问题。

作者在不同的p(ri)p(r_i)p(ri​)分布函数下给出了对应带权重残差的大小。

从(a)图看出,当p(ri)p(r_i)p(ri​)是t分布时,满足对较大残差项进行抑制的要求,即乘以一个较小的权重。(b)图给的是在"fr1/desk"数据上获得的残差直方图,最满足的分布是t分布。

D. Linearization(解最优化问题)

(18)式是非线性问题,求解该问题的方法是:把ri(ξ)r_i(\xi)ri​(ξ)线性化,即在ξ=0\xi=0ξ=0时泰勒展开,有:

Ji∈R6J_i\in\reals^{6}Ji​∈R6,是个行向量。把所有jij_iji​按行写在一起,则优化问题,(18)式变为:
Wr(ξ)=W(r(0)+J△ξ)T(r(0)+J△ξ)=W[r(0)Tr(0)+2r(0)TJ△ξ+△ξTJTJ△ξ]Wr(\xi)=W(r(0)+J\triangle\xi)^T(r(0)+J\triangle\xi)=W[r(0)^Tr(0)+2r(0)^TJ\triangle\xi+\triangle\xi^TJ^TJ\triangle\xi] Wr(ξ)=W(r(0)+J△ξ)T(r(0)+J△ξ)=W[r(0)Tr(0)+2r(0)TJ△ξ+△ξTJTJ△ξ]
对上式求导有:
∂W[r(0)Tr(0)+2r(0)TJ△ξ+△ξTJTJ△ξ]∂△ξ=2WJTr(0)+2WJTJ△ξ=0\frac{\partial W[r(0)^Tr(0)+2r(0)^TJ\triangle\xi+\triangle\xi^TJ^TJ\triangle\xi]}{\partial \triangle\xi}=2WJ^Tr(0)+2WJ^TJ\triangle\xi=0 ∂△ξ∂W[r(0)Tr(0)+2r(0)TJ△ξ+△ξTJTJ△ξ]​=2WJTr(0)+2WJTJ△ξ=0
则有:

从而可以求出△ξ\triangle\xi△ξ的取值。

2. Robust Motion Estimation

A. Sensor Model ( 即p(ri∣ξ)p(r_i|\xi)p(ri​∣ξ) )

对于无权重的残差优化问题,传感器模型就是正态分布。然而,从图中3(b)中可以看出正态分布并不能很好地拟合真实情况。在本论文中,以"fe1/desk"建立的残差直方图最优的传感器模型是假设为t分布。

这里面的t分布是一个广义t分布,它有三个参数:均值μ\muμ,方差σ2\sigma^2σ2和自由度ν\nuν。其中,μ=0\mu=0μ=0。能得到权重函数为(22)。

σ2\sigma^2σ2是残差项的方差,式(23)就是在每次用(21)式迭代完之后,对权重函数的更新公式。论文上说对(16)的优化问题采用IRLS算法,但是权重的更新和IRLS中权重更新的方式不一样。

B. Motion Prior

(16)式的问题没有考虑运动先验。现考虑,假设匀速运动模型,则有p(ξt)=N(ξt−1,Σ)p(\xi_t)=N(\xi_{t-1},\varSigma)p(ξt​)=N(ξt−1​,Σ)。优化问题的解为:
WJTr(0)+WJTJ△ξ+Σ−1(△ξ−ξt−1)=0WJ^Tr(0)+WJ^TJ\triangle\xi+\varSigma^{-1}(\triangle\xi-\xi_{t-1})=0 WJTr(0)+WJTJ△ξ+Σ−1(△ξ−ξt−1​)=0
最后化为:

(24)式中的Σ−1(ξt−1−ξt(k))\varSigma^{-1}(\xi_{t-1}-\xi^{(k)}_{t})Σ−1(ξt−1​−ξt(k)​)代表的是第k次迭代的结果。因为求解最优化问题采取的是迭代的方法,每一次△ξ\triangle\xi△ξ的分布会发生改变。第k+1次迭代时p(△ξ)=N(ξt−1−ξt(k))p(\triangle\xi)=N(\xi_{t-1}-\xi^{(k)}_{t})p(△ξ)=N(ξt−1​−ξt(k)​),ξt(k)\xi^{(k)}_{t}ξt(k)​表示的是第k次迭代后求得的ξ\xiξ值。

实验结果:

3. Evaluation

评价标准:RMSE、Runtime。

三个模型:无权重、Tukey 权重、t分布权重。

两组参数:realtime(图像320x240)、precision(图像640x480)

两个场景:合成图像、TUM RGB-D数据集

4. Conclusion

推导出一个直接估计相机运动的概率公式,这个概率公式可以使用自定义的传感器和运动模型的概率分布。在作者的应用中,使用t分布能更好的匹配观察到的误差,并实现更高的精度。更重要的是,运动先验能在有动态物体的最优化问题中有更好的运动估计。通过实验证明,作者的方法精度高、鲁棒、比之前的工作好。未来作者的目标是在四轴飞行器中应用这个算法来补偿短期的运动漂移。

Robust Odometry Estimation for RGB-D Cameras相关推荐

  1. 论文阅读《Robust Odometry Estimation for RGB-D Cameras》

    目录 摘要 1 介绍 2 相关工作 3 直接运动估计 A warping函数 B 似然函数 C 最大后验(MAP)估计 D 线性化 4 鲁棒运动估计 A 传感器模型 B 运动先验 5 评估 A 合成序 ...

  2. ToFNest: Efficient normal estimation for ToF Depth cameras

    文章目录 概述 方法 算法结构 损失函数 实验 数据集 结果评估与对比 预处理 评价指标 不同方法之间的定量及定性结果 在有噪声数据上的评估 推理时间评估 在抓取的真实数据上的评估 总结 参考文献 写 ...

  3. 论文阅读 2017 —— Sensor Fusion for Fiducial Tags: Highly Robust Pose Estimation from Single Frame RGBD

    这是一篇发表在IROS的一篇论文,用RGBD相机提升码标(Aruco)的位姿精度.尽管在增强现实和计算机视觉中可以应用多种码标,但是在机器人应用中,从这些码标中获得准确的位姿目前仍然是个挑战.难点很清 ...

  4. Robust Pose Estimation in Crowded Scenes with Direct Pose-Level Inference 阅读笔记

    基于直接姿态级推理的拥挤场景鲁棒姿态估计 NeurIPS 2021 论文链接 代码链接 摘要:拥挤场景下的多人姿态估计具有挑战性,因为重叠和遮挡使得难以检测人体边界框并从单个关键点推断姿态线索(关键点 ...

  5. 计算机视觉与深度学习 | 开源SLAM、视觉里程计综述(SLAM、Visual Odometry)

    视觉里程计综述 引言 Visual Odometry or VSLAM OF-VO:Robust and Efficient Stereo Visual Odometry Using Points a ...

  6. Visual SLAM: What are the Current Trends and What to Expect?

    引自 Tourani A, Bavle H, Sanchez-Lopez J L, et al. Visual SLAM: What are the Current Trends and What t ...

  7. 机器人工程本科专业课教学资源汇总(2018年暑假补充学习用)

    手机应用软件:Robotics Engineering - Apps on Google Play This Robotics Engineering App provides the basic k ...

  8. 视觉SLAM学习(三)--------SLAM 综述

    SLAM概述 参考资料分享来自本人博客:https://blog.csdn.net/Darlingqiang/article/details/78840931 SLAM一般处理流程包括track和ma ...

  9. java开源图像处理ku_83 项开源视觉 SLAM 方案够你用了吗?

    原标题:83 项开源视觉 SLAM 方案够你用了吗? 公众号:3D视觉工坊 主要关注:3D视觉算法.SLAM.vSLAM.计算机视觉.深度学习.自动驾驶.图像处理以及技术干货分享 运营者和嘉宾介绍:运 ...

  10. 开源视觉SLAM方案

    1. Geometric SLAM 这一类是传统的基于特征点.直接法或半直接法的 SLAM,虽说传统,但 2019 年也新诞生了 9 个开源方案. 1.1. PTAM 论文:Klein G, Murr ...

最新文章

  1. 2021年软考考试时间公布
  2. 福利来袭,送你105例C语言实战
  3. c++心形代码_c语言心形告白代码实现
  4. Javascript:前端利器 之 JSDuck
  5. 【BZOJ4353】Play with tree,树链剖分线段树
  6. web\app可视化图表设计模板,UI设计师临摹学习的帮手
  7. Redis学习总结(7)——怎么保持缓存与数据库一致性?
  8. oracle dbv 离线,bbed和dbv检查数据文件结果不一致?
  9. springBoot框架方法上面添加@Transactional注解的使用
  10. Redis容量及使用规划(转)
  11. 系统集成项目管理工程师成绩合格标准
  12. SpringBoot面试常问
  13. JavaScript插入DOM
  14. python爬取网易云音乐飙升榜音乐_python爬取网易云音乐热歌榜实例代码
  15. PHP将处理图片为圆角
  16. rn_xtcxyczjh-1 功能 封装 通用 回调
  17. c语言makecode头文件,cmake 添加头文件目录,链接动态、静态库
  18. html5手机号码数据类型,报手机号码的四种格式,你是哪种性格?
  19. RAC11.2.0.3.0完整安装笔记与一些故障解决
  20. zimbra更换SSL证书流程

热门文章

  1. 向日葵深度linux,完美使用向日葵远程软件
  2. 韩立刚计算机网络——第三章:数据链路层
  3. 微信支付计算机,微信电脑版怎么支付?怎么开通微信支付?
  4. Xcode打包ipa基本步骤
  5. 使用xshell连接串口方法
  6. 智能电视linux刷安卓,智能电视安卓盒子刷机ROOT成砖的解决办法
  7. python matplotlib 矢量图svg emf
  8. 标签打印软件如何设计正反面打印模式
  9. 拉格朗日插值一个公式概括
  10. 功能强大的全新虚拟商品自动发货商城源码