激光雷达动态障碍物滤除-调研与展望

article/2025/9/26 5:44:44

0. 简介

激光雷达作为自动驾驶中最常用的传感器之一,由于其深度感知特性优良,这也让以激光SLAM为主的SLAM方法被广泛应用。但是我们发现在人员密集,车辆密集的场景经常会造成点云定位效果不佳,而这些情况传统滤波方法是没有办法解决的。本篇将主要围绕着深度学习的方法来讲述激光雷达分割的问题。

1. SLAM配准与建图

无论哪种点云配准方式(点到点/点到特征/点到栅格/NDT),都是基于静态假设的,理论上动态点一定会影响配准的精度,当然这一点用于建好地图的定位也同样适用。当一帧中如果动态点比例过高的话,会造成轨迹精度下降,甚至不排除跑飞的可能。在这个层面,只能通过实时的方式在配准之前或配准过程中,识别并干掉动态点。

如果我们认为动态物体对配准的干扰有限,不太影响轨迹精度,但我们还是无法忍受最终生成的地图中充斥着大量动态物体的“鬼影”(如下图所示),这会对后期基于地图的定位、或者**基于地图的可行域规划(路径规划)**产生不利的影响。

在这里插入图片描述

1.1 传统配准思路—通过聚类+卡尔曼滤波预测过滤动态障碍物

传统方式比如在配准迭代过程中剔除距离过远的点,物检测流程一般如下:

  1. 考虑到车上有多个传感器共同作业,需要对输入的激光点云做时间同步和外参标定。

  2. 考虑到激光雷达的采样噪声和点云数据量大的问题,需要对点云做预处理,减少数据量,剔除噪声点。

  3. 每帧点云数据中包含了大量的地面点,检测的目的是获取道路障碍物信息,需要进一步分割出地面上的点云。

  4. 地面上的障碍物点通常采用无监督的聚类算法形成多个团簇,每个团簇则表示一个障碍物。

  5. 针对团簇的物体识别可以根据任务需求而定,如果需要类别信息,可以采用特征提取+分类器的方式分类障碍物。

  6. 对每一块团簇做包围框拟合,计算障碍物属性,比如中心点,质心点,长宽高等。

  7. 对每一个障碍物构建一个卡尔曼滤波器做跟踪,平滑输出,从而来判断是否运动。

在这里插入图片描述

1.2 传统配准思路—适用submap来精配准

“RF-LIO: Removal-First Tightly-coupled Lidar Inertial dometry in High Dynamic Environments ”,这项工作就是传统的匹配滤波的思路,它建立在 LIO-SAM 的基础上,先剔除是指所提出的RF-LIO首先去除没有准确姿势的运动物体,然后采用 scan-matching 。当新的 scan 到达时,RF-LIO 不会立即执行扫描匹配以获得准确的位姿,因为它很容易受到动态环境的影响,相反,我们使用紧耦合惯性测量单元 (IMU) 里程计来获得粗略的初始状态估计,然后 RF-LIO 可以利用自适应分辨率距离图像初步去除环境中的运动点。在初步去除运动点后,RF-LIO 使用 scan-matching 来获得相对更准确的位姿。在精配准迭代过程中,不断基于初值和多分辨率深度图检测submap中的动态点并移除,最终实现基于“静态submap”的精配准。因此,即使在高动态环境中也可以获得准确的姿势。实验结果表明,在高动态环境下与 LOAM 和 LIO-SAM 相比,所提出的 RF-LIO 的绝对轨迹精度可以分别提高 90% 和 70%。

论文可见下面链接:https://pan.baidu.com/s/1GdwaNrH80mgem4xbZKdZ-Q#list/path=%2F
提取码:384o

RF-LIO 的总体框架,它由三个主要模块组成:IMU 预积分、特征提取和建图。首先,IMU 预积分模块用于推断系统运动并生成 IMU 里程计。然后,特征提取模块补偿点云的运动畸变。通过评估点的粗糙度来提取边缘和平面特征。

