【機器人】DualMap 具身導航 | 動態場景 開放詞匯語義建圖 導航系統

DualMap?是一個在線的開放詞匯語義映射系統,使得機器人能夠通過自然語言查詢動態變化的環境中理解和導航

雙地圖導航,結合全局抽象地圖進行高層次候選選擇,以及局部具體地圖進行精確目標定位,有效管理和更新環境中的動態變化。

論文地址:DualMap: Online Open-Vocabulary Semantic Mapping for Natural Language Navigation in Dynamic Changing Scenes

代碼地址:https://github.com/Eku127/DualMap


?

一、框架思路流程

?DualMap的框架思路流程,如下圖所示:

通過“具體地圖”和“抽象地圖”的雙地圖,進行目標導航:

  1. 輸入需要查詢物體的描述,例如“去找紅色水杯”
  2. 在抽象地圖中,對每個錨的語義列表中進行查詢匹配,選出最可能包含目標的位置
  3. 導航到可能位置后,在局部的具體地圖中進一步搜索目標
  4. 若找到,即完成導航
  5. 若未找到,則觸發抽象地圖更新,
  6. 將局部具體地圖中新的觀測進行更新
  7. 多次嘗試,用新地圖重新做候選檢索,進入第?2?步,直到找到目標或超過最大嘗試次數

?

1.1 Concrete Map (具體地圖) 構建流程

  1. 輸入RGB-D數據、機器人的Pose信息
  2. 使用YOLO + FastSAM,進行物體對象檢測
  3. 生成一組帶有類別標簽 、語義特征 和點云的觀測物體對象
  4. 將新觀測的物體與地圖中已有的對象集進行匹配對比(特征相似度+點云重疊匹配);如果匹配成功更新該對象的點云與 CLIP 特征,如果匹配失敗則插入為新對象
  5. 生成當前最新的細粒度 3D語義地圖,也就是具體地圖;包含場景中所有靜態/動態物體的點云與語義信息

1.2 Abstract Map (抽象地圖)構建流程:

  1. 在具體地圖的基礎上,來生成抽象地圖
  2. 檢測出靜態物體,用 CLIP將各對象特征與“靜態家具”模板匹配,高于閾值的標為“錨”(桌子、柜子、沙發等)
  3. 關聯易動物體,將體積小、可移動物體的特征與附近錨的平面位置做幾何/高度判斷,掛到相應靜態錨的語義列表上
  4. 將全局場景點云 投影到鳥瞰網格,生成二值 Occupancy Map(墻、柱等固定障礙)
  5. 生成抽象地圖,僅保留靜態錨的位置+語義+其上易動物體特征,以及全局占據格

二、DualMap的創新點

2.1 雙圖結構:精細感知 × 高效導航

Concrete Map 具體地圖(三維)

  • 在線增量構建,記錄“長得什么樣、在哪兒、語義是誰”的全套信息:每個物體的 3D點云、類別標簽、以及 CLIP文本+圖像混合特征(0.7 圖像 + 0.3 文本加權)。

  • 通過“匹配–累積–檢查”循環,既能吸納新出現的物體,也能剔除偶發誤檢物體。

Abstract Map 抽象地圖(二維)

  • 只挑“不會輕易挪動”的家具當錨(Anchor),丟掉其余幾何細節,僅保留它們的位置和語義;

  • 將小物件的語義特征“掛到”相應家具下(比如杯子→桌子),但不存它們的點云;

  • 把全局場景點云在鳥瞰平面做網格分桶,生成離散的占據格(occupancy grid),支持快速全局路徑規劃。

2.2?混合開集分割模型:兼顧速度與覆蓋

  • 閉集檢測(YOLOv8):快速定位預定義類別的物體邊框;

  • 開放集分割(FastSAM/MobileSAM):補充 YOLO 看不到的“新類別”或未包含在訓練集里的物體;

  • 融合策略:保留所有 YOLO 框里的分割結果,同時加入 FastSAM 在 “框外” 發現的物體,用色彩直方圖判斷哪塊先貼,避免重復或遺漏。

作用:既能保證速度(YOLO 30 FPS),也能“開箱即用”地識別千奇百怪的新物體。

