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

干货第一时间送达

标题:

Leveraging Stereo-Camera Data for Real-Time Dynamic Obstacle Detection and Tracking

作者:

Thomas Eppenberger, Gianluca Cesari, Marcin Dymczyk, Roland Siegwart, and Renaud Dubé

机构:ETH Zurich (苏黎世联邦理工学院)

来源:IROS 2020

编译:姚瀚晨

审核:wyc

摘要

大家好,今天为大家带来的文章是——

Leveraging Stereo-Camera Data for Real-Time Dynamic Obstacle Detection and Tracking。

动态避障是在拥挤环境中进行顺应性导航的重要组成部分。在本文中,我们提出了一种使用双目摄像机生成的噪声点云数据来准确,可靠地检测和跟踪动态对象的系统。我们的解决方案具有实时能力,并且专为在计算受限的无人地面车辆上部署而设计。提议的方法可以识别机器人周围环境中的单个对象,并将其分类为静态或动态。动态对象被标记为人或通用动态对象。然后,我们估计它们的速度,以生成适合执行避障的2D占用网格(2D occupancy grid)。我们在室内和室外情况下评估该系统,并在消费级计算机上实现实时性能。在我们的测试数据集上,对于动态对象的检测和跟踪,MOTP为0.07±0.07m,MOTA为85.3%。我们对静态物体的检测精度达到96.9%。

我的学习和理解是:

一句话来说:双目相机来做视觉SLAM,实现了导航和避障;

有特色的地方在于:将机器人周围环境区分为了静态和动态,动态中做了标记和网格处理;生成了一种2D占用网格——可以理解为像《我的世界》中的像素格子,2D占用网格是机器人需要避障的地方。

背景与贡献

我们作出以下贡献:

1)一种新颖的实时算法,用于基于有噪声的双目相机数据检测和跟踪通用动态对象;

2)一种将上述算法与基于视觉的人员检测器相结合的方法,以提高在短暂遮挡下,检测和跟踪性能以及处理能力;

3)在具有挑战性的数据集上对我们的pipeline进行了评估,展示了其性能和可靠性,从而提高了移动机器人的安全性。

图1 所提出的动态对象检测和跟踪方法的输出的可视化

左:指示检测的可信度和跟踪ID

右:生成的占用网格,其中正确识别了静态对象(红色像素)检测到的行人(黄色点云)

1.整体框架

提出了一种利用双目相机数据来可靠、准确地检测和跟踪动态对象的解决方案。为此,我们首先提出一种新颖的算法,用于基于通用动态对象的运动来检测它们。为了增强在拥挤空间中的感知性能,我们使用视觉人物检测器将人类的运动独立地分类为一类特定的动态对象,如图1所示。我们的方法使用动态对象的估计速度来处理短时遮挡。据我们所知,这是第一个提出完整解决方案的工作,该解决方案使用双目摄像机通过结合全局最近邻搜索和可视人检测器(global nearest neighbor searches)来检测和跟踪通用动态对象。该系统仅依靠一台双目相机的有噪声的数据,并设计为在受计算约束的平台上运行。

2. 方法

图2 我们的pipeline概述:输入是双目图像,以及来自可视SLAM模块的机器人的估计姿势。输出是2D占用栅格,它可以规划靠近静态对象的路径,并确保以安全距离避开动态对象。

为了将图片看得更清楚,下面是局部放大的图2:

2.1 点云生成

第一个模块根据未失真和经过校正的立体图像生成3D点云。

1)块匹配(Block-Matching):我们使用半全局块匹配,并在所得视差图上应用加权最小二乘滤波器;

2)深度双目(Deep Stereo):最近,出现了学习从立体图像推断视差值的深度神经网络。我们使用MADNet,因为我们发现该网络可以在运行时和性能之间做出适当的折衷。图3示出了通过两种方法生成的示例性视差图。

图3 使用双目图像生成的深度表示。