建图模块是我们提出方法的关键模块,要在没有准确位姿的情况下先去除动态物体,有几个关键步骤:

  • 初始位姿是通过 IMU 里程计获得的。然后使用 IMU 预积分和 scan-matching 之间的误差来确定初始分辨率(即每个像素对应多少个 FOV 角度)。
  • RF-LIO 使用此初始分辨率从当前激光雷达扫描和相应的子图分别构建距离图像。
  • 通过比较它们的能见度,去除子图的大部分动态点。
  • RF-LIO 将激光雷达扫描与子图进行匹配,并判断 scan-matching 是否收敛。如果是收敛的,经过图优化后,用最终的高分辨率去除当前关键帧中剩余的动态点,否则,将生成新的分辨率,并重复步骤2、3、4。

在这里插入图片描述

1.3 现代配准思路—通过深度学习实现动态物体识别

而当前更流行的方式则是基于deep-learning直接识别出动态物体并将点云去除。

“Dynamic Object Aware LiDAR SLAM based on Automatic Generation of Training Data ”。作者基于deep-learning(3D-MiniNet网络)进行实时3D动态物体检测,滤除动态物体后的点云被喂给LOAM,进行常规的激光SLAM。

文中提到为了克服动态障碍物的问题并支持机器人在现实世界场景中的部署,文章提出了一个用于动态对象感知激光雷达SLAM算法。文中提出了一种新颖的端到端占用网格管道,可以自动标记各种各样的任意动态对象
在这里插入图片描述
从结果中,我们可以大致看出其可以有效地对动态障碍物完成分割。
在这里插入图片描述

2. 动态物体滤除

2.1 环境物体分类

环境中的所有物体依据“动态程度”的不同,分为四类:

高动态物体:实时移动的物体,如行人、车辆、跑动的宠物…
低动态物体:短暂停留的物体,如站在路边短暂交谈的人…
半静态物体:在一个SLAM周期中不动,但是并非永远不动的物体,如停车场的车辆、堆放的物料、临时工棚、临时围墙、商场中临时搭建的舞台…
静态物体:永远不动的物体,如建筑物、马路、路沿、交通信号灯杆…

除了静态物体外的其它三类物体,都有不同程度上的动态属性,应对策略也各不相同:

针对高动态物体:在线实时过滤
针对低动态物体:一次SLAM过程结束后,后处理方式过滤
针对半静态物体:全生命周期建图(life-longmapping, or long-term mapping)

2.2 实时点云过滤

实时动态点云过滤一定需要参考帧来比对出动态点,上面一节主要讲述的就是动态点云滤除的操作,主要是分为传统滤除方法以及深度学习滤除方法。在深度学习方面基本思路就是先通过深度学习完成动态障碍物的分割,然后将分割好的点云数据放入SLAM当中。

这里主要阐述一个基于深度学习的三维激光雷达动态物体分割(LiDAR-MOS)方法,论文提出了一种利用深度学习和时空信息结合的方法实现了三维激光雷达动态物体分割,并用以提高激光雷达SLAM定位和建图的精度。这是对应的代码:https://github.com/PRBonn/LiDAR-MOS。

在这里插入图片描述
在这项工作中,我们的目标是对 LiDAR 数据进行动态物体分割 (LiDAR MOS)。在这项工作中,与点云语义分割不同的是我们的任务不是要预测点云的语义类别,如车辆、道路、建筑物等,而是更专注于将场景分割成两部分:一部分是实际移动的物体,例如正在行驶的汽车、行人,另一部分是静态物体,例如停放的汽车和静态背景,例如道路和建筑物等。我们提出了一种新的基于深度学习的方法,该方法利用 LIDAR 距离图像(range image),运算速度非常快,能够实现在线实时点云动态物体分割。

在这里插入图片描述
上面所展示的是该方法的概述图。我们使用基于距离图像的 LiDAR 表示方式神经网络来实现在线动态物体分割。给定当前激光雷达观测和过去的激光雷达数据,我们首先生成过去LiDAR数据和当前 LiDAR 观测之间的“残差图像”(residual image),通过这种方式,我们可以得到时间上的序列信息。生成残差图像后,我们将残差图与当前扫描连接到一起,一同用作神经网络的输入。然后我们利用所提出的动态物体二分类标签训练神经网络,该标签仅包含移动和非移动的两个类别。最终,所提出的方法可以实现对激光雷达数据中动静物体的检测和分离。