2.3?動態抽象圖更新:閉環導航

  • 初次導航:在 Abstract Map 上,根據用戶語言(“找紅色水杯”)在每個錨的語義列表里打分,選出最可能放杯子的家具(比如餐桌)。

  • 局部搜索:機器人邊走邊用 Concrete Map 精細感知,到了目標家具附近再仔細找;

  • 若沒找到,就把局部新觀測到的物體(例如之前遺漏的一堆杯子)抽象到 Abstract Map,對哪個家具下掛了哪些物件進行補充,然后再選下一個最優家具做第二次嘗試。

2.4?輕量級的對象狀態檢查

傳統開放詞匯建圖系統(如 HOV-SG)依賴 3D 物體合并操作處理分割碎片,需消耗大量計算資源(Replica 場景中每幀處理耗時 42 秒)?

優化維度傳統方法(HOV-SG)DualMap 狀態檢查
空間操作3D 點云體素級合并(耗時 42 秒 / 幀)2D 類別分布統計(0.16 秒 / 幀)
數據依賴全局地圖幾何信息局部對象觀測列表
并行性串行 3D 處理可并行對象級檢查

DualMap 提出的輕量級對象狀態檢查通過兩大創新突破效率瓶頸:

  • 計算范式轉變:將全局 3D 幾何操作(如體素級合并)轉化為局部語義分析(如類別分布統計)
  • 錯誤修正前置:在觀測階段實時過濾噪聲,避免錯誤累積導致的地圖退化
  • 動態適應性:針對動態環境中物體狀態變化(如部分遮擋、位置移動)設計增量更新機制

通過兩種主要機制實現:穩定性和分裂檢測

穩定性檢查?目的是過濾掉那些觀察不足或可能由噪聲引起的對象,從而提高地圖的可靠性。

  • 示例:會議室場景中,誤檢為 "椅子" 的陰影區域若在 15 幀內未被重新觀測,且 "椅子" 類別占比僅 30%,則被刪除

  • 觸發條件:當對象超過T幀(默認 15 幀)未更新時,啟動穩定性評估

  • 檢查標準:對象需要滿足兩個條件才能通過穩定性檢查:

    1. 累積的觀測數量超過一個設定的閾值。

    2. 在對象的觀測列表中,最頻繁出現的類別ID至少占總觀測數的三分之二。

  • 結果處理如果對象未通過穩定性檢查,它將被視為不穩定對象并從地圖中移除

分裂檢測?解決欠分割問題,即多個相鄰對象被錯誤地合并為一個對象的情況。

  • 欠分割典型案例:茶幾上的遙控器與雜志被錯誤合并為單一對象
  • 觸發條件:當在連續幀的相同時間戳上出現具有不同類別ID的觀測時,系統會觸發分裂檢測。
  • 檢測過程:系統會分析對象觀測列表中的類別ID分布。如果發現不同類別ID的觀測在多個幀中持續共存,就會認為發生了欠分割。
  • 分裂操作:將對象的觀測列表按類別ID進行分割,并為每個類別創建新的對象。這有助于保留小對象并提高場景的保真度。

三、實驗驗證與效果

實驗在一臺配備NVIDIA RTX 4090 GPU和Intel i7-12700KF CPU的機器上進行。

檢測器的選擇

  • 閉環檢測采用YOLOv8l world模型 ,能夠快速準確地檢測預定義類別的對象。

  • 為了支持開放詞匯分割,使用了FastSAM 模型。

  • FastSAM能夠檢測YOLO模型未涵蓋的對象類別,從而實現全面的對象檢測。

特征嵌入模型

  • 論文中使用MobileCLIP-S2 進行特征嵌入。

  • MobileCLIP是一個輕量級的圖像-文本嵌入模型,適用于移動設備和機器人應用。選擇該模型可以確保在嵌入特征時保持較高的計算效率。

在HM3D數據集中,目標導航的成功率對比:

  • 在HM3D數據集的靜態場景中,DualMap的導航成功率最高,平均成功率達到70.5%。

  • 在動態場景中,DualMap在錨點內重定位和跨錨點重定位的成功率分別為64.8%和60.3%。

在真實世界中DualMap目標導航的成功率

在ScanNet scene001100上,語義分割結果的定性比較:

紅色箭頭突出顯示語義上不準確的預測,而藍色箭頭表示無意義的分割,表明預測存在噪聲。

目標導航示例效果:

?導航示例,如下圖所示:?

分享完成~

??相關文章推薦:

UniGoal 具身導航 | 通用零樣本目標導航 CVPR 2025-CSDN博客

【機器人】具身導航 VLN 最新論文匯總 | Vision-and-Language Navigation-CSDN博客

