用高斯濺射技術跨越機器人模擬與現實的鴻溝:SplatSim 框架解析

在機器人領域,讓機器人在現實世界中精準執行任務是大家一直追求的目標。可模擬環境和現實世界之間存在著不小的差距,特別是基于 RGB 圖像的操作策略,從模擬轉移到現實時總是狀況百出。

今天咱們就來聊聊 SplatSim 框架,看看它是怎么解決這個難題的。

工作鏈接:https://splatsim.github.io/assets/splatsim_paper.pdf

一、研究背景——sim研究的困境

在機器人的發展進程里,把在模擬環境中訓練的控制策略應用到現實世界,也就是 “Sim2Real” 問題,一直是個大挑戰。雖說最近在這方面有了些進展,像機器人能在復雜地形行走、靈活操作物體等,但大多是靠深度、觸覺這些感知方式實現的。為啥 RGB 圖像在機器人學習里不受重視呢?要知道,RGB 圖像能捕捉顏色、紋理這些重要視覺信息,而且獲取方便,和人類的視覺感知很接近,在很多任務里都很關鍵,比如挑水果的時候,看顏色就能知道熟沒熟。

image.png

可問題在于,機器人在模擬環境里看到的 RGB 圖像,和現實世界中的差別太大了。這就好比模擬世界是個 “理想國”,現實世界卻是 “真實戰場”,兩個世界的圖像分布完全不同。這使得基于模擬 RGB 圖像訓練的策略,一到現實世界就 “水土不服”,根本沒法正常發揮作用。所以,怎么縮小這個差距,讓機器人能靠 RGB 圖像在現實里好好干活,就成了科研人員急需攻克的難題。

二、SplatSim :用高斯濺射 “改造” 模擬世界

為了讓機器人在現實中能更好地依賴 RGB 圖像執行任務,SplatSim 框架帶來了新的思路。它的核心就是用高斯濺射(Gaussian Splatting)技術來生成超逼真的模擬數據,讓模擬世界更接近現實。

image.png

2.1 高斯濺射技術的神奇之處

高斯濺射是一種很厲害的渲染技術,它用 3D 高斯原語來描繪場景,能把復雜的幾何形狀展現得既高效又逼真。和其他類似技術比起來,它有個很大的優勢,就是結構像點云一樣清晰明確,操作起來特別方便。這種特性讓機器人領域的研究者們看到了希望,不少人開始把它應用到各種機器人任務里。

2.2 SplatSim 框架的具體實現步驟

