3D语义地图中的全局路径规划!iPPD:基于3D语义地图的指令引导路径规划视觉语言导航

-
作者: Zehao Wang, Mingxiao Li, Minye Wu, Marie-Francine Moens, Tinne Tuytelaars
-
单位:鲁汶大学电气工程系,鲁汶大学计算机科学系
-
论文标题: Instruction-guided path planning with 3D semantic maps for vision-language navigation
-
出版信息:Neurocomputing 625 (2025) 129457
-
论文链接:https://www.sciencedirect.com/science/article/abs/pii/S0925231225001298?via%3Dihub
主要贡献

-
引入高分辨率3D语义地图:提出使用高分辨率的3D语义地图作为环境表示,相比传统的2D地图或拓扑地图,能够保留更多环境信息,为导航提供更丰富的语义和空间上下文。
-
提出模块化导航框架(iPPD):设计了一种模块化的导航方法,包含路径提议和路径评分两个阶段。通过指令约束的路径提议算法生成候选路径,并利用基于Transformer的评分模型选择最佳路径,有效利用全局信息,避免了局部决策的误差累积。
-
创新的路径特征编码方案:提出了一种针对3D语义地图的路径特征编码方法,通过“对象罗盘”感知局部环境,并结合PointNet和Transformer模型对路径特征进行编码,增强了路径与语言指令的对齐能力。
-
全局路径规划方法:这是首个基于3D语义地图的全局路径规划方法,通过预探索阶段构建的全局地图进行路径规划,显著提升了语言引导导航任务的性能,减少了训练需求,并展示了其在实际应用中的潜力。
背景知识
-
视觉语言导航(VLN)的目标是让机器人能够理解人类自然语言指令,并在环境中成功导航以执行这些指令。这需要整合语言理解、视觉感知和决策能力。
-
传统的 VLN 方法大多基于离散环境假设,即导航位置是预先定义好的,但在现实场景中,这种假设限制了机器人的灵活性和适应性。
-
因此,研究者们开始探索连续环境中的 VLN 任务,以缩小与实际应用的差距。
研究方法
论文提出了一种名为 Instruction-aware Path Proposal and Discrimination (iPPD) 的新方法,该方法包含两个主要阶段:语义地图构建和基于语言的路径规划。

1. 语义地图构建
在预探索阶段,机器人在环境中随机行走,利用 RGBD(彩色图像和深度图像)传感器收集数据,并通过预训练的语义分割模型(Mask2Former)对每个时间步的观察结果进行语义分割。这些分割结果被投影到 3D 点云中,并结合相机姿态信息,动态更新到全局 3D 语义地图中。地图的分辨率设置为 0.1 米,并通过多视图一致性约束和最大池化操作来减少语义预测误差。

2. 基于语言的路径规划
路径规划阶段包含两个模块:路径提议和路径评分。
-
路径提议:受经典粒子滤波算法启发,论文提出了一种基于指令约束的路径提议算法。该算法利用从指令中提取的稀疏动作-对象序列(如“向左转”、“观察沙发”)来引导粒子的运动。粒子在地图中模拟机器人运动,生成一系列候选路径。这些路径随后被编码并评分。
-
路径评分:论文设计了一种基于 Transformer 的语言驱动判别器,用于评估候选路径并选择最佳路径作为最终结果。路径特征编码方案专门针对 3D 语义地图设计,能够将路径上的环境信息编码为特征表示。这些特征与语言指令对齐,以验证路径是否符合指令。

实验
实验使用了 VLN-CE 数据集,并在验证集上进行了评估。评估指标包括归一化动态时间弯曲(nDTW)、成功率(SR)、成功加权路径长度(SPL)等。

关键结论
-
性能提升:iPPD 方法在验证集上的表现显著优于其他方法,尤其是在 nDTW 和 SR 指标上。例如,在验证集的 seen 环境中,iPPD 的 nDTW 为 0.66,SR 为 0.51,而在 unseen 环境中,nDTW 为 0.63,SR 为 0.42。
-
地图质量的影响:通过对比使用构建的语义地图和使用真实语义地图的模型性能,论文发现构建的语义地图在性能上与真实地图相当,表明其包含的语义信息足以支持导航任务。
-
路径提议策略的影响:论文还比较了不同的路径提议策略,包括随机行走、考虑障碍物的提议策略等。结果表明,论文提出的策略在召回率和路径形状相似性之间取得了较好的平衡。
讨论与未来工作
尽管 iPPD 方法在预探索环境中的 VLN 任务中表现出色,但仍有改进空间。论文指出,未来的研究方向包括:
-
提高语义地图的精度,例如包含实例级信息。
-
探索更先进的语言模型以增强指令理解能力。
-
研究更高效的路径规划算法,以减少对评分模型的依赖。
-
改进地图管理技术,以支持更大规模环境的导航。