左:块匹配不能在右侧的低纹理对象的部分或地板的发亮表面上生成深度信息;

中:MADNet捕获对象和地板的大部分。与块匹配相比,它提供了更完整的深度信息;

右:原始图像。

2.2 点云过滤

对前一个模块生成的点云进行过滤,以减少噪声并对数据进行下采样以实现实时性能。我们将初始裁剪后的点云表示为hd,将滤波后的点云表示为hs。

2.3 聚类和3D跟踪

1)聚类:DBSCAN;

2)3D跟踪:首先,在时间t,我们将全局框架中所有当前群集的质心计算为其所有点的平均值。然后,我们将它们关联到最接近的质心,将群集关联到前一帧。

2.4 分类为静态和动态

根据投票策略,确定的聚类分为静态或动态:

1)对单个点的投票

2)从投票中排除要点

首先,如果机器人的视场(FOV)在两个帧之间改变,则点可能会出现在当前FOV的区域中,该区域与先前的FOV不重叠。由于我们仅观察到这些点云一次,将它们排除在投票之外。

其次,如果当前聚类的点先前被其他对象遮挡,则我们将其排除在投票之外。具体来说,我们区分了这种遮挡和当物体从相机移开时发生的自遮挡,如图4所示。

图4 动态物体检测时的遮挡处理

左:由于当前聚类C在上一帧中被聚类A遮挡,因此聚类C被排除在投票范围之外,而聚类A属于另一个群集;

右:没有将当前聚类E排除在表决范围之外,因为在前一帧中它被属于同一聚类D所遮挡。

2.5 2D人物检测

系统会将站立的人分类为静态,并且只有在她开始走路时才意识到它是动态的对象。通过将Mobilenet-SSD作为可视的2D人检测器添加到我们的pipeline中,我们实现了对行人的运动独立检测。我们选择此网络是因为它在灰度图像的运行时间和性能之间提供了适当的权衡。

图5 左:Mobilenet-SSD人检测器的示例输出。每次检测均通过置信度进行评分,显示在顶部。我们为在图像平面上跟踪的每个边界框分配一个ID;

右:我们将检测结果与聚类相关联,蓝色长方体表示。

主要结果

图6 我们评估中使用的样本图像以及用于收集它们的平台。我们的系统依靠安装在前面的双目相机,而LiDAR仅用于评估目的。

图7 来自LiDAR和双目相机的点云之间的最近邻居距离d标准化直方图,以分析准确性和完整性。

上图/精度:d从相机到LiDAR的测量值。

下图/完整性:d从LiDAR到相机的距离。精度极限lc = 0.8m上方的区域表示立体摄像机点云未捕获的对象点。

相关资源

视频:https://youtu.be/AYjgeaQR8uQ

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

本文仅做学术分享,如有侵权,请联系删文。

下载1

在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。

下载2

在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。

下载3

在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

▲长按加微信群或投稿

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