【機器人】復現 UniGoal 具身導航 | 通用零樣本目標導航 CVPR 2025-CSDN博客

【機器人】復現 WMNav 具身導航 | 將VLM集成到世界模型中-CSDN博客

【機器人】復現 ECoT 具身思維鏈推理-CSDN博客

【機器人】復現 SG-Nav 具身導航 | 零樣本對象導航的 在線3D場景圖提示-CSDN博客

?【機器人】復現 3D-Mem 具身探索和推理 | 3D場景記憶 CVPR 2025 -CSDN博客

【機器人】復現 Embodied-Reasoner 具身推理 | 具身任務 深度推理模型 多模態場景 長遠決策 多輪互動_embodied reasoner-CSDN博客

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/85129.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/85129.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/85129.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Fifty Project - D37】

fifty project算是失敗了一半了 成功的那一半在于一定程度上拯救了我的作息和健康,兩個月前入職體檢的肝有點不健康,昨天復查發現全都回到了健康范圍!尿酸也在正常范圍!就是體重還是沒減下來hhh 失敗的一半在于自己很差勁的規劃能…

解碼危險品物流背后的“隱形防線”

當急救藥品跨越千里送達醫院,當新能源電池準時抵達生產線,當化工原料安全運往工廠……這些與日常生活息息相關的場景背后,有一群人始終在和時間賽跑,與風險博弈。他們不是超級英雄,而是危險品物流從業者——一個鮮少被…

Flutter Melos在外包團隊協作中的弊端與應對策略

引言 在大型Flutter項目開發中,Melos作為一款優秀的Monorepo管理工具,能夠有效協調多包項目的開發流程。然而,當項目涉及外包團隊協作時,Melos的使用會面臨一系列獨特的挑戰。本文將深入分析Flutter Melos在外包團隊協作環境中的…

<selectKey> 中的order 屬性

在 MyBatis 中&#xff0c;<selectKey> 標簽的 order 屬性用于指定生成主鍵值的 SQL 語句執行時機。 除了 AFTER&#xff0c;MyBatis 還支持另一種模式&#xff1a;BEFORE&#xff0c; 它們有明確的使用場景和區別&#xff1a; order"AFTER" 適用數據庫&#x…

BitsAndBytes(簡稱 BnB)是一個用于“壓縮”大語言模型的工具包

BitsAndBytes&#xff08;簡稱 BnB&#xff09;是一個用于“壓縮”大語言模型的工具包&#xff0c;能把模型從原來的16位或32位&#xff0c;壓成4位或8位&#xff0c;減少顯存占用&#xff0c;同時保持盡量高的精度。 &#x1f9e9; 為什么叫 Bits and Bytes&#xff1f; 它的…

【前端】 Vue 3 中二次封裝組件

在 Vue 3 中二次封裝組件是提高代碼復用性和維護性的重要手段。以下是詳細的封裝方法和最佳實踐&#xff1a; 一、封裝原則 功能擴展&#xff1a;在原有組件基礎上添加新功能定制樣式&#xff1a;統一項目的 UI 設計規范簡化接口&#xff1a;隱藏復雜邏輯&#xff0c;提供簡潔…

分布式詞表示(Distributed Word Representation):自然語言處理的核心基石

分布式詞表示&#xff08;Distributed Word Representation&#xff09;&#xff1a;自然語言處理的核心基石 在自然語言處理&#xff08;NLP&#xff09;領域&#xff0c;如何將離散的詞匯轉化為計算機可理解的數值形式&#xff0c;一直是技術突破的關鍵。傳統的獨熱編碼&…

Windows Playwright NotImplementedError問題深究

原文鏈接&#xff1a;Windows Playwright NotImplementedError問題深究 < Ping通途說 0. 引言 今天來看一下這個困擾我很久的問題。是關于在FastAPI / NiceGUI 等基于Uvicorn環境下使用Async Playwright 提示NotImplementedError的問題。 本解決方案僅適用基于Uvicorn的異步…

QCustomPlot 數據可視化方式詳解

QCustomPlot 數據可視化方式詳解 QCustomPlot 提供了多種靈活的數據顯示方式,可以滿足從簡單靜態圖表到復雜實時數據可視化的各種需求。以下是 QCustomPlot 顯示數據的核心方式和策略: 基本數據顯示方式 1.1 完整數據設置 (setData)// 一次性設置完整數據集 QVector<doub…

