图像层面:2D图像分割反投影到3D点云滤除

基于分割

  • 原理:通过2D语义分割(如DeepLab、Mask R-CNN)识别动态物体(车辆、行人),将分割结果反投影至3D点云中滤除。
  • 优化方向
    • 结合时序一致性(如连续帧分割结果融合)减少单帧误分割。
    • 多模态融合:联合RGB与深度信息提升分割精度(如RGB-D分割网络)。
  • 挑战:静态物体误标(如停靠车辆)、分割模型泛化性不足。

基于光流跟踪

  • 原理:通过相邻帧光流场(如RAFT、FlowNet)检测运动物体,反投影动态点云。
  • 优化方向
    • 动态-静态光流分离:利用运动一致性约束区分背景光流与动态物体光流。
  • 挑战
    • 物体静止时失效(光流接近零)。
    • 相机运动与物体运动耦合时误判(需Ego-motion补偿)。

点云层面

1. 几何分析方法

  • 代表方法
    • RANSAC平面拟合:移除非地面点(适用于地面移动机器人)。
    • 曲率聚类:高曲率区域常为动态物体边缘(如LeGO-LOAM)。
  • 局限:依赖场景几何规则性,复杂非结构化场景鲁棒性差。

2. 基于单帧-全局对比的方法

”这类方法的基本假设是:如果一个激光点的光路穿过了另一个激光点,那么另一个激光点就是动态点。这个假设逻辑上完全说得通,但实现起来有两个问题:其一,入射角接近90度时的误杀问题,如下图所示,红色箭头指向的旧点因为与新点(五角星)光路很接近,会被误杀掉,考虑到一帧激光点云本身的角度误差、测距误差、光斑影响等,这种误杀会更严重。其二,遮挡问题,比如对于一些大型动态物体,它们完全挡住了激光雷达的视线,激光雷达没有机会看到这些动态物体后方的静态物体,意味着这些动态点永远不会被新的激光点穿过,此时就绝无可能把这些动态点滤除掉了”

“误杀问题”和“静态点不可见”的问题。其一,误杀问题包括但不限于点云自干扰、平行点差异导致的假阳性、遮挡点误判、接触点假阳性等一系列由于雷达点云的物理特性引发的误杀问题。其二,静态点不可见的问题相较于误杀问题会少见一些,但更加难以解决,例如当存在动态障碍物一直遮挡了部分或者全部的激光雷达的视线,则雷达没有机会看到这些动态障碍物后方的静态物体信息以至于动态障碍物点云永远不会被识别和滤除掉。

基于可见性(Ray-Casting)

  • 问题深化
    • 误杀问题:入射角接近90°时,点云噪声导致光线路径误差(解决方案:加入角度阈值约束,如剔除入射角>80°的射线)。
    • 静态点不可见:动态物体长期遮挡导致漏检(解决方案:引入概率观测模型,长期未更新的栅格标记为"可能动态")。
  • 优化方法
    • 多帧射线聚合(如SUMA++):统计多帧光线穿透情况,降低单帧噪声影响。
    • 自适应阈值:根据点云密度动态调整射线判定容差。

基于栅格滤除(Voxel-based)

结合栅格地图(例如概率占据栅格、八叉树栅格,etc),识别与区分静态和动态点的基本原理:激光点云所落在的栅格处hits计数+1或者占据概率上升,激光光束穿过的所有栅格misses计数+1或者空闲概率上升,通过统计同一栅格中hits和misses数量差值或者占据概率,以判断栅格中包含的点云是否需要滤除。

  • 代表作
    • DUFOMap:使用概率占据栅格,通过贝叶斯更新Hit/Miss概率。
    • OctoMap:八叉树结构高效管理大规模场景。
  • 优化方向
    • 运动概率传播:将动态点概率传递至相邻栅格(如DynSLAM)。
    • 多分辨率栅格:近处高精度、远处低精度,平衡效率与效果。

基于扇形栅格高度比对