image.png

  1. 定義問題與坐標框架?在 SplatSim 里,要解決的問題就是用現實場景的高斯濺射表示SrealSreal?,在模擬器(像 PyBullet)里生成超真實的渲染圖像IsimIsim,然后用這些圖像來訓練基于 RGB 的操作策略。為了把現實世界、模擬器和濺射點云之間的關系搞清楚,研究人員定義了好幾個坐標框架。現實世界坐標框架FrealFreal?是基準,模擬器坐標框架FsimFsim?和現實世界機器人框架FrobotFrobot?都和它對齊,而濺射坐標框架FsplatFsplat?表示場景高斯濺射里機器人底座的框架,它們之間的轉換靠特定的矩陣來完成。
  2. 構建機器人濺射模型?想要得到不同關節姿勢下機器人的渲染圖,得經過三步。首先,用迭代最近點(ICP)算法把機器人相關的 3D 高斯和模擬器里的真實點云對齊,算出轉換矩陣TFrobertFsplatTFrobert?Fsplat???,這一步就像是給機器人在模擬世界里找準位置。接著,利用機器人 CAD 模型提供的鏈接邊界框,把 3D 高斯和各個鏈接對應起來,分割出每個鏈接的 3D 高斯SreallSreall?。最后,用機器人的正向運動學,結合 PyBullet 里的正向運動學例程,算出每個鏈接的變換TfklTfkl??,再通過一系列矩陣運算得到 3D 高斯的最終變換,這樣就能渲染出不同姿勢的機器人啦。
  3. 處理物體濺射模型?和機器人渲染類似,物體的 3D 高斯SobjkSobjk?也要用 ICP 算法和模擬的真實點云對齊,得到轉換矩陣TFk?obj,simFk?obj,sialtTFk?obj,sim?Fk?obj,sialt??。根據物體在場景中的位置ptkptk?和方向RtkRtk?,算出物體在原始模擬器框架Fk?obj,simFk?obj,sim?的變換Tfkk?objTfkk?obj?,再通過矩陣運算得到在SrealSreal?框架下的變換,用高斯濺射渲染框架就能渲染出物體在新位置和方向的樣子。
  4. 攻克鉸接物體的分割難題?像平行夾爪這樣的鉸接物體,用普通的邊界框分割可不行,因為它們的鏈接和標準軸對不上。這時候,研究人員訓練了一個基于 K 近鄰(KNN)的分類器,用模擬器點云的真實標簽來訓練。這樣,就能準確判斷對齊后的濺射里每個 3D 高斯屬于哪個鏈接,解決了鉸接物體的分割難題。
  5. 渲染模擬軌跡與訓練策略?有了單個剛體的渲染能力,就可以用它來精確表示模擬軌跡了。把基于狀態的變換和前面提到的方法結合起來,得到用于策略學習的演示數據τGτG??。在訓練策略的時候,用的是擴散策略(Diffusion Policy),這是行為克隆領域很厲害的技術。考慮到模擬和現實環境還是有差異,比如模擬場景沒有陰影,一些柔性部件渲染得不準確,所以在訓練時會加入圖像增強操作,像加高斯噪聲、隨機擦除、調整亮度和對比度等,讓策略更能適應現實世界。

image.png

三、實驗:SplatSim 真的靠譜嗎?

為了驗證 SplatSim 框架的效果,研究人員做了一系列實驗,主要從數據收集、零樣本策略部署、渲染量化和增強效果這幾個方面來測試。

3.1 數據收集

在數據收集環節,現實世界里每個任務的演示數據都得靠人工收集,又費時間又費精力。但在模擬器里就方便多了,用基于特權信息的運動規劃器,能自動生成數據。像有些任務,在現實世界收集數據要 20.5 小時,在模擬器里只要 3 小時,效率大大提高,而且數據質量還不錯。這充分體現了模擬器在數據收集方面的強大優勢,能為后續的訓練提供充足的數據支持。

3.2 零樣本策略部署

研究人員在四個和接觸相關的現實任務里測試了零樣本策略部署的效果,用任務成功率作為主要衡量指標。結果顯示,SplatSim 框架訓練的策略,零樣本從模擬到現實的轉移平均成功率能達到 86.25%,雖然比直接用真實數據訓練的策略(97.5%)低了一些,但已經很厲害了。在 T - Push 任務里,機器人不用在現實數據上微調,就能在推物體的時候達到 90% 的成功率;Pick - Up - Apple 任務里,抓蘋果的成功率也有 95%;Orange on Plate 任務和 Assembly 任務同樣表現不錯,說明這個框架真的能讓模擬訓練的策略在現實世界發揮作用。

image.png

3.3 量化機器人渲染

為了看看渲染出來的機器人圖像有多逼真,研究人員對比了不同關節配置下的渲染圖像和現實世界圖像,用峰值信噪比(PSNR)和結構相似性指數(SSIM)這兩個指標來衡量。結果發現,即使關節配置變來變去,渲染圖像的平均 PSNR 能達到 22.62,SSIM 是 0.7845,這表明模擬圖像在視覺質量上和現實世界的 RGB 觀測很接近,生成的模擬數據確實能反映現實場景的特征。

3.4 增強的作用

點擊用高斯濺射技術跨越機器人模擬與現實的鴻溝:SplatSim 框架解析查看全文

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

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

