arXiv-2024 | VLM-GroNav: 基于物理对齐映射视觉语言模型的户外环境机器人导航

  • 作者: Mohamed Elnoor, Kasun Weerakoon, Gershom Seneviratne, Ruiqi Xian, Tianrui Guan, Mohamed Khalid M Jaffar, Vignesh Rajagopal, and Dinesh Manocha
  • 单位:马里兰大学学院公园分校
  • 原文链接:VLM-GroNav: Robot Navigation Using Physically Grounded Vision-Language Models in Outdoor Environments (https://arxiv.org/pdf/2409.20445)
  • 视频演示:https://gamma.umd.edu/researchdirections/crowdmultiagent/vlm-gronav/

主要贡献

  • 物理信息融合:论文提出将视觉语言模型(VLMs)与基于本体感受的感知相结合的导航方法,显著提高了地形可通行性估计的准确性和可靠性。
  • 动态更新:通过上下文学习将VLMs的语义理解与本体感受数据相结合,实现了基于机器人实时物理交互的可通行性估计的动态更新。
  • 全局和局部规划器:利用VLMs进行的高层次全局规划器和实时自适应局部规划器,能够在复杂或未知环境中动态调整路径。
  • 实验验证:在多种真实世界户外环境中进行了广泛的实验验证,显示出比现有方法高达50%的导航成功率提升。

研究背景

研究问题

论文主要解决的问题是如何在户外环境中实现自主机器人的导航,特别是处理不同地形的可通行性条件。

研究难点

该问题的研究难点包括:

  • 自然地形的多变性和复杂性,
  • 地形物理特性(如可变形性和滑动性)的可预测性差,
  • 传统导航方法在复杂环境中的不足,
  • 以及现有数据集在处理多样化地形上的局限性。

相关工作

该问题的研究相关工作有:

  • 依赖视觉传感器的传统导航方法,
  • 触觉和本体感知在机器人操作中的应用,
  • 以及将基础模型、大型语言模型(LLMs)和视觉语言模型(VLMs)集成到机器人导航中的进展。

研究方法

论文提出了VLM-GroNav,一种结合视觉语言模型(VLMs)和本体感知的新型导航方法,用于解决户外环境中的机器人导航问题。

可通行性估计

使用本体感知传感器估计地形可通行性。对于腿式机器人,通过关节施加的力量计算机器人腿部的沉降量,作为地形可变形性的直接测量。对于轮式机器人,通过比较轮式里程计和LiDAR里程计的测量值来评估地形的滑动性。

  • 对于腿式机器人: S sinkage = ∑ i = 1 n f joint , i 2 S_{\text{sinkage}} = \sum_{i=1}^{n} f_{\text{joint}, i}^{2} Ssinkage=i=1nfjoint,i2其中, f joint , i f_ {\text{joint}, i} fjoint,i是第i个关节施加的力量,n是关节总数。可通行性指标 τ \tau τ的计算公式为: τ sinkage = Γ ⋅ S sinkage − S min S max S min \tau_{\text{sinkage}} = \Gamma \cdot \frac{S_{\text{sinkage}} - S_{\text{min}}}{S_{\text{max}}S_{\text{min}}} τsinkage=ΓSmaxSminSsinkageSmin其中, S min ⁡ S_{\min} Smin 对应于最不易变形的地形(如混凝土), S max ⁡ S_{\max} Smax对应于最易变形的地形(如松散沙子)。
  • 对于轮式机器人: τ s l i p = β 1 ( Δ d l i d a r − Δ d o d o m ) + β 2 ( Δ θ l i d a r − Δ θ o d o m ) \tau_{slip} = \beta_{1}(\Delta d_{lidar} - \Delta d_{odom}) + \beta_{2}(\Delta\theta_{lidar} - \Delta\theta_{odom}) τslip=β1(ΔdlidarΔdodom)+β2(ΔθlidarΔθodom)其中, Δ d \Delta d Δd Δ θ \Delta\theta Δθ分别表示从LiDAR里程计和轮式里程计获得的距离和方向变化, β 1 \beta_{1} β1 β 2 \beta_{2} β2是权重因子。

Physically Grounded 推理模块

结合视觉和本体感知数据,连续更新地形可通行性估计和导航策略。利用VLMs处理视觉输入(航空影像和前置摄像头视图),并整合机器人本地传感器的实时反馈。

  • 初始时,自主堆栈查询大型VLMs,根据航空影像和天气数据对地形类型进行分类。
  • 在导航过程中,机器人捕获5m x 5m的前置摄像头和航空影像块,时间移位可通行性指标以匹配视觉输入。
  • 构建示例池 E pool \mathcal{E}_\text{pool} Epool,包括航空影像、前置摄像头视图、对齐的可通行性指标和地形类别。
  • 使用上下文学习来细化地形可通行性和导航成本估计。VLMs使用示例和文本提示来估计地形的可通行性:
    τ estimate = VLM ( T prompt , E pool ) \tau_{\text{estimate}} = \text{VLM}(\mathcal{T}_{\text{prompt}},\mathcal{E}_{\text{pool}}) τestimate=VLM(Tprompt,Epool)

高层全局规划器

使用航空影像和VLMs生成引导机器人从当前位置到目标位置的最优航点集。通过在航空影像上应用视觉标记来增强VLMs识别可航行区域的能力。

  • VLMs被提示带有标记图像和导航目标 T o b j e c t i v e T_{objective} Tobjective,选择最优航点序列以实现目标。
  • 当可通行性估计因新的本体感知反馈而改变时,全局规划器重新查询VLMs以更新航点:
    W new = VLM ⁡ ( T objective , I marked , τ estimate ) \mathcal{W}_{\text{new}} = \operatorname{VLM}(\mathcal{T}_{\text{objective}},\mathcal{I}_{\text{marked}},\tau_{\text{estimate}}) Wnew=VLM(Tobjective,Imarked,τestimate)
  • 更新后的航点 W new W_{\text{new}} Wnew传递给局部规划器。

自适应局部规划器

通过将本体感知反馈与轻量级VLMs(具有低推理时间)集成,实时调整机器人的轨迹。使用CLIP进行零样本地形分类,识别机器人前方左侧、中间和右侧的候选前沿。

  • 将前沿投影到图像帧中,并在机器人RGB相机图像中进行视觉标记,然后传递给CLIP进行零样本地形分类。
  • 每个航点被分配一个地形类型 ℓ i \ell_{i} i
  • 在DWA的目标函数中引入前沿成本项,优先选择朝向更具可通行性的前沿的轨迹。修改后的目标函数 G ( v , ω ) G(v,\omega) G(v,ω)为: G ( v , ω ) = J ( v , ω ) + ρ 4 ⋅ ϕ ( v , ω ) G(v,\omega) = J(v,\omega) + \rho_{4} \cdot \phi(v,\omega) G(v,ω)=J(v,ω)+ρ4ϕ(v,ω)
  • 前沿成本项 ϕ ( v , ω ) \phi(v,\omega) ϕ(v,ω)的计算公式为: ϕ ( v , ω ) = min ⁡ p ∈ P ( d ( η ( v , ω ) , p ) ⋅ τ estimate ( p ) ) \phi(v,\omega) = \min\limits_{p \in P} (d(\eta(v,\omega), p) \cdot \tau_{\text{estimate}}(p)) ϕ(v,ω)=pPmin(d(η(v,ω),p)τestimate(p))
    其中, η ( v , ω ) \eta(v,\omega) η(v,ω)表示由线速度和角速度 v v v ω \omega ω产生的轨迹, d ( η ( v , ω ) , p ) d(\eta(v,\omega), p) d(η(v,ω),p)是轨迹 η ( v , ω ) \eta(v,\omega) η(v,ω)终点和前沿点p之间的欧几里得距离, τ estimate ( p ) \tau_{\text{estimate}}(p) τestimate(p)是由推理模块分配给前沿p的可通行性估计。

实验设计

数据收集

使用Ghost Vision 60腿式机器人和Clearpath Husky轮式机器人进行实际环境实验。

Ghost Vision 60配备前置广角相机、OS1-32 LiDAR、GPS和Intel NUC 11系统;

Clearpath Husky配备Velodyne VLP16 LiDAR、Realsense D435i相机、GPS和笔记本电脑。

实验场景

设计了四个测试场景,包括

  • 干草、泥泞草、混凝土(场景1);
  • 干草、沙子、混凝土(场景2);
  • 混凝土、干草、泥泞草(场景3);
  • 混凝土、雪、泥泞草(场景4)。

参数配置

使用GPT-4o API进行推理和全局规划,CLIP进行基于零样本的地形分类。

结果与分析

成功率

VLM-GroNav在所有场景中均实现了最高成功率,比现有方法提高了50%。

归一化轨迹长度

VLM-GroNav在某些场景中实现了更短的轨迹长度,例如场景3中比GA-Nav和CoNVOI分别短了约0.1和0.09。

IMU能量密度

VLM-GroNav在所有场景中的IMU能量密度均低于其他方法,表明其导航更加稳定,能量使用更高效。

定性分析

VLM-GroNav在不同地形之间的过渡中表现出更好的适应性和稳定性,特别是在处理滑动和可变形地形时。

总结

论文提出的VLM-GroNav方法通过结合视觉语言模型(VLMs)和本体感知。该方法通过动态更新地形可通行性估计,实时调整全局和局部规划,显著提高了户外环境中机器人导航的成功率和稳定性。

未来的工作将包括在没有GPS的环境中进行定位的方法优化,以及进一步提高VLMs处理速度以应对动态和复杂环境。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/936002.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Typora 修改默认的高亮颜色

shift F12 参考 怎么给typora添加颜色?

基于阿里云Ubuntu22.04 64位服务器Java及MySql环境配置命令记录

基于阿里云Ubuntu22.04 64位服务器Java及MySql环境配置命令记录 Java 23 离线环境配置MySql 环境配置MySQL常用命令 Java 23 离线环境配置 下载 Ubuntu环境下 Java 23 离线包 链接: java Downloads. 在Linux环境下创建一个安装目录 mkdir -p /usr/local/java将下载好的jdk压缩…

【树莓派4B】MindSpore lite 部署demo

一个demo,mindspore lite 部署在树莓派4B ubuntu22.04中,为后续操作开个门! 环境 开发环境:wsl-ubuntu22.04分发版部署环境:树莓派4B,操作系统为ubuntu22.04mindspore lite版本:mindspore-li…

RK3576 Android14,内存大于4G时UVC应用无法申请内存

最近有个项目需要将Linux虚拟成UVC摄像头,开发过程中遇到一个奇怪的事情,通过V4l2框架接口申请内存时,相同的板子,只是内存一个4G一个8G。4G的内存可以申请成功,8G就不行。提示“内存不足” 内存更大反而内存不足&…

HarmonyOS-高级(四)

文章目录 应用开发安全应用DFX能力介绍HiLog使用指导HiAppEvent 🏡作者主页:点击! 🤖HarmonyOS专栏:点击! ⏰️创作时间:2024年12月11日11点18分 应用开发安全 应用隐私保护 隐私声明弹窗的作…

函数与结构体(入门6)

【深基7.例1】距离函数 #include <iostream> #include <iomanip> #include <cmath> using namespace std; int main() {double x1, x2, x3, y1, y2, y3;cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;double d1 pow(pow(…

质数的和与积

质数的和与积 C语言代码C 代码Java代码Python代码 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 两个质数的和是S&#xff0c;它们的积最大是多少&#xff1f; 输入 一个不大于10000的正整数S&#xff0c;为两个质数的和。 输出 一个整…

OpenCV图像处理实战:从边缘检测到透视变换,掌握七大核心函数

一、引言 图像处理是计算机视觉领域中的基础&#xff0c;而边缘检测和轮廓分析则是其核心任务之一。OpenCV作为一个强大的计算机视觉库&#xff0c;提供了众多功能强大的函数&#xff0c;帮助开发者实现高效的图像处理。在本文中&#xff0c;我们将深入探索OpenCV中的七个重要…

JavaWeb01

JavaWeb 1. BS 和 CS BS B/S结构(Browser/server&#xff0c;浏览器/服务器模式)&#xff0c;是WEB兴起后的一种网络结构模式&#xff0c;WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端&#xff0c;将系统功能实现的核心部分集中到服务器上&#xff0c;简化了系统…

开发者工具的模块化与可扩展性设计

文章目录 前言模块化设计的重要性可扩展性设计的重要性设计模式与技术实现实战代码插件管理器类&#xff1a;PluginManager注册插件方法&#xff1a;register_plugin执行插件方法&#xff1a;execute_plugin 插件实现插件 1&#xff1a;代码格式化插件插件 2&#xff1a;代码行…

嵌入式现状、机遇、挑战与展望

在当今数字化浪潮中&#xff0c;嵌入式系统宛如一颗璀璨的明珠&#xff0c;熠熠生辉&#xff0c;深刻地渗透到了我们生活的方方面面&#xff0c;成为推动现代科技进步不可或缺的关键力量。从智能家居的便捷控制&#xff0c;到工业生产的精准运作&#xff0c;再到汽车的智能驾驶…

️️️ 避坑指南:如何修复国密gmssl 库填充问题并提炼优秀加密实践20241212

&#x1f6e1;️ 避坑指南&#xff1a;如何修复国密gmssl 库填充问题并提炼优秀加密实践 ✨ 引言 在当下的数据安全环境中&#xff0c;SM4作为中国国家密码算法的代表性选择&#xff0c;被广泛应用于金融、通信和政府领域。然而&#xff0c;在实际开发中&#xff0c;即便是开…

markdown入门

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

四、个人项目系统搭建

文章目录 一、python写的后端代码二、html代码三、index.css四、js代码 效果图&#xff1a; 一、python写的后端代码 后端代码使用Flask编写&#xff0c;如下所示&#xff1a; # app.py from flask import Flask, render_template, request, jsonify, g import sqlite3 import…

【含开题报告+文档+PPT+源码】基于微信小程序的点餐系统的设计与实现

开题报告 随着互联网技术的日益成熟和消费者生活水平与需求层次的显著提升&#xff0c;外卖点餐平台在中国市场上迅速兴起并深深植根于民众日常生活的各个角落。这类平台的核心在于构建了一个基于互联网的强大订餐服务系统&#xff0c;它无缝整合了餐饮商户资源与广大消费者的…

【DFT】【MBIST】Memory Repair

Memory Repaire 1. Overview2. Memory Repair2.1 Column MUX2.2 Type of Repair 3. Tessent Repair Architecture3.1 BIRA3.2 BISR3.3 Implementing Soft Repair3.4 Repair Steps 1. Overview 假设通过 MBIST 发现 SoC 中一个或多个 Memory 存在故障&#xff0c;不能正常进行读…

[搜广推]王树森推荐算法——基于物体的协同过滤

基于物体的协同过滤 ItemCF 基于物体的协同过滤&#xff08;Item-Based Collaborative Filtering&#xff0c;简称ItemCF&#xff09;是一种经典的推荐系统算法 基本思想 量化用户对物品的兴趣&#xff0c;通过分析用户的行为来找到与目标物品相似的其他物品&#xff0c;然后…

scala的隐式转换

定义 隐式转换是 Scala 提供的一种强大的特性&#xff0c;它允许编译器在特定的情况下自动将一种类型转换为另一种类型。这种转换不是显式地通过方法调用进行的&#xff0c;而是由编译器自动插入转换代码。隐式转换主要通过定义隐式转换函数来实现。隐式转换函数是一种带有imp…

跨平台开发技术的探索:从 JavaScript 到 Flutter

随着多平台支持和用户体验一致性在应用程序开发中变得越来越重要,开发者面临的挑战是如何在不同平台上保持代码的可维护性和高效性。本文将探讨如何利用现代技术栈,包括 Flutter、JavaScript、HTML5、WebAssembly、TypeScript 和 Svelte,在统一的平台上进行高效的跨平台开发…

CTFshow-命令执行(Web58-77)

CTFshow-命令执行(Web58-77) Web58 <?php if(isset($_POST[c])){$c $_POST[c];eval($c); }else{highlight_file(__FILE__); }Warning: system() has been disabled for security reasons in /var/www/html/index.php(17) : eval()d code on line 1 本题对于passthru&…