【泡泡图灵智库】一种用于快速自主飞行且非常鲁棒的双目视觉惯性里程计方法(ICRA-39)

这就是我Github看到的那个

转载自:https://mp.weixin.qq.com/s/s-MHNBKRPOaxOcwsasBa7Q

【泡泡图灵智库】一种用于快速自主飞行且非常鲁棒的双目视觉惯性里程计方法(ICRA-39)

原创 paopaoslam 泡泡机器人SLAM 2018-09-04

泡泡图灵智库,带你精读机器人顶级会议文章

题:Robust Stereo Visual Inertial Odometry for  Fast Autonomous Flight

作者Ke Sun, Kartik Mohta, Bernd Pfrommer, Michael Watterson, Sikang Liu,Yash Mulgaonkar, Camillo J. Taylor, and Vijay Kumar

来源:ICRA2017

播音员:四姑娘

编译:杨小育

审核:皮燕燕

欢迎个人转发朋友圈;其他机构或自媒体如需转载,后台留言申请授权

图片

摘要

图片

       大家好,今天为大家带来的文章是——一种用于快速自主飞行且非常鲁棒的双目视觉惯性里程计方法,该文章发表于ICRA2017 。

       近年来,基于状态估计方法的视觉辅助IMU里程计方法已非常成熟。然而微型飞行器的尺寸和负载能力有限,因而无法使用高精度的传感器和强大的处理器,所以在提升算法的效率和鲁棒性方面就会遇到很多挑战。在本文中,我们提出了一种基于滤波器的双目视觉惯性里程计,它使用多状态约束卡尔曼滤波器(MSCKF)实现。以前的双目视觉里程计方法的计算成本都很高,而我们提出的双目多状态约束卡尔曼滤波器(S-MSCKF)在计算效率方面和现有的单目视觉里程计方法相当,同时又有很高的鲁棒性。为了评估S-MSCKF方法,我们把它和OKVIS,ROVIO,VINS-MONO在EuRoC数据集和自己的数据集上进行了比较。在真实的室内和室外环境中进行实验时,无人机的最大飞行速率达到17.5m/s。S-MSCKF方法的代码可以在https://github.com/KumarRobotics/msckf_vio获得。

图片

主要贡献

图片

      1、 提出一种基于滤波器的双目视觉融合IMU里程计,该方法可以在没有GPU加速的情况下运行。

      2、 该方法所提出的S-MSCKF比现有的开源VIO解决方案(OKVIS,ROVIO 和VINS-MONO )在准确性,效率和鲁棒性方面有更出色的表现。

图片

算法流程

图片

1、 IMU的状态估计方程为

图片

  其中w和a分别为IMU测量的角速度和加速度

图片

2、 用IMU误差估计的线性连续动力学模型为

图片

3、 协方差的增广矩阵为

图片

4、 双目相机的观测方程为

图片

        其中, Ci,k Xj,  Ci,k Yj , Ci,k Zj , k ∈ {1, 2},为特征点的坐标。

5、 在对当前估计值下对观测方程进行线性化处理,因而残差可以近似为

图片

        由于Gpj是由相机的姿态计算出来的,为了保证Gpj的不确定性不影响残差,所以将上式投影到零空间,可得下式

图片

图片

主要结果

图片

图片

图 1 (a)和(b)分别为OKVIS,ROVIO,VINS-MONO在EuRoC数据集上的均方根误差(RMSE)和平均CPU负载

图片

图 2 (a)和(b)分别为OKVIS,ROVIO,VINS-MONO在我们数据集上的均方根误差(RMSE)和平均CPU负载

图片

图 3 全自主飞行实验,蓝色,红色和黄色点分别代表起始点,目标位置和仓库的唯一入口,在超过700米的飞行中,最终的漂移在3米左右,约为0.5%

图片

Abstract

In recent years, vision-aided inertial odometry for state estimation has matured significantly. However, we still encounter challenges in terms of improving the computational efficiency and robustness of the underlying algorithms for ap-plications in autonomous flight with micro aerial vehicles in which it is difficult to use high quality sensors and powerful processors because of constraints on size and weight. In this paper, we present a filter-based stereo visual inertial odometry that uses the Multi-State Constraint Kalman Filter (MSCKF) [1]. Previous work on stereo visual inertial odometry has resulted in solutions that are computationally expensive. We demon-strate that our Stereo Multi-State Constraint Kalman Filter (S-MSCKF) is comparable to state-of-art monocular solutions in terms of computational cost, while providing significantly greater robustness. We evaluate our S-MSCKF algorithm and compare it with state-of-art methods including OKVIS, ROVIO, and VINS-MONO on both the EuRoC dataset, and our own experimental datasets demonstrating fast autonomous flight with maximum speed of 17.5m/s in indoor and outdoor environ-ments. Our implementation of the S-MSCKF is available at https://github.com/KumarRobotics/msckf vio.

如果你对本文感兴趣,想要下载完整文章进行阅读,可以关注【泡泡机器人SLAM】公众号

点击阅读原文,即可获取本文下载链接。

欢迎来到泡泡论坛,这里有大牛为你解答关于SLAM的任何疑惑。

有想问的问题,或者想刷帖回答问题,泡泡论坛欢迎你!

泡泡网站:www.paopaorobot.org

泡泡论坛:http://paopaorobot.org/forums/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个图灵机器人的递归方法: 假设我们要实现的图灵机器人能够回答简单的数学问题,如加法和乘法。那么我们可以写一个递归方法,该方法接收一个字符串作为参数,然后根据字符串的内容进行相应的计算并返回结果。 具体地,我们可以定义一个名为“calc”的递归方法,它接收一个字符串参数“expression”。方法的实现如下: 1. 首先,我们需要处理表达式中的括号。如果表达式中有括号,我们需要先计算括号内的表达式。我们可以使用一个while循环来不断查找最内层的括号,并将括号内的表达式递归传入calc方法进行计算。具体步骤如下: - 定义一个变量pos,表示当前正在处理的字符在表达式中的位置,初始化为0。 - 定义一个变量left,表示当前正在处理的括号的左括号在表达式中的位置,初始化为-1。 - 定义一个变量right,表示当前正在处理的括号的右括号在表达式中的位置,初始化为-1。 - 使用while循环,不断查找最内层的括号。具体步骤如下: - 从当前位置pos开始向后查找,如果找到左括号,则将left设置为该位置,并将pos后移一位。 - 从当前位置pos开始向后查找,如果找到右括号,则将right设置为该位置,并将pos后移一位。 - 如果left和right都不为-1,则说明找到了一对括号,我们可以将括号内的表达式递归传入calc方法进行计算,并将计算结果替换掉括号内的部分。 - 如果找不到任何括号,则退出循环。 2. 接下来,我们需要处理表达式中的乘法和除法。我们可以使用一个while循环来不断查找乘法和除法,将它们计算出来并替换掉原表达式中的部分。具体步骤如下: - 定义一个变量pos,表示当前正在处理的字符在表达式中的位置,初始化为0。 - 使用while循环,不断查找乘法和除法。具体步骤如下: - 从当前位置pos开始向后查找,如果找到乘法或除法符号(*或/),则将符号保存下来,并将pos后移一位。 - 接着从pos位置开始向后查找,直到找到下一个符号或字符串末尾。将这一段子串转换成数字,并将pos更新为该子串的末尾位置。 - 如果前面保存的符号是乘法,则将这个数字与前面的数字相乘,并将结果替换

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值