在這篇文章中,來自清華大學的團隊提出了 EmbodiedSAM,一個實時在線的 3D 分割一切模型。可以直接讀入 RGB-D 流視頻進行 efficient 且 fine-grained 的在線三維實例分割,這也是對團隊之前 CVPR 2024 工作 Online3D 的一個延續(更快、更細!),代碼、數據和模型權重均在 github 開源,歡迎訪問。
論文標題: EmbodiedSAM: Online Segment Any 3D Thing in Real Time 論文地址: https://arxiv.org/pdf/2408.11811 代碼倉庫: https://github.com/xuxw98/ESAM 項目主頁: https://xuxw98.github.io/ESAM
一、簡介
EmbodiedSAM 的出發點來自于一個思考:具身智能需要什么形式的場景感知?考慮到最為普遍的具身場景是機器人在未知環境中同時完成對場景的探索和感知,我們認為一個好的具身感知模型應該具有四點性質:
在線。不同于先重建再感知,在線意味著機器人一邊讀入 RGB-D 視頻流,一邊就要進行場景感知,在每一時刻對未來是不可知的;
實時。一個快速的感知模型才能讓決策規劃的模塊沒有負擔地進行調用,每秒鐘至少需要能夠處理上十幀的數據(當前水平 10+FPS,未來目標 30+FPS);
細粒度。希望能將場景中一切物體進行分割,包括各種小目標(未來可以考慮進一步細化到物體的 part);
泛化性。一個模型即可以處理多樣化的場景,甚至可以適配不同型號的傳感器,即不同內參的 RGB-D 相機。這是一個美好的想法,但目前 3D 數據的質量和規模還難以滿足僅通過 3D 訓練出具備上述能力的模型。
如何解決這個問題?目前一個常用的思路是充分利用現有的高質量 2D 視覺基礎模型,目前已經有很多又快又好的模型可以以很快的速度實現細粒度的 2D 分割,如 FastSAM [1] 等。
目前SAM3D [2,3] 之類的 3D 分割工作通過 2D 基礎模型進行圖像分割,將結果映射到深度圖轉化的點云中,再在三維空間中設計基于點云的合并策略以完成 3D 實例分割。這一套思路僅利用2D模型就可以完成較高細粒度和泛化性的 3D 實例分割,但存在諸多問題:
只能用于離線數據,無法在線處理流視頻;
速度極慢,處理一個場景需要數分鐘甚至數十分鐘的時間;
缺乏 3D 感知能力,僅獨立對每一幀 RGB-D 圖像中的 RGB 信息進行分割,沒有利用深度信息,也沒有利用多視角的幾何關聯。
為此,我們的 EmbodiedSAM 采用先 2D 后 3D 的分割范式,對每一張 RGB 圖像利用高效率的基礎模型進行分割,得到初始的單幀分割結果,將此結果在 3D 空間進行可學習的優化和幀間融合,從而實現實時在線的 3D Segment Anything。
由于分割的任務交給了 2D 模型,我們的 3D 模型只需要充分利用時序和幾何信息對來自 2D 的 mask 進行優化,以及對不同幀的相同物體進行融合,學習難度大大降低,目前的 3D 數據集完全可以滿足需求。
以上是一個簡單的示例 demo(更詳細的視頻可以在我們的項目主頁觀看),和 SAM3D 等離線 3D 分割方法相比,我們的方法可以用于更難的在線任務,且性能大幅提升,速度快將近 20 倍,處理一個完整的室內場景只需要5s左右的時間。
二、方法
下面是我們的整體框架,個人一直覺得方法部分看原文就好,中文解讀更重要的是 motivation 和整體思路,因此這次也是從比較 high-level 的角度介紹一下方法(其實是翻譯太累了)。
EmbodiedSAM 的輸入為已知相機內外參的 RGB-D 視頻流,我們整體分為三個環節,對于每一時刻新讀取的 RGB-D 幀,首先是 Query Lifting 階段,將 2D 基礎模型的分割結果轉換到 3D 空間,并用 query 特征的形式來表示,一個 query 對應一個 2D 模型分割出來的物體。
這種表示形式一方面可以充分將 3D 和時序特征進行融入,另一方面也便于后續的 Mask 優化和幀間融合;之后是 Query Refinement 環節,通過物體 query 之間的交互,以及和場景特征的交互,更新 query 特征,并將 3D 中的分割結果進行更新優化。注意 Query Lifting 和 Query Refinement 操作都只對當前幀的物體進行操作。
最后在 Query Merging 環節中,我們將當前幀分割出的物體與過去的物體進行融合,例如當前幀和之前幀都觀測到了同一把椅子,那它們的全局 instance id 應該相同,這也就是所謂的 instance merge,如果是之前幀沒見過的新物體,那便在全局 instance id 中注冊新物體即可。
2.1 Query Lifting
對于當前時刻新觀測的 RGB-D,我們首先用 2D 基礎模型(VFM)對 RGB 進行分割,并將分割結果映射到深度圖上轉換為點云,從而得到 3D 點云上的分割結果。不同于之前的方法直接對 3D 分割結果進行融合,我們認為僅通過 2D VFM 分割,雖然細粒度和泛化性很強,但對于空間信息的利用不夠充分,容易有較大誤差。
因此我們用一個具有時序能力的 3D 骨干網絡 [4] 提取點云特征(可以挖掘當前幀和過去幀點云的關聯),并將 3D 分割結果視為 superpoint,引導 point-wise 特征池化到 superpoint-wise 特征,從而獲取各物體的 query 表示。
我們額外設計了一個具有幾何感知能力的池化方法(Geo-aware Pooling),對于落入同一個 superpoint 內的點云特征,不僅僅是做 max pooling 或者 average pooling,而是考慮到 superpoint 自身的幾何形狀,給不同空間位置的特征賦予不同的權重。
2.2 Query Refinement
類似于基于 Mask2Former [5] 等基于 Transformer 的實例分割架構,我們也利用若干層 Transformer 對每個物體的 query 信息進行更新優化,在每層Transformer 中,query 特征分別和當前幀點云特征進行 cross-attention,和自身進行 self-attention,并最終和當前幀點云特征交互得到優化后的 3D Mask。
該過程有幾個不同的設計,首先是我們采用了不同層次的點云特征,來獲取最好的 efficiency-accuracy tradeoff。
對于 cross-attention,我們采用 superpoint-wise 特征進行交互,superpoint 數量少但是包含了場景中的所有信息,有利于加速運算。對于 3D Mask 預測,我們則將 query 和 point-wise 特征進行交互,從而得到細粒度的分割結果。
其次,在每層 Transformer 拿到 point-wise 的分割結果后,我們會利用之前 Geo-aware Pooling 的權重將分割結果池化為 superpoint-wise,用于下一層中進行 masked cross-attention(即通過初步的分割結果限定 cross-attention 的作用范圍)。
2.3 Query Merging
完成上述階段后,我們拿到了當前幀優化后的 3D Mask,基于和 3D Mask一一對應的 query 特征,同時我們還有之前幀的全局 3D Mask。這一階段需要將當前幀 3D Mask 與之前的 Mask 進行全局融合,判斷當前幀每個物體是融入到過去已存在的某個物體,還是注冊為新物體。
這一過程也是時間上最大的瓶頸,之前如 SAM3D 等手工融合的方法不僅對超參數較為敏感,而且速度極慢,能否又快又準完成 3D Mask 的全局融合是一個非常有挑戰的問題。
這里得益于我們的 query 表示,我們可以將 3D Mask 的融合問題轉換為 query 融合問題。不同物體的 3D Mask 含點云數量不同,難以高效率并行計算,只能在循環中計算 3D Mask 間的空間距離設置閾值完成融合。
而不同物體的 query 尺寸是相同的,例如之前幀一共有 M 個物體,當前幀一共 N 個物體,由于每個物體都有一一對應的 query,因此這個問題可以通過矩陣乘法直接完成相似度計算!
假設 query 特征維度為 C,我們將 MxC 和 NxC 的特征相乘便得到 MxN 的相似度矩陣,再通過二分圖匹配的方法在該矩陣上得到匹配關系。對于匹配上的物體,我們將其 3D Mask 合并,并將對應的 query 特征加權融合;對于未匹配上的物體則直接注冊為全局新物體。
實際中,僅依靠 query 表示雖然高效,卻仍存在表示能力不夠的問題。我們在不影響速度的前提下設計了三種更細致的判據,通過不同的 MLP head 在 query 上預測出三種表示:1)物體的外接框;2)物體的對比表示;3)物體的語義表示。這三種表示具體含義如下圖所示。
每次進行 3D Mask 的融合后,這三種表示也會進行對應的加權融合,并作為“過去幀”再次與未來的“當前幀”進行高效融合。由于所有操作僅需要矩陣乘法和二分圖匹配,所需時間在 5ms 以內,相比手工融合的策略快數百倍,且性能更強!
三、實驗結果
我們進行了多種設置的實驗。首先是 class-agnostic 3D instance segmentation,對標 SAM3D 等文章的設置。由于這些文章大多數為 zero-shot,而我們需要訓練,為了更公平展示泛化性,我們還進行了 zero-shot 遷移實驗,從 ScanNet200 遷移到 SceneNN 和 3RScan 上。
此外我們還進行了 online 3D instance segmentation 的實驗,對標之前的在線 3D 實例分割工作。在兩種任務上我們都取得了 SOTA 的性能和速度。
我們還分析了 EmbodiedSAM 的推理時間分布,發現速度的瓶頸主要在 3D 特征提取部分,我們的 merging 策略的開銷幾乎可以忽略不記。如何加速 3D 骨干網絡的特征提取是一個非常有價值的問題,也是未來突破 30FPS 的最后阻礙。
更多實驗、可視化和 Demo 視頻可以參考我們的論文以及項目主頁。如有問題歡迎大家在 github 上開 issue 討論。
參考文獻
[1] Zhao, Xu, et al. 'Fast segment anything.'arXiv preprint arXiv:2306.12156(2023).
[2] Yang, Yunhan, et al. 'Sam3d: Segment anything in 3d scenes.'arXiv preprint arXiv:2306.03908(2023).
[3] Yin, Yingda, et al. 'Sai3d: Segment any instance in 3d scenes.'Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2024.
[4] Xu, Xiuwei, et al. 'Memory-based Adapters for Online 3D Scene Perception.'Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2024.
[5] Cheng, Bowen, et al. 'Masked-attention mask transformer for universal image segmentation.'Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2022.
作者:許修為 來源:公眾號【PaperWeekly】
llustration From IconScout By IconScout Store
-The End-
掃碼觀看!
本周上新!
“AI技術流”原創投稿計劃
TechBeat是由將門創投建立的AI學習社區(
www.techbeat.net) 。 社區上線600+期talk視頻,3000+篇技術干貨文章,方向覆蓋CV/NLP/ML/Robotis等;每月定期舉辦頂會及其他線上交流活動,不定期舉辦技術人線下聚會交流活動。我們正在努力成為AI人才喜愛的高質量、知識型交流平臺,希望為AI人才打造更專業的服務和體驗,加速并陪伴其成長。
投稿內容
// 最新技術解讀/系統性知識分享 //
// 前沿資訊解說/心得經歷講述 //
投稿須知
稿件需要為原創文章,并標明作者信息。
我們會選擇部分在深度技術解析及科研心得方向,對用戶啟發更大的文章,做原創性內容獎勵
投稿方式
發送郵件到
melodybai@thejiangmen.com
或添加工作人員微信(yellowsubbj)投稿,溝通投稿詳情;還可以關注“將門創投”公眾號,后臺回復“投稿”二字,獲得投稿說明。
關于我“門”
將門是一家以專注于數智核心科技領域的新型創投機構,也是北京市標桿型孵化器。 公司致力于通過連接技術與商業,發掘和培育具有全球影響力的科技創新企業,推動企業創新發展與產業升級。
將門成立于2015年底,創始團隊由微軟創投在中國的創始團隊原班人馬構建而成,曾為微軟優選和深度孵化了126家創新的技術型創業公司。
如果您是技術領域的初創企業,不僅想獲得投資,還希望獲得一系列持續性、有價值的投后服務,歡迎發送或者推薦項目給我“門”:
bp@thejiangmen.com
點擊右上角,把文章分享到朋友圈
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.