相關文章

【自然語言處理與大模型】如何知道自己部署的模型的最大并行訪問數呢?

當你自己在服務器上部署好一個模型后,使用場景會有兩種。第一種就是你自己去玩,結合自有的數據做RAG等等,這種情況下一般是不會考慮并發的問題。第二種是將部署好的服務給到別人來使用,這時候就必須知道我的服務到底支持多大的訪問…

[FPGA基礎] UART篇

Xilinx FPGA UART 硬件接口使用指南 1. 引言 UART (通用異步收發器) 是一種廣泛使用的串行通信接口,因其簡單、可靠和易于實現而成為 Xilinx FPGA 設計中的常見硬件接口。UART 用于在 FPGA 與外部設備(如 PC、微控制器、傳感器等)之間進行數…

【Netty4核心原理】【全系列文章目錄】

文章目錄 一、前言二、目錄 一、前言 本系列雖說本意是作為 《Netty4 核心原理》一書的讀書筆記,但在實際閱讀記錄過程中加入了大量個人閱讀的理解和內容,因此對書中內容存在大量刪改。 本系列內容基于 Netty 4.1.73.Final 版本,如下&#xf…

用 PyTorch 和numpy分別實現簡單的 CNN 二分類器

作業用到的知識: 1.Pytorch: 1. nn.Conv2d(二維卷積層) 作用: 對輸入的多通道二位數據(如圖像)進行特征提取,通過滑動卷積核計算局部區域的加權和,生成新的特征圖。 關鍵參數&a…

使用n8n構建自動化工作流:從數據庫查詢到郵件通知的使用指南

n8n是一款強大的開源工作流自動化工具,可以幫助你將各種服務和應用程序連接起來,創建復雜的自動化流程。下面我將詳細介紹一個實用的n8n用例:從MySQL數據庫查詢數據并發送郵件通知,包括使用場景、搭建步驟和節點部署方法。 使用場…

Vscode已經打開的python項目,如何使用已經建立的虛擬環境

在 VS Code 中使用已創建的 Conda/Mamba 虛擬環境 pe100,只需以下幾步: 步驟 1:確保虛擬環境已存在 在終端運行以下命令,檢查 pe100 環境是否已正確創建: conda activate pe100 python --version # 應顯示 Python 3…

Volatility工具學習

背景 VMware虛擬機系統hang死,手動重啟無法觸發系統panic,從而不能觸發kdump產生vmcore文件進行原因分析;此種情況下需要手動生成虛擬機內存快照,進而利用Volatility工具分析系統hang死的具體原因。 配置 使用VMware創建虛擬機…

學習筆記(C++篇)--- Day 4

目錄 1.賦值運算符重載 1.1 運算符重載 1.2 賦值運算符重載 1.3 日期類實現 1.賦值運算符重載 1.1 運算符重載 ①當運算符被用于類類型的對象時,C語言允許我們通過通過運算符重載的形式指定新的含義。C規定類類型對象使用運算符時,必須轉換成調用對…

Docker 快速入門教程

1. Docker 基本概念 鏡像(Image): 只讀模板,包含創建容器的指令 容器(Container): 鏡像的運行實例 Dockerfile: 用于構建鏡像的文本文件 倉庫(Repository): 存放鏡像的地方(如Docker Hub) 2. 安裝Docker 根據你的操作系統選擇安裝方式:…

vue項目中使用tinymce富文本編輯器

vue使用tinymce 文章目錄 vue使用tinymcetinymce富文本編輯器在這里插入圖片描述 一、本文要實現二、使用步驟1.安裝tinymce2.tinymce組件新建3. 在store添加商品詳情的狀態管理4. tinymce組件的引入 tinymce富文本編輯器 提示:以下是本篇文章正文內容,下…

簡單適配torch_npu不支持的ATen算子

