英偉達&斯坦福大學發(fā)布GRS:從真實世界觀測中生成機器人仿真任務(wù) 精華
文章鏈接:https://arxiv.org/pdf/2410.15536
亮點直擊
- 提出了一種實現(xiàn)真實到模擬仿真生成的新穎系統(tǒng);
- 在一系列真實和模擬測試中展示了該方法的高效性。
總結(jié)速覽
解決的問題:GRS系統(tǒng)旨在解決機器人、計算機視覺和AR/VR中的“真實到模擬”(real-to-sim)轉(zhuǎn)換問題。具體來說,通過單次RGBD觀測生成數(shù)字孿生模擬環(huán)境,并生成適合虛擬agent訓練的多樣化、可解任務(wù)。
提出的方案:GRS系統(tǒng)分為三個階段:1)使用SAM2進行場景理解與目標分割,并結(jié)合視覺語言模型(VLMs)對目標進行描述;2)將識別出的目標匹配為可用于仿真的資產(chǎn);3)生成與上下文相關(guān)的機器人任務(wù)。此外,GRS通過引入一個迭代優(yōu)化的router,逐步完善仿真和測試代碼,確保仿真環(huán)境符合任務(wù)規(guī)格且機器人策略可解。
應(yīng)用的技術(shù):GRS依賴于最先進的視覺語言模型和SAM2模型實現(xiàn)場景理解和目標識別,并使用一個迭代優(yōu)化的router來精確匹配輸入環(huán)境中的目標。其核心技術(shù)包括:目標分割、VLMs描述匹配、仿真資產(chǎn)匹配以及仿真環(huán)境與任務(wù)驗證測試集生成。
達到的效果:實驗結(jié)果表明,GRS系統(tǒng)能夠精確識別目標對應(yīng)關(guān)系,生成與輸入環(huán)境高度匹配的任務(wù)環(huán)境,并通過router機制有效提升自動仿真任務(wù)的生成質(zhì)量,使得生成的仿真任務(wù)在符合任務(wù)規(guī)格的前提下對機器人策略可解。
方法
用于生成真實到模擬任務(wù)的方法分為兩個階段:1)場景理解;2)仿真生成與評估。首先,處理輸入的RGBD圖像以提取場景信息,包括邊界框和分割掩碼。接下來,我們在提取的元素與可用于仿真的資產(chǎn)之間建立對應(yīng)關(guān)系。
利用這些場景數(shù)據(jù),為機器人系統(tǒng)制定要執(zhí)行的任務(wù)。提取的3D資產(chǎn)和場景信息是生成初始仿真和相關(guān)測試用例的關(guān)鍵輸入。我們引入了一個稱為router的創(chuàng)新迭代優(yōu)化過程,該過程逐步改進仿真和測試用例,直到策略成功完成指定任務(wù)。參考GenSim,將任務(wù)(指機器人系統(tǒng)要執(zhí)行的目標和/或動作的文本描述)與仿真(指系統(tǒng)生成以模擬該任務(wù)的代碼)區(qū)分開來。在本文的框架中,這種區(qū)分將概念指令與其具體實現(xiàn)分開。
A. 場景理解
我們采用兩階段的方法進行場景描述,將圖像分割與圖像描述結(jié)合起來,如下圖2的第一個條目所示。該過程確保對場景的詳細理解,有助于生成準確的仿真和任務(wù)。
圖像分割。在初始階段,我們使用SAM2(Segment Anything Model 2)對輸入圖像進行全面分割。該最新模型在識別和描繪場景中的各個元素方面表現(xiàn)出色。該過程通常會導致過分割,即較大目標的各個組件(如機器人的部分或背景元素)被識別為獨立的段。雖然這種細節(jié)級別似乎過于繁瑣,但它為我們后續(xù)的分析提供了細致的基礎(chǔ),使我們能夠更細膩地理解場景的組成。
目標對應(yīng)關(guān)系。目標對應(yīng)關(guān)系過程旨在將候選目標與適合的3D資產(chǎn)進行匹配,以用于仿真。本文的方法包括三個步驟:1)資產(chǎn)數(shù)據(jù)庫創(chuàng)建:通過提示VLM分析每個資產(chǎn)的多個渲染圖像,生成資產(chǎn)庫中每個3D目標的豐富多角度描述。2)候選目標描述:我們使用相同的VLM來描述從分割過程中獲得的候選目標裁剪圖像。這一描述僅基于它們的視覺信息,確保與資產(chǎn)數(shù)據(jù)庫具有一致的比較基礎(chǔ)。3)描述比較:我們利用VLM對這些描述進行比較,結(jié)合先前的文本描述和裁剪的真實圖像,將每個候選目標匹配到一個3D資產(chǎn)或識別為非目標。此步驟確保僅將相關(guān)目標納入仿真。
此過程的結(jié)果是一個場景資產(chǎn)的完整列表,每個資產(chǎn)都關(guān)聯(lián)了初始圖像分析期間獲得的特定邊界框信息。此詳細映射構(gòu)成了在仿真環(huán)境中準確重建場景的基礎(chǔ)。
B. 仿真生成與評估
仿真生成的挑戰(zhàn)在于將現(xiàn)實世界的目標轉(zhuǎn)化為機器人可執(zhí)行的仿真程序。該代碼必須精確定義仿真的初始配置和預(yù)期結(jié)束狀態(tài),同時通過測試來確認這些條件。至關(guān)重要的是,生成的仿真應(yīng)優(yōu)化為可行,使機器人策略能夠在可接受的時間內(nèi)順利完成任務(wù)。
GRS的仿真生成過程以場景圖像和場景描述為輸入,概述見下算法1。受GenSim 的啟發(fā),我們將仿真生成分為兩個階段:1)制定抽象任務(wù)定義并選擇合適的資產(chǎn);2)為任務(wù)編寫仿真程序。本文的方法通過結(jié)合場景圖像并使用VLM進行輸入處理,增強了這兩個步驟,有別于GenSim的LLM方法。與GenSim不同,我們不使用預(yù)定義的資產(chǎn),而是利用目標對應(yīng)過程中識別的候選目標。這使我們的任務(wù)生成受益于場景的視覺上下文和可用資產(chǎn)的文本描述。
任務(wù)定義生成。在獲得場景描述和選定的視覺資產(chǎn)后,系統(tǒng)首先生成任務(wù)定義,如圖2的第二項所示。我們提供場景信息、圖像和資產(chǎn)描述,以生成符合上下文的機器人任務(wù)。為適應(yīng)多種潛在任務(wù),我們允許任務(wù)使用觀測到的部分資產(chǎn)。我們專注于生成對機器人系統(tǒng)既實用又具有挑戰(zhàn)性的任務(wù),這些任務(wù)通常涉及特定方式操作場景中的目標,例如堆疊特定物品或按類別分組目標。例如,系統(tǒng)可能生成如下任務(wù):“將所有紅色方塊堆疊在藍色圓柱上”或“按大小順序從左到右在桌子上排列目標。”
這種方法允許創(chuàng)建廣泛的任務(wù),從簡單的目標操作到更復(fù)雜的空間推理和組織挑戰(zhàn),所有任務(wù)都根據(jù)給定場景中的特定目標和布局進行定制。通過利用分割和目標對應(yīng)過程實現(xiàn)的詳細場景理解,我們確保生成的任務(wù)不僅多樣且符合實際場景上下文,同時在模擬環(huán)境中也是可行的。
仿真程序生成。接下來,我們使用VLM生成仿真代碼,VLM接收場景圖像、任務(wù)定義和資產(chǎn)描述,如圖2的第三項所示。為了確保生成的仿真有效地完成機器人任務(wù),我們還生成了由一系列測試組成的測試程序。測試程序的生成是通過將仿真程序和任務(wù)描述作為輸入提供給LLM來完成的。
為使任務(wù)描述與生成的仿真一致,我們引入了一種新穎的LLM路由系統(tǒng),該系統(tǒng)動態(tài)迭代仿真程序和測試。算法遵循一個簡潔而有效的步驟:1)運行測試:在仿真程序上執(zhí)行測試并收集錯誤信息。2)路由:根據(jù)任務(wù)描述和錯誤信息確定是更新生成的測試程序還是仿真程序。3)修復(fù):使用VLM修復(fù)仿真代碼或使用LLM修復(fù)測試代碼,參考輸入的場景圖像、錯誤信息和任務(wù)定義。4)重復(fù)此循環(huán),直到執(zhí)行過程中不再出現(xiàn)錯誤。該算法在圖2的最后一項中可視化展示。盡管此過程簡單,但其表現(xiàn)出了顯著的效果,使系統(tǒng)能夠在多個組件及其相互關(guān)系上進行推理。通過使用任務(wù)定義作為指導來優(yōu)化仿真和關(guān)聯(lián)的測試,我們的路由系統(tǒng)確保概念任務(wù)描述與其在模擬環(huán)境中的實際實現(xiàn)一致。
專注于適合策略執(zhí)行或訓練的機器人仿真。為此,在測試生成過程中促使任務(wù)由oracle agent完成。提示包括調(diào)用模擬器中oracle agent的API信息以及用于環(huán)境觀察和行動的簡化執(zhí)行循環(huán)。oracle agent成功執(zhí)行的標準十分嚴格,但也非常有價值,要求代碼無錯誤并在模擬器的物理約束內(nèi)指定可實現(xiàn)的目標。盡管另一種替代方法可以只使用單元測試來檢查場景定義的有效性,但我們選擇使用預(yù)言機器人策略進行測試。盡管這種選擇可能會導致更高的生成成本,但它增加了后續(xù)任務(wù)生成成功的可能性。通過使用LLM編寫測試,我們確保預(yù)言行為具有與任務(wù)細節(jié)和場景一致的測試輔助。
實驗
本文的方法旨在提高資產(chǎn)檢索的準確性和任務(wù)仿真的一致性。由于真實到仿真轉(zhuǎn)換這一特定領(lǐng)域缺乏基準數(shù)據(jù),引入了一項新的實驗,靈感源自桌面機器人任務(wù)。捕獲了10個不同的場景,每個場景平均包含15個物體。這些物體來自HOPE數(shù)據(jù)集,包括常見的雜貨物品,其3D模型適合用于物理仿真。同時,還添加了彩色立方體和容器。對于每個場景,使用ZED 2相機錄制了一幅1080p的RGB圖像以及點云數(shù)據(jù)。每個目標都有其對應(yīng)的掩碼、2D和3D邊界框以及文本描述。圖3展示了我們數(shù)據(jù)集中的示例?;诖藬?shù)據(jù)集,對生成適當對應(yīng)關(guān)系的能力進行了詳細評估。實驗表明,使用視覺語言模型(VLM)結(jié)合文本描述能獲得最高的準確性。此外,將GRS的仿真生成能力與先前提出的方法進行了比較,生成結(jié)果的定性分析顯示其在生成用于機器人執(zhí)行的仿真時更高效且性能更優(yōu)。
A. 目標對應(yīng)
本文設(shè)計了一個目標對應(yīng)實驗來評估模型在捕獲場景中檢索正確資產(chǎn)的能力。對于數(shù)據(jù)集中的每個3D模型,我們生成了三個視圖,通過隨機調(diào)整攝像機位置同時保持焦點在目標上。接著,我們使用VLM基于這些渲染圖像生成詳細的目標描述,描述包含形狀、顏色、品牌或圖案等特征。此外,還為每個裁剪的真實場景圖像生成了VLM生成的文本描述。
這種設(shè)置允許我們評估以下場景:
- 將圖像的文本描述與資產(chǎn)描述匹配(文本);
- 將圖像與資產(chǎn)描述匹配(圖像);
- 將圖像和文本描述與資產(chǎn)描述匹配(本文的方法)。
對于每種方法,分別測試了GPT4o和Claude-3.5-Sonnet。
下表I展示了目標檢索結(jié)果。使用F1分數(shù)作為精度和召回率的平衡指標(更高的分數(shù)表示更好的性能),并對每項任務(wù)進行10次實驗取平均值。每次實驗生成資產(chǎn)描述和文本描述(如果適用)后再進行目標對應(yīng)。GPT4o在所有任務(wù)中表現(xiàn)出更優(yōu)異的性能。
此外,包含了一個基于CLIP嵌入距離的基準方法。將資產(chǎn)圖像嵌入到數(shù)據(jù)庫中,比較每個資產(chǎn)的三張圖像的嵌入平均值與裁剪圖像的嵌入,找出最小CLIP嵌入距離的匹配資產(chǎn)。如果一個真實場景圖像裁剪的CLIP相似度低于0.5,則視為“不是目標”。
本文的方法優(yōu)于基準方法,因為單純基于CLIP嵌入距離匹配資產(chǎn)對于遮擋、物體姿態(tài)和光照條件的變化并不具有魯棒性。進行了Kruskal-Wallis顯著性檢驗,因為數(shù)據(jù)不符合正態(tài)性假設(shè),無法使用ANOVA檢驗。Kruskal-Wallis檢驗發(fā)現(xiàn)任務(wù)類型、模型及其交互作用存在統(tǒng)計顯著性差異(p < 0.05),表明我們的結(jié)果具有統(tǒng)計顯著性差異。
B. 機器人任務(wù)生成
本文設(shè)計了仿真生成實驗來評估GRS在生成可用于機器人策略的有效仿真器方面的能力。仿真任務(wù)基于CLIPort框架,并在GenSim的提示基礎(chǔ)上進行了輕微修改,以指示VLM使用輸入圖像。通過評估oracle策略完成生成任務(wù)的效果來衡量任務(wù)生成系統(tǒng)的表現(xiàn)。具體來說,執(zhí)行GenSim的oracle策略三次,并對這些運行結(jié)果取平均值。
將本文的方法與以下三種對照組進行比較:
- 移除router,僅修復(fù)仿真代碼(無router),
- 移除測試,僅生成一次仿真代碼(無修復(fù)),
- 移除圖像輸入,僅使用LLM生成一次仿真代碼(LLM)。
最后一種對照方法與原始GenSim最為接近。仿真生成僅使用GPT4o,因為其在目標對應(yīng)方面表現(xiàn)出更優(yōu)異的性能。對于每個場景,我們進行了30次生成,并在每次運行中最多允許10次修復(fù)代碼(無論是仿真代碼還是測試代碼)。所有對照組均采用相同的流程,其中無router限制為10次測試修復(fù),本文的方法限制為仿真和測試總計10次修復(fù)。
本文的仿真生成方法使得oracle策略能夠比其他方法獲得更高的獎勵,詳見下表II。
本文報告了oracle策略在所有10個場景中生成的仿真任務(wù)的平均獎勵。由于我們的重點是將這些環(huán)境用于機器人訓練,因此排除了運行時錯誤的情況。所有結(jié)果都進行了歸一化,其中獎勵為1表示完成任務(wù)的所有目標。我們發(fā)現(xiàn),本文的方法生成的仿真對于策略執(zhí)行是有效的,且移除測試反饋(無修復(fù)和LLM)顯著降低了策略執(zhí)行的成功率。下圖3展示了我們方法生成的仿真任務(wù)的定性結(jié)果。
此外,還研究了仿真和測試修復(fù)的行為,以理解router的工作方式。router平均每個任務(wù)執(zhí)行0.52次測試修復(fù),表明最初生成的測試需要頻繁修復(fù)。此外,與無router相比,router平均減少了1.08次仿真修復(fù)(5.81次對6.89次),表明router在進行更改時更高效,每次生成凈減少了0.56次總更改。這支持了router能夠更高效地自動生成仿真的觀點。
C. 代碼生成定性分析
為深入理解GRS的行為,對router的行為以及在修復(fù)仿真和測試時所做的更改進行定性分析。
Router:router展示了在測試反饋過于稀疏、難以診斷oracle失敗原因時,優(yōu)先更改測試的有用行為。當錯誤發(fā)生時,router能夠適當?shù)亟馕鲥e誤反饋,以識別出需要修復(fù)測試的情況,如缺少導入或測試錯誤地使用仿真目標(例如,假設(shè)一個目標是列表而實際不是)。這種能力使router能夠更有效地處理測試中遇到的常見錯誤。
仿真修復(fù):仿真任務(wù)有時過于復(fù)雜,oracle無法成功執(zhí)行。為了解決這一問題,我們觀察到以下行為:1)通過減少使用的目標數(shù)量來簡化仿真(從而簡化任務(wù)目標),2)增加oracle在結(jié)束嘗試前可執(zhí)行的最大步數(shù),或3)擴大放置目標的目標區(qū)域尺寸。這些修復(fù)通常是針對測試過程中oracle只取得部分成功的情況。這表明我們的系統(tǒng)能夠正確解析細微的測試結(jié)果,即便沒有明確的錯誤提示,僅報告oracle的獎勵較低。然而,這有時會導致偏離預(yù)期結(jié)果,例如移除預(yù)設(shè)的目標空間位置,只保留資產(chǎn)。
測試修復(fù):在測試執(zhí)行過程中,即使oracle未能完成任務(wù),但沒有產(chǎn)生有意義的錯誤,因而測試修復(fù)會加入關(guān)于oracle執(zhí)行的診斷信息。這些包括關(guān)鍵性能指標的監(jiān)控,例如步數(shù)、中間目標完成情況和獎勵累積,從而在測試過程中提供反饋信號。除此之外,測試修復(fù)還解決了與仿真環(huán)境組件的交互錯誤和目標誤解等基本問題。測試修復(fù)還注重驗證仿真環(huán)境的正確初始化和重置功能,確保目標設(shè)置正確并生成有效的觀測數(shù)據(jù)。值得注意的是,這些改進是在使用通用提示的前提下完成的,旨在指導系統(tǒng)測試oracle的成功,這體現(xiàn)了我們優(yōu)化的測試協(xié)議在不改變核心測試范式的前提下,增強了系統(tǒng)評估的有效性。此外,這一方法有望隨著更好的基礎(chǔ)語言模型的改進而提升,無需對我們的框架做出修改。
常見失敗案例:在實驗中,發(fā)現(xiàn)仿真代碼在1200次生成中大約30次包含了可能無法終止的while循環(huán),例如,在試圖在受限區(qū)域內(nèi)找到有效位置放置資產(chǎn)時無限循環(huán)。這種行為并不總是導致失敗,因為大多數(shù)情況下其行為是正確的。此外,非終止循環(huán)的條件可能導致仿真執(zhí)行無法退出,從而掛起生成過程??梢酝ㄟ^在代碼生成和修復(fù)過程中顯式提示避免使用此類循環(huán)來解決該問題,并鼓勵避免非終止問題,或在基線生成和測試框架中實現(xiàn)超時機制。
在修復(fù)過程中,LLM偶爾會誤判測試失敗的原因,從而編寫新的代碼作為替代方案。在簡單情況下,LLM會編寫幾何操作或其他基礎(chǔ)函數(shù),而不是使用提供的API,例如在四元數(shù)和歐拉角之間轉(zhuǎn)換3D旋轉(zhuǎn)、從概率分布中采樣、反轉(zhuǎn)姿勢等。在少數(shù)情況下,這甚至導致完全重新實現(xiàn)底層獎勵函數(shù)或oracle代理。另一種失敗情況是LLM模擬仿真環(huán)境的創(chuàng)建或關(guān)鍵仿真行為,從而繞過了預(yù)期的行為。我們預(yù)計隨著LLM能力的提升,其錯誤診斷和代碼修復(fù)能力將逐步改進。
D. 場景級擴展
為展示本文方法的靈活性,將生成管道擴展至場景級任務(wù),使用了約15萬個來自O(shè)bjaverse的資產(chǎn)。從單個RGB觀測開始,采用背景估計,擬合一個MLP來估計背景表面SDF,接著應(yīng)用marching cubes算法生成背景網(wǎng)格,流程參考了Dogaru等人的工作。在背景重建完成后,利用GRS的真實到仿真流程,將目標分割與基于視覺-語言模型的目標匹配相結(jié)合,構(gòu)建出3D任務(wù)環(huán)境(詳見下圖4)。這一工作是生成更復(fù)雜場景級任務(wù)的初步步驟,未來工作將繼續(xù)探索這一方向。
結(jié)論
本文提出了GRS,一個從真實世界觀測中生成機器人仿真任務(wù)的新系統(tǒng)。本文的方法無縫整合了場景理解、資產(chǎn)填充和任務(wù)生成,解決了真實到仿真的挑戰(zhàn)。引入了一個魯棒的場景獲取系統(tǒng),利用了SAM2和視覺-語言模型,集成了基于LLM的任務(wù)生成框架,并提出了采用雙重生成過程和router系統(tǒng)的創(chuàng)新迭代技術(shù)。實驗結(jié)果顯示,GRS能夠從單個RGB-D觀測中實現(xiàn)準確的真實到仿真轉(zhuǎn)換,展示了VLMs在彌合真實場景與仿真任務(wù)之間差距方面的強大能力。還展示了該方法在更廣泛且多樣的資產(chǎn)庫中的潛在應(yīng)用。
本研究的影響超越了機器人仿真領(lǐng)域,可能加速機器人操作、虛擬與增強現(xiàn)實、自主系統(tǒng)訓練和計算機視覺方面的研究與開發(fā)。盡管當前的實現(xiàn)效果良好,未來的工作可以著重于處理更復(fù)雜的場景、提升資產(chǎn)匹配的可擴展性、集成基于物理的推理,以及探索遷移學習技術(shù)。隨著我們不斷改進和擴展該方法,預(yù)期GRS將在彌合真實世界觀測與仿真環(huán)境之間的差距方面發(fā)揮重要作用,最終推動機器人系統(tǒng)的能力和適應(yīng)性進一步提升。
本文轉(zhuǎn)自AI生成未來 ,作者:AI生成未來