代表作 ERASORS

  • 算法流程:首先,通过常规的激光SLAM手段获得了原始点云地图后,回放数据以query scan的位姿为中心从地图中截取对应的submap,再将两者按照圆柱坐标系的方式划分成一个个 bin;随后,为两者的每一个 bin 计算占据状态描述子(点云高度差);接下来,找出 submap 中那些描述子之比<0.2 的 bin,作为潜在的动态 bin,也就是 query scan 中bin 的高度差远小于submap中 bin 的高度差;最后,在每一个潜在动态 bin 中用主成分分析法拟合地平面,将地平面以上的点作为动态点滤除;

  • 流程优化

    1. 高度描述子改进:引入高度分布直方图替代单一高度差,避免地形起伏误判。
    2. 动态点判定:联合高度差与点云密度(如ΔH<0.2Hmap\Delta H < 0.2H_{\text{map}}ΔH<0.2Hmap且密度比<0.5<0.5<0.5)。
  • 局限:高架桥、斜坡地形易误杀静态点。

基于深度图比对

代表作 Revert

  • 算法流程:单帧点云和原始点云地图都根据传感器位姿投影为深度图,通过比对对应深度图像素的差异来滤除动态点
  • 优化策略
    • 畸变补偿:在深度图生成前进行点云运动畸变校正(如IMU辅助去畸变)。
    • 边缘保护:使用双边滤波平滑深度图,保留物体边缘。

弊端

  • 对SLAM位姿精度敏感,一点偏差都会造成投影误差,进而造成误杀和漏杀,这一点尤其容易发生在物体的边缘处和细长物体(如路灯杆)上。
  • 对点云畸变敏感。同样的道理,运动畸变造成一个点落在了它本不属于的位置上,引入误差
  • 容易误杀地面点 当入射光线贴近地面时,部分地面点(红色箭头所指的点云)因为靠近五角星点的光路,会被认为遮挡了query scan中的点,从而被误杀!这种现象在大入射角时尤其明显。

3. 基于点云分割的方法

基于分割的方法中当前比较主流的是基于深度学习的语义分割方法,通过前期的点云特征训练,在使用过程中直接标注出点云中的动态障碍物信息部分,在定位和建图算法中根据点云中的标注直接过滤即可,虽然滤除的内容仅限于前期训练得到的模型且容易有假阳性和假阴性的问题,但其方法胜在简单高效。另一类传统的点云分割的方法则基于聚类的模式,如快速点特征直方图 ( fast point feature histograms, FPFH )、基于确定视角下的特征分布直方图VFH(viewpoint feature histogram),用以在静态聚类中区分出动态聚类,此类方法能够改善计算成本提高实时性从而得到广泛研究,再者就是基于区域(逆)生长以分割混杂着动态和静态点云的目标,识别出动态点云目标以便于后期滤除等。

深度学习语义分割

  • 代表网络
    • RangeNet++(Range图像分割):实时性强,适合车载平台。
    • Cylinder3D(圆柱体分割):解决点云稀疏性问题。
  • 动态物体扩展
    • 时序分割:如4D-SPNet融合多帧点云时序特征。
    • 弱监督学习:减少标注依赖(如Self-supervised动态点检测)。

传统聚类分割

  • 特征优化
    • FPFH+VFH融合:结合局部与视角不变特征,提升聚类鲁棒性。
    • 图神经网络分割:构建点云图结构,利用邻域关系优化聚类(如Point-GNN)。
  • 动态目标提取
    • 区域生长+运动一致性:从静态背景中分离运动聚类(如DetectDyn)。

核心挑战与解决趋势

挑战原因解决思路
SLAM位姿敏感一点偏差都会造成投影误差,进而造成误杀和漏杀,这一点尤其容易发生在物体的边缘处和细长物体(如路灯杆)上。紧耦合优化:动态滤除与位姿估计联合迭代(如LIO-SAM的动态点滤波模块)
运动畸变影响同样的道理,运动畸变造成一个点落在了它本不属于的位置上,引入误差在线畸变校正:IMU/轮速计辅助运动补偿
地面点误杀当入射光线贴近地面时,部分地面点因为靠近光路,会被认为遮挡了query scan中的点,从而被误杀!这种现象在大入射角时尤其明显。地面优先分割:先提取地面再处理非地面点(如Patchwork++地面分割)
静态点不可见长期地图管理:设置栅格"遗忘机制",超时未观测区域重置为未知
复杂动态场景多方法融合:语义分割+几何分析+时序跟踪(如Panoptic-SLAM)