簡單適配torch_npu不支持的ATen算子 一、背景說明1.1 PyTorch擴展機制1.2 核心概念二、實現步驟詳解2.1 實現前向、反向傳播算子2.2 編譯生成動態庫2.3 測試驗證程序三、關鍵點解析3.1 設計注意事項3.2 性能優化方向四、驗證結果一、背景說明 1.1 PyTorch擴展機制 PrivateUse1…

同樣的html標記,不同語言的文本,顯示的字體和粗細會不一樣嗎

同樣的 HTML 標記,在不同語言的文本下,顯示出來的字體和粗細確實可能會不一樣,原因如下: 🌍 不同語言默認字體不同 瀏覽器字體回退機制 CSS 里寫的字體如果當前系統不支持,就會回退到下一個,比如…

基于 Spring Boot 瑞吉外賣系統開發(六)

基于 Spring Boot 瑞吉外賣系統開發(六) 菜品列表 在系統管理端首頁,單擊左側菜單欄中的“菜品管理”,會在右側打開菜品管理頁面。 請求URL/dish/page,請求方法GET,請求參數page,pageSize。 該菜品列表…

計算機視覺與深度學習 | TensorFlow基本概念與應用場景:MNIST 手寫數字識別(附代碼)

TensorFlow 基本概念 TensorFlow 是一個開源的機器學習框架,由 Google 開發,核心概念包括: 張量(Tensor):多維數組,是數據的基本單位。計算圖(Graph):早期版本中用于描述數據流和計算過程,2.x 默認啟用即時執行(Eager Execution),兼顧靈活性和性能。層(Layers)…

vue+django+LSTM微博輿情分析系統 | 深度學習 | 食品安全分析

文章結尾部分有CSDN官方提供的學長 聯系方式名片 文章結尾部分有CSDN官方提供的學長 聯系方式名片 關注B站,有好處! 編號: D031 LSTM 架構:vuedjangoLSTMMySQL 功能: 微博信息爬取、情感分析、基于負面消極內容輿情分析…

RHCE第三次作業 搭建dns的正向解析服務器

server為服務器 client為客戶端 設置主配置文件 在server下: [rootServer ~]#vim /etc/named.conf #進入到配置頁面,并修改 設置區域文件 [rootServer ~]# vim /etc/named.rfc1912.zones 設置域名解析文件 [rootServer named]# cd /var/named…

Windows 同步技術-一次性初始化

組件通常設計為在首次調用時執行初始化任務,而不是加載它們時。 一次性初始化函數可確保此初始化僅發生一次,即使多個線程可能嘗試初始化也是如此。 Windows Server 2003 和 Windows XP: 應用程序必須使用 互鎖函數 或其他同步機制提供自己的…

OpenCV 中的角點檢測方法詳解

文章目錄 引言1. Harris角點檢測原理1.1 什么是角點?1.2 Harris算法的核心思想1.3 角點、邊緣和平坦區域的區分 2. OpenCV實現Harris角點檢測3. 總結 引言 在計算機視覺和圖像處理中,特征點檢測(Feature Detection)是一個關鍵任務…

全面介紹AVFilter 的添加和使用

author: hjjdebug date: 2025年 04月 22日 星期二 13:48:19 CST description: 全面介紹AVFilter 的添加和使用 文章目錄 1.兩個重要的編碼思想1. 寫代碼不再是我們調用別人,而是別人調用我們!2. 面向對象的編程方法. 2. AVFilter 開發流程2.1 編寫AVFilter 文件2.1.…

生物計算安全攻防戰:從DNA存儲破譯到碳基芯片防御體系重構

隨著碳基生物芯片突破馮諾依曼架構限制,DNA數據存儲密度達到1EB/克量級,合成生物學與信息技術的融合正引發新一輪安全革命。本文深入解析碳基芯片逆向工程路徑,揭示酶驅動DNA數據解碼的技術突破,預警合成生物回路潛在的數據泄露風…