在这里插入图片描述

2.2 后处理点云过率

后处理方式由于不需要顾虑实时性,因此可以将整个SLAM周期内的所有帧作为参考信息,来识别动态点。相比于实时方式,后处理方式更追求动态点云滤除的准确性和充分性

以后处理方式为前提,常见的动态物体过滤方法可以分为典型的三类:segmentation-based, ray-casting based, 和 visibility-based

…详情请参照古月居


http://chatgpt.dhexx.cn/article/UFECH5ly.shtml

相关文章

DAC的简单应用

1.简介 DAC指数字/模拟转换。STM32F103RCT6具有2个12位数字输入,模拟输出的DAC;支持数字输入配置成8位右对齐、12位左对齐或12位右对齐格式;在双DAC通道模式下支持单通道独立转换或双通道同步转换。 2.框图 根据框图,将数据写入…

STM32学习笔记--DAC

目录: 一、DAC原理1.DAC定义2.STM32DAC简介3.STM32DAC工作原理 二、STM32DAC库函数配置参考资料 一、DAC原理 1.DAC定义 DAC是Digital-to- Analog Converter的缩写,数字/模拟转换模块的简称,它的作用就是把输入的数字编码,转换成…

Bwapp 04 05

文章目录 Insecure DOR (Change Secret)Insecure DOR (Reset Secret)Insecure DOR (Order Tickets)安全配置 Insecure DOR (Change Secret) 抓包的话,就可以实行篡位修改 Insecure DOR (Reset Secret) 同上,换成了xml的形式 Insecure DOR (Order Ticke…

水处理相关工艺控制程序汇总(RXXW_Dor)

水处理和化工行业流程控制类程序工艺有很多相似之处,属于过程控制,并不太关心控制实时性和控制速度,这篇博客汇总项目各种工艺写法,陆续会更新。流程控制类程序很多可以利用状态机思想进行编程,有关状态机编程的详细方法可以参看下面的文章链接: PLC面向对象编程系列之有…

整理 kanban 的 DoR 和 DoD

所谓 DoR 和 DoD 就是 Definition of Ready 和 Definition of Done。 我们的敏捷团队在需求管理上主要有两个会:需求梳理会和需求计划会议。 需求梳理会的阐述的意向用户故事会放到 Backlog,后由研发 Owner 跟进,在计划会上,将符合 DoR 放入 Sprint Todo。 「Backlog」…

人生的DoR和DoD:志向、遗产

我们要为两件事做好准备:太阳升起和太阳落山。前者没准备好,则错过了大好时光。后者没准备好,则坠入无边黑暗。前者让你醒的来,后者让你睡得着。 (一)立志是人生的DoR 年少的刘备与同族的孩子在树下玩耍时&…

【Scrum模式语言9】准备就绪的定义(Definition of Ready - DoR )

译者序:在很多敏捷项目中,秩序诞生的标志之一是有了成文的DoR。但是项目组和需求方的折中往往也无可奈何地始于将没有就绪的需求纳入到Sprint待办事项列表,并为Sprint实施阶段带来一系列的不可控因素。为什么市场和产品人员时常要求技术人员在…

敏捷开发中的 DoD 和 DoR 是什么?

在敏捷开发中,让所有成员保持目标统一、步调和节奏一致非常重要,但是在团队协作中,认知偏差却在所难免。需求在不同环节中流转,是否存在某种途径能保证所有成员的理解一致,将偏差最小化? 今天跟大家介绍敏…

传播动力学--SIR模型及其应用

王道谊 2020年3月 1. 传播动力学 “道生一,一生二,二生三,三生万物。” ---《道德经》 所谓“不积跬步无以至千里”,任何变化都是由点滴变化决定并发展起来的。知道所有的微观点滴变化,就能够掌握宏观变化。点滴…

SIR传播模型的科普和预测

>关注公众号:大数据技术派,回复资料,领取1024G资料。 注:本文仅是个人对于几个疾病模型做的一些概念性描述(科普),并进行了简单的编程实现。切勿当做现实的行动指导。因为文章内容原因&#…

6.复杂网络实验六:SIR病毒传播模型(matlab)

一、SIR模型简介 在典型的传染病模型中,种群(Population)内的N个个体的状态可分为如下几类: (1)、易染状态S(Susceptible),即健康状态,可被感染的个体。 (2)、感染状态I(Infected),处于感染状态的个体还能够感染将康…

传染病SIR传播模型(搬运,含带MATLAB代码)

学习笔记之SIR传染病模型TOC 本文主要是对此篇文章代码部分的详解 function ysir(~,x)a0.8; %感染率0.8b0.2; %治愈率0.2y[-a*x(1)*x(2),a*x(1)*x(2)-b*x(2),b*x(2)]; end %t 为持续时间,%x为三维矩阵,其中x(1)为易感染者,x(2)为传染者&…

传染病模型(4)——SIRS模型和SIER模型及matlab具体程序

前言 常见的传染病模型按照具体的传染病的特点可分为 SI、SIS、SIR、SIRS、SEIR 模型。其中“S”“E”“I”“R”的现实含义如下: S (Susceptible),易感者,指缺乏免疫能力健康人,与感染者接触后容易受到感染; E (Ex…

信息传播模型——SIR的Python实现

本文通过Python语言实现SIR模型,并进行可视化,所用例子为足球俱乐部数据集。 author:xiao黄 缓慢而坚定的生长 我之前还写过SI和IC模型的Python实现及可视化,请点击传送门查看,希望对你们有帮助。 SIR模型是传染病模型…

疫情模拟中的SIR模型与扩展的SIRD模型

一.SIR模型 SIR模型起源于流行病学的研究,是模拟传染病动力学的经典模型。至今仍在流行病学中占据中心位置,核心在于微分方程。 SIR模型描述了流行病下三大人群:易感者 susceptible、感染者 infectious、痊愈者 recovered之间的关系。 SIR模…

基于SIR模型的疫情预测 matlab

基于SIR模型的疫情预测 庚子年 庚辰月 丁丑日,疫情从爆发到今天,已经有100多万人感染,而我国有一群这样的逆行者他们以自己的生命筑起了我国的防疫长城,鲁迅先生曾说“我们从古以来,就有埋头苦干的人,有拼…

python实现SI、SIS、SIR、SIRS、SEIR、SEIRS模型

传染病传播模型 SISISSIRSIRSSEIR(相比较贴合新冠状病毒)SEIRS 在家闲着无事,搜了一些关于传染病模型的知识,在此做个总结。 SI 最简单的SI模型首先把人群分为2种,一种是易感者(Susceptibles),易感者是健康…

流行病模型(SIR Model)

流行病模型(SIR Model) by : ZhuoFei, Zhou 首先定义一个函数bernoulli(p) #以概率p判断是否会被感染或恢复 function bernoulli(p::Number)if rand(1)[1] < preturn trueelsereturn falseend endbernoulli (generic function with 1 method)恢复所需的时间函数recovery_…

SIR模型与R模拟

SIR病毒模型R模拟 文章目录 SIR病毒模型R模拟[toc]1.SIR病毒模型2.R模拟 1.SIR病毒模型 SIR病毒模型的的三个字母分别为病毒传播过程中的三种状态&#xff0c;其中 S&#xff0c;表示易感染者&#xff0c;即没有被感染病毒的人群I&#xff0c;表示已感染者&#xff0c;即被感…

【python】SIR模型实现

SIR模型python实现 SIR模型是传染病模型中最经典的模型&#xff0c;其中S表示易感者&#xff0c;I表示感染者&#xff0c;R表示恢复者。SIR模型中&#xff0c;染病人群为传染的源头,他通过一定的几率把传染病传给易感人群,他自己也有一定的几率/可以被治愈并免疫,或者死亡;易感…