未来研究方向

  1. 端到端动态滤除:训练网络直接从点云/图像输出动态概率(如MotionNet)。
  2. 事件相机辅助:利用事件相机高动态特性检测运动物体。
  3. 仿真-现实迁移:在CARLA等仿真平台生成标注数据,解决真实场景标注匮乏问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/90510.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/90510.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/90510.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redisson是如何实现分布式锁的?

Redisson 如何实现分布式锁&#xff1f;&#xff08;核心原理与思考&#xff09; Redisson 是一个功能强大的 Redis 客户端&#xff0c;它提供了许多分布式对象和服务&#xff0c;其中就包括分布式锁。Redisson 的分布式锁是基于 Redis 的 Lua 脚本实现的&#xff0c;这保证了操…

Java 导出word 实现饼状图导出--可编辑数据

&#x1f4ca; 支持图表导出功能&#xff01; 支持将 柱状图、折线图 图表以 Word 文档格式导出&#xff0c;并保留图例、坐标轴、颜色、数据标签等完整信息。 如需使用该功能&#xff0c;请私聊我&#xff0c;备注 “导出柱状图 / 折线图”。 生成的效果图如下&#xff1a;示例…

AI大模型平台

在科技浪潮迅猛推进的当下&#xff0c;AI大模型平台宛如一颗璀璨的新星&#xff0c;强势闯入大众视野&#xff0c;以其独特的魅力和强大的功能&#xff0c;深刻地变革着我们生活与工作的每一处角落。从日常智能助手的贴心陪伴&#xff0c;到专业内容创作的灵感激发&#xff1b;…

C# Console App生成的 dll文件

在使用 dotnet 8.0 创建一个 C# console app后&#xff0c;执行完编译操作&#xff0c;会发现除了生成可执行文件外&#xff0c;还生成一个 dll文件。 $ls ConsoleApp1 ConsoleApp1.dll ConsoleApp1.runtimeconfig.json ConsoleApp1.deps.json ConsoleApp1.pdb $ …

【AI】环境——深度学习cuda+pytorch配置

文章目录关键组件及关系显卡驱动GPU DriverCUDACUDA ToolkitcuDNNPytorch各组件版本选择驱动程序CUDA查看驱动及CUDA的最大支持版本CUDA Toolkit选自定义安装检验无法识别nvcccuDNNcondapip换源conda管理py包conda 换源查看列表、创建、克隆、激活、删除conda包管理包安装原则设…

观众信息设置与统计(视频高级分析与统计功能)

Web播放器&#xff08;POLYV-html5-player&#xff09;支持设置观众信息参数&#xff0c;设置后在播放器上报的观看日志中会附带观众信息&#xff0c;这样用户就可以通过管理后台的统计页面或服务端API来查看特定观众的视频观看情况了。 一、观众信息设置 播放器设置观众信息参…

《数据库》 MySQL库表操作

1. SQL语句基础 1.2 SQL简介 SQL&#xff1a;结构化查询语言(Structured Query Language)&#xff0c;在关系型数据库上执行数据操作、数据检索以及数据维护的标准语言。使用SQL语句&#xff0c;程序员和数据库管理员可以完成如下的任务 改变数据库的结构 更改系统的安全设置…

DSP的基础平台搭建

1、CCS6.0的安装安装步骤这里就不说了&#xff0c;只谈论最可能遇到的问题&#xff1a;可以看到为需要关闭防火墙和扫描&#xff1b;在这里将其都关闭&#xff0c;然后可以断掉网络&#xff0c;关闭联想管家&#xff0c;可能还是会出现防火墙提示&#xff0c;但是可以安装&…

下一代防火墙-终端安全防护

实验设备1、 山石网科&#xff08;hillstone&#xff09;系列下一代防火墙&#xff08;实训平台v1.0中hillstone设备&#xff09;2、 三层交换机一台&#xff08;实训平台v1.0中cisco vios l2设备&#xff09;3、 二层交换机一台&#xff08;实训平台v1.0中cisco iol switch设备…

Scala实现网页数据采集示例