家用舊電腦搭建小型服務器操作步驟教程:一步一步本地部署到公網訪問

你家是不是也有一臺吃灰的舊電腦&#xff1f;別急著扔&#xff0c;它其實還能發揮大作用&#xff01;小編最近就把家里一臺十年前的老臺式機&#xff0c;改造成了一個小型服務器&#xff0c;主要用來文件備份、當網站測試環境&#xff0c;還是比較有用的。今天就來手把手教你&a…

Python銀行賬戶系統全解析

完整代碼如下&#xff1a; class BankAccount:def __init__(self, account_holder, initial_balance0):"""初始化銀行賬戶:param account_holder: 賬戶持有人姓名:param initial_balance: 初始余額&#xff0c;默認為0"""self.account_holder …

博世X阿里云:智能座艙接入通義大模型!

近日,全球領先的汽車技術與服務商博世與阿里云宣布在大模型領域達成合作,通義大模型助力博世加速AI技術應用于智能座艙,首次實現座艙環境主動感知和3D數字人交互。 博世AI智能座艙技術原型由博世智能駕控事業部以通義千問和通義萬相為基礎,結合阿里云百煉大模型服務平臺和磐曦數…

高性能計算服務器的主要作用都有哪些?

高性能計算服務器是一種專門為了處理大規模科學計算和數據分析任務所設計的服務器&#xff0c;高性能計算服務器擁有著強大的計算能力和高速的數據傳輸能力&#xff0c;有著高度的可靠性和可擴展性&#xff0c;下面小編就來介紹一下高性能計算服務器的主要作用吧&#xff01; 高…

C++ 進階:深入理解虛函數、繼承與多態

前言 在 C 的面向對象編程中&#xff0c;繼承和多態是兩個核心概念。今天我們將深入探討 C 中與多態密切相關的幾個重要特性&#xff1a;虛函數、virtual 關鍵字、override 關鍵字、多重繼承以及虛繼承。這些內容是理解 C 多態機制和復雜類層次結構的關鍵。 虛函數與 virtual…

為AR眼鏡等多種智能可穿戴設備添加穿戴狀態檢測功能

作者&#xff1a;Azoteq中國 隨著AR/VR眼鏡、頭戴式耳機和入耳式耳塞、智能手表和健身手環等可穿戴電子產品受到越來越多消費者的歡迎&#xff0c;如何設計外形更加時尚迷人、功能更加先進宜人的穿戴產品成為了創新和創意的焦點。作為全球領先的多傳感器解決方案提供商&#xf…

騰訊云國際站縮容:策略、考量與實踐

騰訊云國際站作為連接全球業務的重要云計算樞紐&#xff0c;其資源的靈活調配至關重要。而騰訊云國際站縮容&#xff0c;便是企業在特定發展階段或業務場景下需要深入探究的關鍵議題。 一、騰訊云國際站縮容的背景與動因 隨著企業業務的動態發展&#xff0c;市場需求并非一成…

英語寫作核心詞匯

以下是一些非常常見和實用的單詞和短語分類整理&#xff1a;? 1. 核心高頻動詞 (用于表達觀點、影響、變化等) ?Affect (v.): 影響?Cause (v.): 引起&#xff0c;導致?Influence (v./n.): 影響?Benefit (v./n.): 有益于&#xff1b;好處?Harm (v./n.): 損害&#xff1b…

Python函數參數傳遞機制全解析

Python常見問題解答 1. 函數參數傳遞是值傳遞還是引用傳遞&#xff1f; Python中的參數傳遞是"對象引用傳遞"&#xff08;或稱為"共享對象傳遞"&#xff09;。具體來說&#xff1a; 對于不可變對象&#xff08;如數字、字符串、元組&#xff09;&#x…

MATLAB提供的預訓練神經網絡

CNN 預訓練的神經網絡 Deep Learning Toolbox? provides various pretrained networks that have different sizes, speeds, and accuracies.

【PDF】Qt生成PDF文件,占用存儲小

在 Qt 項目中&#xff0c;如果你希望使用第三方開源庫來生成心電圖的 PDF 報告&#xff0c;并且要求占用磁盤空間最小&#xff0c;以下是一些推薦的選擇&#xff1a; 推薦的開源庫 PoDoFo 簡介&#xff1a;PoDoFo 是一個用于創建和操作 PDF 文件的 C 開源庫。它非常輕量級&…