相关文章:
3D语义地图中的全局路径规划!iPPD:基于3D语义地图的指令引导路径规划视觉语言导航
作者: Zehao Wang, Mingxiao Li, Minye Wu, Marie-Francine Moens, Tinne Tuytelaars 单位:鲁汶大学电气工程系,鲁汶大学计算机科学系 论文标题: Instruction-guided path planning with 3D semantic maps for vision-language …...
ShellScript脚本编程
语法基础 脚本结构 我们先从这个小demo程序来窥探一下我们shell脚本的程序结构 #!/bin/bash# 注释信息echo_str"hello world"test(){echo $echo_str }test echo_str 首先我们可以通过文本编辑器(在这里我们使用linux自带文本编辑神器vim),新建一个文件…...
【HarmonyOS 5】敏感信息本地存储详解
【HarmonyOS 5】敏感信息本地存储详解 前言 鸿蒙其实自身已经通过多层次的安全机制,确保用户敏感信息本地存储安全。不过再此基础上,用户敏感信息一般三方应用还需要再进行加密存储。 本文章会从鸿蒙自身的安全机制进行展开,最后再说明本地…...
大厂面试:六大排序
前言 本篇博客集中了冒泡,选择,二分插入,快排,归并,堆排,六大排序算法 如果觉得对你有帮助,可以点点关注,点点赞,谢谢你! 1.冒泡排序 //冒泡排序ÿ…...
.exe变成Windows服务
.exe变成Windows服务) 场景步骤 1: 安装 PyInstaller和win32serviceutil步骤 2: 使用 PyInstaller 创建 .exe 文件步骤 3: 检查生成的 .exe 文件步骤 4: 安装服务步骤 5: 启动服务步骤 6: 配置服务自动启动(可选)步骤 7: 检查服务状态完整示例…...
探索鸿蒙沉浸式:打造无界交互体验
一、鸿蒙沉浸式简介 在鸿蒙系统中,沉浸式是一种极具特色的设计理念,它致力于让用户在使用应用时能够全身心投入到内容本身,而尽可能减少被系统界面元素的干扰。通常来说,就是将应用的内容区巧妙地延伸到状态栏和导航栏所在的界面…...
el-tree组件使用过滤时,不展示筛选目标的子节点
1.el官方示例过滤方法 const filterNode (value: string, data: Tree) > {if (!value) return truereturn data.label.includes(value) }2.修改后的过滤方法 /*** 树节点过滤*/ const filterNode (value, data, node) > {if (!value) return true;let parentNode no…...
超详细!Android 面试题大汇总与深度解析
一、Java 与 Kotlin 基础 1. Java 的多态是如何实现的? 多态是指在 Java 中,同一个行为具有多个不同表现形式或形态的能力。它主要通过方法重载(Overloading)和方法重写(Overriding)来实现。 方法重载&a…...
网站301搬家后谷歌一直不收录新页面怎么办?
当网站因更换域名或架构调整启用301重定向后,许多站长发现谷歌迟迟不收录新页面,甚至流量大幅下滑。 例如,301跳转设置错误可能导致权重传递失效,而新站内容与原站高度重复则可能被谷歌判定为“低价值页面”。 即使技术层面无误&a…...
在Mac上离线安装k3s
目录 首先是安装multipass。 1. 系统要求 2. 环境准备 本来想照着网上文档学习安装一下k3s,没想到在docker被封了之后,现在想通过命令行去下载github的资源也不行了(如果有网友看到这个文档、并且知道问题原因的,请留言告知&am…...
无锁队列--知识分享
目录 无锁队列 无锁队列是什么 为什么需要无锁队列 队列的类型 无锁队列的分类 ringbuffer(SPSC) ret_ring(MPMC) 无锁队列 无锁队列是什么 无锁队列通过原子操作来实现线程安全的队列,属于非阻塞队列 …...
玩转Docker | 使用Docker部署Memos笔记工具
玩转Docker | 使用Docker部署Memos笔记工具 前言一、Memos介绍Memos简介主要特点二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署Memos服务下载镜像创建容器创建容器检查容器状态检查服务端口安全设置四、访问Memos服务访问Memos首页注册账号五、基本使用…...
2025低代码平台选型策略:ROI导向下的功能与成本权衡
在当今快速变化的商业环境中,企业面临着前所未有的挑战与机遇。数字化转型已成为企业提升竞争力的关键,而软件开发的高成本和长周期无疑是实现这一转型的绊脚石。 低代码平台的兴起,为企业提供了一种高效、灵活的解决方案,使得非…...
Redis的IO多路复用
1 传统的socket编码模型 传统 Socket 模型通常采用 多线程/多进程 或 阻塞 I/O 的方式处理网络请求。以下是典型实现步骤: 创建套接字(Socket) 步骤:调用 socket() 创建一个 TCP/UDP 套接字。通常把这个套接字称为【主动套接字】…...
充电宝项目:规则引擎Drools学习
文章目录 规则引擎 Drools1 问题2 规则引擎概述2.1 规则引擎2.2 使用规则引擎的优势2.3 规则引擎应用场景2.4 Drools介绍 3 Drools入门案例3.1 创建springboot项目 引入依赖3.2 添加Drools配置类3.4 创建实体类Order3.5 orderScore.drl3.6 编写测试类 4 Drools基础语法4.1 规则…...
基于YOLOv9的课堂行为检测系统
基于YOLOv9的课堂行为检测系统 项目概述 本项目是一个基于YOLOv9深度学习模型的课堂行为检测系统,旨在通过计算机视觉技术自动识别和监测课堂中学生的各种行为状态,帮助教师更好地了解课堂教学效果。 项目结构 课堂行为检测/ ├── data/ │ ├──…...
端、管、云一体化原生安全架构 告别外挂式防护!
面对数字化转型浪潮,企业网络安全风险日益凸显。数据泄露、黑客勒索等事件频发,合规要求加速推进。尽管企业纷纷部署了防病毒、身份认证、文件加密、入侵防护、流量监控等多种安全系统,但分散且孤立的架构非但没有有效抵御风险,反…...
BI面向模型开发和面向报表开发,有什么区别?
在数字化时代,商业智能(BI)已成为企业决策不可或缺的工具。BI项目实施时,通常有两种开发模式:面向模型开发和面向报表开发。虽然两者都旨在通过数据驱动决策,但在开发逻辑、目标价值和技术路径上存在显著差…...
进程控制(上)【Linux操作系统】
进程控制 写时拷贝 本质是一种减少深拷贝的方法 Linux中有很多拷贝的场景都用得上写时拷贝,下面以创建子进程时的写时拷贝为例: 子进程被创建的时候: 会继承父进程的mm_struct和页表 所以子进程刚刚继承时,父子进程的代码和数据…...
5G网络下客户端数据业务掉线频繁
上层应用的日志和界面在待机状态下(即没有做通话等业务操作),会频繁提示“离线”。 主要先看有没有丢网,UL BLER有没有问题。确认没有问题。看到业务信道释放后也可以成功重新建链。所以以为这个只是终端业务进入dormant态的提示…...
【Docker项目实战】使用Docker部署Gitblit服务器
【Docker项目实战】使用Docker部署Gitblit服务器 一、Gitblit介绍1.1 Gitblit 介绍1.2 主要特点 二、本次实践规划2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Gitblit镜像五、部署Gitbli…...
Vitis: 使用自定义IP时 Makefile错误 导致编译报错
参考文章: 【小梅哥FPGA】 Vitis开发中自定义IP的Makefile路径问题解决方案 Vitis IDE自定义IP Makefile错误(arm-xilinx-eabi-gcc.exe: error: *.c: Invalid argument)解决方法 Vitis 使用自定义IP时: Makefile 文件里的语句是需要修改的,…...
helm的go模板语法学习
1、helm chart 1.0、什么是helm? 介绍:就是个包管理器。理解为java的maven、linux的yum就好。 安装方法也可参见官网: https://helm.sh/docs/intro/install 通过前面的演示我们知道,有了helm之后应用的安装、升级、查看、停止都…...
AI 语音公司 ElevenLabs 进军亚太市场设立东京子公司;EverTutor Live :语音交互 AI 教育平台丨日报
开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的 技术 」、「有亮点的 产品 」、「有思考的 文章 」、「有态度的 观…...
STM32启动流程详解
STM32启动流程详解 本文档详细介绍STM32微控制器从上电到main函数执行的完整启动流程。 1. 上电与复位过程 当STM32芯片上电或复位时,硬件会执行以下步骤: 上电复位(POR)/低电平复位(PDR): 芯片接通电源或NRST引脚置低时触发初始PC值设置: 程序计数器…...
Langchain + Gemini API调用基本操作
本文参考Langchain中ChatGoogleGenerativeAI的官方文档,在本地的jupyter notebook中运行。 关于API的细节在官方文档最开头给出: 我们在使用时,可以选择model"gemini-2.0-flash-001"或者生成图片的ChatGoogleGenerativeAI(model“…...
利用 Python 和 AI 技术创作独特的图像艺术作品
1. 项目目标 生成艺术作品:利用 AI 模型(如 Stable Diffusion)生成具有艺术风格的图像。自定义风格:通过文本提示(prompt)控制图像的艺术风格(如赛博朋克、印象派、超现实主义等)。…...
Matlab绘图(三)——设置图例的位置
❤️1. 使用 Location 参数设置图例位置 h_legend legend({系列 A, 系列 B, 系列 C}, ...FontName, Arial, ... % 指定字体名称FontSize, 10, ... % 指定字体大小Location, northeast); % 指定初始位置在右上角调用 legend 函数,并通过 Location 参数指定图例放…...
【数据结构】4.单链表实现通讯录
在上一篇文章我们学会了用单链表来实现各种方法,在这一篇文章我们将在单链表的基础上实现通讯录。 0、准备工作 实现通讯录之前,我们还需要在单链表的基础上添加2个文件,头文件Contact.h和源文件Contact.c。Contact.c来实现通讯录方法的声明…...
接口自动化测试(一)
一、HTTP请求的核心概念及原理详解 HTML:超文本标记语言-----通过<标记符>内容</标记符>格式-------页面 URL:统一资源定位符 返回数据有很多:页面、图片、视频,都可以进行返回---统称为:资源HTTP:超文本传输协议(请求-响应的协…...