Scala 可以轻松实现简单的数据采集任务&#xff0c;结合 Akka HTTP&#xff08;高效HTTP客户端&#xff09;和 Jsoup&#xff08;HTML解析库&#xff09;是常见方案。Scala因为受众比较少&#xff0c;而且随着这两年python的热门语言&#xff0c;更让Scala不为人知&#xff0c;…

【IO复用】五种IO模型

文章目录五种IO模型Linux设计哲学BIONIOAIOSIOIO多路复用五种IO模型 Linux设计哲学 在linux系统中&#xff0c;实际上所有的I/O设备都被抽象为了文件这个概念&#xff0c;一切皆文件&#xff0c;磁盘、网络数据、终端&#xff0c;甚至进程间通信工具管道pipe等都被当做文件对…

FeatherScan v4.0 – 适用于Linux的全自动内网信息收集工具

前言 在平时渗透打靶的时候&#xff0c;经常要自己手工输入命令&#xff0c;做各种基本的信息收集&#xff0c;非常的繁琐&#xff0c;所以自研了一款工具&#xff0c;这款工具没有接入AI&#xff0c;因为不合适&#xff0c;接入了AI的话在一些不能上网的环境下进行信息收集&a…

如何精准筛选优质SEO服务资源?

核心要点&#xff1a; 中小企业选择SEO服务常陷困惑——效果难量化、承诺不透明、策略模糊化。本文剖析核心痛点&#xff0c;拆解技术合规性、策略透明度、行业经验匹配度等关键筛选维度&#xff0c;提供一套清晰的评估路径&#xff0c;助您在复杂市场中找到真正专业的合作伙伴…

在教育领域中,如何通过用户ID跑马灯来对视频进行加密?

文章目录前言一、什么是用户跑马灯二、用代码如何实现用户ID跑马灯的功能三、如何通过用户ID跑马灯来对视频进行加密&#xff1f;总结前言 在教育领域&#xff0c;优质视频课程易遭非法传播。为强化版权保护与责任追溯&#xff0c;引入基于用户ID的跑马灯水印技术成为有效手段…

MCP协议:AI时代的“万能插座”如何重构IT生态与未来

MCP协议&#xff1a;AI时代的“万能插座”如何重构IT生态与未来 在人工智能技术爆炸式发展的浪潮中&#xff0c;一个名为Model Context Protocol&#xff08;MCP&#xff09; 的技术协议正以惊人的速度重塑IT行业的底层逻辑。2024年11月由Anthropic首次发布&#xff0c;MCP在短…

同步,异步复位问题

1.同步复位的基本原理是&#xff0c;复位信号仅在时钟的有效边沿影响或重置触发器的状态。复位的主要目标之一是使 ASIC 在仿真时进入已知状态。由于复位树的扇出较大&#xff0c;复位信号相对于时钟周期可能成为 “晚到信号”。即使复位信号会通过复位缓冲树进行缓冲&#xff…

数组和指针回顾,练习与解析

代码见&#xff1a;登录 - Gitee.com 1.数组和指针练习与解析 1.1数组名 1.sizeof(数组名)&#xff0c;这里的数组名表示整个数组&#xff0c;计算的是整个数组的大小。 2.&数组名&#xff0c;这里的数组名表示整个数组&#xff0c;取出的是整个数组的地址。 3.除此之…

【牛客刷题】活动安排

文章目录一、题目介绍二、解题思路2.1 核心问题2.2 贪心策略2.3 正确性证明三、算法分析3.1 为什么按结束时间排序&#xff1f;3.2 复杂度分析3.3 算法流程图解3.3.1 流程图说明3.3.2 关键步骤说明四、模拟演练五、完整代码一、题目介绍 活动安排 题目描述 给定 nnn 个活动&am…

第1讲:C语言常见概念

目录 一、什么是C语言&#xff1f; 二、C语言的历史与成就 三、编译器选择&#xff08;VS2022&#xff09; 1、编译与链接 2、编译器对比 3、VS2022的优缺点 四、VS项目与源文件、头文件介绍 五、第一个C语言程序 六、main函数 七、printf和库函数 八、关键字介绍 …

WinUI3入门18:从APP打开商店链接以及实现内购

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…