利用双目相机数机数据进行实时动态障碍物检测和跟踪相关推荐

  1. CVPR2021|CenterPoint :基于点云数据的3D目标检测与跟踪

    图1:网络流程图 代码.论文地址:在公众号「3D视觉工坊」,后台回复「CenterPoint」,即可直接下载. 前言: 该文章是Center-based系列工作(CenterNet.CenterTra ...

  2. Win10-OpenCV双目相机开发

    平台环境硬件Win10 VS2019 OpenCV3.4.6 ZED双目相机 //===================双目相机图像形式===============================/ ...

  3. 双目相机计算稠密深度点云(一)

    双目相机计算稠密深度点云 1.双目立体匹配原理 1.1 图像矫正 1.2 视差计算 2.elas_ros 包运行 3.KITTI数据集运行 3.1 kitti数据集转换为rosbag 3.2 运行KI ...

  4. 几种相机模型:针孔相机模型、双目相机模型、RGB-D相机——SLAM学习笔记5

    几种相机模型:针孔相机模型.双目相机模型.RGB-D相机 针孔相机模型 双目相机模型 RGB-D相机模型 针孔相机模型 针孔相机是最简单的相机,很多相机也可以看作是针孔相机来进行处理.如图1所示,空间 ...

  5. OpenCV双目相机的标定C++

    代码来和数据集来自于"小白公众号" 链接:https://pan.baidu.com/s/1bYrj57MEdhwWp45XXVbdpA 提取码:b3m6 双目相机标定的过程: 1 ...

  6. zed相机拆机_TX2入门教程硬件篇-外接双目相机ZED

    TX2入门教程硬件篇-外接双目相机ZED 说明:介绍如何在TX2安装ZED双目相机 步骤:准备:接上显示屏,键盘和鼠标 刷机:TX2通过jetpack3.0需要采用full模式完成刷机 确保有CUDA ...

  7. zed相机拆机_TX1入门教程硬件篇-外接双目相机ZED

    TX2入门教程硬件篇-外接双目相机ZED 说明:介绍如何在TX2安装ZED双目相机 步骤:准备:接上显示屏,键盘和鼠标 刷机:通过jetpack3.0需要采用full模式完成刷机 确保有CUDA8.0 ...

  8. 要matlab标定数据做双目相机矫正OpenCV C++

    双目相机矫正 系列文章来了,C/CPP实现双目矫正(不使用OpenCV)及矫正源码解析正在更新中. 开始本文内容 标定步骤: matlab标定较为准确,命令行中输入stereoCameraCalibr ...

  9. 双目测距------双目相机V1.0,将双目相机采集到任意一点的深度数据进行串口传输(带源码)

    Depth2Uart 双目测距------双目相机V1.0,将双目相机采集到任意一点的深度数据进行串口传输 一.项目说明/Overview 所实现的功能:基于Intel Realsense官方提供的S ...

最新文章

  1. latex 插图解释_大O符号-只需插图和视频即可解释
  2. 将jar deploy到私服nexus常见问题
  3. 华为视觉研究路线图:三大挑战,六项计划
  4. 解决RabbitMQ消息丢失问题和保证消息可靠性
  5. addeventlistener事件第三个参数 passive_JS DOM 事件流、事件冒泡
  6. java try catch_Java捕获异常
  7. python登录界面实现密码在明文与星号间切换_两个API让星号密码框显示成明文
  8. 树链剖分边权模板spoj375
  9. python def main好处_python中 __name__及__main()__的妙处
  10. Linux环境下编写C程序
  11. 基于WinForm的多语言开发之界面加载
  12. html5旋转木马效果,js实现旋转木马效果
  13. 2021软考网络工程师2004-2020年真题含答案解析(最新)
  14. 阿里美女面试官问我:Flink资源管理有了解吗
  15. 杜比专为旧版本Android,Android O专用杜比音效miui10已成功
  16. iOS中storyboard故事板使用Segue跳转界面、传值
  17. net configuration assistant 没反应_苗阜深夜发文:20年了没被打过,张玉浩,你已经离开青曲社了...
  18. 如何逼自己玩命学习,这几款超奶思的学习APP,让你爱上学习!
  19. 解析几何 曲线与二次曲面 曲面方程与坐标变换(2.1,2.2)
  20. matlab 去高光,图像处理-去高光/直方图均衡

热门文章

  1. python二级多少分过_Python 全国等级考试二级(2)
  2. 《Java程序设计》第二次实验报告
  3. Android系统top指令cpu占用分析
  4. Mucosal Immunology | 胃肠道内的NADPH氧化酶类和活性氧信号通路
  5. Silverlight/Windows8/WPF/WP7/HTML5周学习导读(7月9日-7月15日)
  6. 程序员必学电脑计算机专业英语词汇 06 (196 单词)
  7. Alamofire -安全认证
  8. c# 反射的使用场景
  9. 根据Excel字母列转数字下标
  10. 李明顺:从博客说起 网络新模式愚人娱人