zoukankan      html  css  js  c++  java
  • VIO 初始化小结

    最近几个月忙于博士毕业,找工作一直没有继续更新博客,希望以这一篇开始,每个月能够继续有几篇总结博客。

    首先review一下比较著名的vio系统

    1. Tightly coupled
      • EKF: mainly ETH ASL R.Siegwart work
    2. Tightly-coupled
      • EKF:
        • MSCKF->MSCKF2.0->SR-ISWR  observability and consistency analysis
        • ROVIO
        • SR-ISWF
      • Optimization:
        • OKVIS
        • VINS-Mono (more robust initialization compared with OKVIS and less sensitive towards noise and bias prior)
        • Inertial ORB (no original open source, no metric scale estimation at the beginning, sudden change of Map when the scale is solved)

    VIO系统的优点显而易见,难点在于如何将visual和inertial两个传感器的优缺点有效结合,达到快速初始化(最重要的是尺度和重力方向),稳定鲁邦估计,以及对噪声和传感器参数(相机IMU外参,IMU零偏)的高度容忍或者在线估计。

    这篇博客主要比较集中优化方法的初始化过程,为了达到非线性优化问题的最优解,一个靠谱的初值可以让系统很快收敛,不仅可以提高优化速度,也可以达到optimal的状态估计。相反,初值估计错误不仅导致非线性优化问题陷入局部最小,而且使得参数估计完全错误,从而使得系统崩溃(俗称系统飞掉,特别是imu的bias参数估计错误)。

      首先介绍OKVIS的初始化方法,OKVIS对IMU的参数非常敏感(相对于VINS-Mono使用商用级别commercial-grade的IMU即可,它需要使用工业级别industrial-grade的IMU来完成初始化操作),因为整个系统的状态propagation就是基于IMU,更严苛的是系统的初始化状态也完全依赖于初始(几十个或者几百个)IMU数据的propagation给出的姿态,如果是pure rotation运动,则使用2D-2D匹配进行跟踪,轨迹仅由IMU给出,当可以三角化出landmark时(有足够的2D-2D匹配内点,且内点可以恢复出3D点(使用Kneip的Opengv中算法)),初始化完成。后续同时使用3D-2D匹配和2D-2D匹配。因此,IMU给出的初始轨迹估计需要比较准确,才可以给出初始轨迹,并且确定何时可以初始化完成。

    TX1: https://www.phoronix.com/scan.php?page=article&item=nvidia-jtx1-perf&num=1%3C/span%3E%3C/blockquote%3E

  • 相关阅读:
    php对接微信小程序支付
    微信小程序/网站 上传图片到腾讯云COS
    php+smarty轻松开发微社区/微论坛
    精简商务合同管理系统开发
    MyBatis返回map数据
    MyBatis(五)select返回list数据
    MyBatis(四)多参数处理问题
    MyBatis(三)MyBatis的增删改查
    dbconfig.properties
    MyBatis入门(二)接口式编程
  • 原文地址:https://www.cnblogs.com/shang-slam/p/7684325.html
Copyright © 2011-2022 走看看