比LERF提速199倍!清華哈佛發(fā)布LangSplat:三維語義高斯?jié)姙R | CVPR 2024 Highlight
人類生活在一個(gè)三維世界中,并通過文本語言描述三維場(chǎng)景,構(gòu)建三維語義場(chǎng)以支持在三維空間中的開放文本查詢最近越來越受到關(guān)注。
最近,來自清華大學(xué)和哈佛大學(xué)的研究人員共同提出了LangSplat,該方法結(jié)合三維高斯?jié)姙R技術(shù)重建三維語義場(chǎng),能夠?qū)崿F(xiàn)準(zhǔn)確高效的開放文本查詢。現(xiàn)有方法在NeRF的基礎(chǔ)上嵌入CLIP語義特征,LangSplat則通過結(jié)合三維高斯?jié)姙R,在每個(gè)高斯點(diǎn)上編碼了從CLIP提取的語義特征。
Project Page: https://langsplat.github.io/
Paper: https://arxiv.org/pdf/2312.16084.pdf
Video: https://youtu.be/K_9BBS1ODAc?si=gfo5TrLK-htyWyuT
Code: https://github.com/minghanqin/LangSplat
采用tile-based的三維高斯?jié)姙R技術(shù)來渲染語義特征,從而避免了NeRF中計(jì)算成本高昂的渲染過程。
LangSplat首先訓(xùn)練特定場(chǎng)景下的語義自編碼器,然后在場(chǎng)景特定的低維latent space上學(xué)習(xí)語義特征,而不是直接學(xué)習(xí)高維的CLIP語義特征,從而降低了計(jì)算量?,F(xiàn)有基于NeRF的方法的三維語義場(chǎng)比較模糊,無法清晰地區(qū)分目標(biāo)的邊界。
本文深入研究了這一問題,提出使用SAM學(xué)習(xí)多層次語義,在不引入DINO特征的情況下獲得了更準(zhǔn)確的語義場(chǎng)。廣泛的實(shí)驗(yàn)結(jié)果表明,LangSplat在開放文本目標(biāo)定位和語義分割任務(wù)上的性能顯著超過了之前的SOTA方法LERF。
值得注意的是,LangSplat在1440×1080分辨率的圖像上,查詢速度比LERF快了199倍。
在3D場(chǎng)景中進(jìn)行開放文本查詢對(duì)于機(jī)器人導(dǎo)航、3D編輯和增強(qiáng)現(xiàn)實(shí)等應(yīng)用非常重要。目前的方法,例如LERF在神經(jīng)輻射場(chǎng)中嵌入CLIP語義特征,受到速度和準(zhǔn)確性的限制。
本文提出的方法LangSplat顯著提高了效率和準(zhǔn)確性,為落地應(yīng)用提供了一種有前景的方案。
該工作目前在X(Twitter)上受到廣泛關(guān)注。被清華大學(xué)官方賬號(hào)以及AK轉(zhuǎn)載,論文視頻累計(jì)瀏覽量超過100,000,論文代碼已開源。
方法論
層次語義學(xué)習(xí):LangSplat利用Segment Anything Model(SAM)學(xué)習(xí)層次語義,解決了三維語義場(chǎng)的邊界模糊問題。
3D語義高斯?jié)姙R:LangSplat引入了一種新的技術(shù),即3D高斯?jié)姙R,它使用包含語義特征嵌入的3D高斯來表示3D場(chǎng)景。這種方法比NeRF-based的方法渲染過程更快。
特定場(chǎng)景的語義自編碼器:為了緩解高維語義特征嵌入導(dǎo)致的內(nèi)存out of memory問題,LangSplat構(gòu)建特定場(chǎng)景的語義自編碼器將這些文本語義特征降維。
層次語義學(xué)習(xí)
在本文中,我們利用SAM來獲得實(shí)例級(jí)的精確對(duì)象掩碼,然后用這些掩碼對(duì)應(yīng)的圖像區(qū)域提取像素對(duì)齊的特征。我們還明確地建模了SAM定義的語義層次,以解決點(diǎn)模糊性問題。
具體來說,我們將一個(gè)32 × 32點(diǎn)提示的常規(guī)網(wǎng)格輸入SAM,以獲得三個(gè)不同語義層次下的掩碼:分別代表子部分、部分和整體層次的掩碼。
然后基于SAM預(yù)測(cè)的IoU分值、穩(wěn)定性分值和掩碼之間的重疊率,為每一組掩碼去除冗余的掩碼。每個(gè)過濾后的掩碼集合獨(dú)立地根據(jù)其各自的語義層次做全圖分割,從而得到三個(gè)分割圖:。
這些分割圖準(zhǔn)確地勾勒出對(duì)象在其層次結(jié)構(gòu)中的邊界,有效地將場(chǎng)景劃分為語義上有意義的區(qū)域。通過獲得的分割圖,我們繼續(xù)為每個(gè)分割區(qū)域提取CLIP特征。
數(shù)學(xué)上,得到的像素對(duì)齊的語義嵌入是:
如此,從三維語義場(chǎng)景渲染的每個(gè)像素都具有與其精確語義上下文相匹配的CLIP特征。這種匹配減少了模糊性,提高了基于語義的查詢的準(zhǔn)確性。
此外,由于我們?cè)凇刚w」、「部分」和「子部分」層次上都有不同的分割圖,我們可以直接在這些預(yù)定義的尺度上查詢?nèi)S語義場(chǎng)。這消除了在多個(gè)絕對(duì)尺度上進(jìn)行密集搜索的需要,使查詢過程更加高效。
3D語義高斯?jié)姙R
在一組2D圖像上獲得語義嵌入后,我們可以通過建模3D點(diǎn)和2D像素之間的關(guān)系來學(xué)習(xí)一個(gè)3D語義場(chǎng)。
大多數(shù)現(xiàn)有方法使用NeRFs進(jìn)行3D建模,但它們面臨著耗時(shí)的渲染過程。為了解決這個(gè)問題,我們提出了基于3D高斯散射的3D語義場(chǎng)建模方法。
這種3D高斯散射方法明確地將3D場(chǎng)景表示為各向異性的3D高斯分布的集合,每個(gè)高斯分布 由均值和協(xié)方差矩陣
描述:
3D高斯投影到2D圖像平面上后,用基于tile的光柵化策略進(jìn)行渲染:
其中,ci是第 i 個(gè)高斯的顏色,N 表示瓦片中的高斯數(shù)量, 是在像素 v 處渲染的顏色, 。
這里oi是第 i 個(gè)高斯的不透明度, 代表投影到二維上的第 i 個(gè)高斯的函數(shù)。
在本文中,我們提出了3D語義高斯,為每個(gè)高斯增加三個(gè)語義嵌入 。
這些嵌入源自CLIP特征,捕捉了SAM提供的層次語義。增強(qiáng)后的高斯被命名為3D語義高斯。并采用基于tile的光柵化器以保持渲染效率:
其中, 代表在像素v處以語義層次l渲染的語義嵌入。通過直接將語義信息引入高斯中,我們使三維語義場(chǎng)能夠響應(yīng)基于文本的查詢。
特定場(chǎng)景的語義自編碼器
作為一種顯式建模方法,表征一個(gè)復(fù)雜場(chǎng)景可能需要數(shù)百萬個(gè)3D點(diǎn)。直接在高維的CLIP潛空間直接學(xué)習(xí)高斯的語義特征會(huì)顯著增加內(nèi)存消耗,容易導(dǎo)致「內(nèi)存不足」的問題。
為降低內(nèi)存消耗并提高效率,我們引入了基于場(chǎng)景的語義自編碼器,將場(chǎng)景中的CLIP嵌入映射到低維潛在空間。
CLIP模型是通過4億對(duì)(圖像,文本)訓(xùn)練的,其D維潛在空間可能非常緊湊。然而,我們?cè)谶@里訓(xùn)練的語義場(chǎng)Φ是特定于場(chǎng)景的,這意味著我們可以利用場(chǎng)景先驗(yàn)知識(shí)壓縮CLIP特征。
事實(shí)上,對(duì)于每個(gè)輸入圖像,我們將獲得由SAM分割的數(shù)百個(gè)掩碼,這顯著少于CLIP訓(xùn)練中使用的圖像數(shù)量。因此,場(chǎng)景中的所有分割區(qū)域在CLIP潛在空間中稀疏分布,使我們能夠通過基于場(chǎng)景的自編碼器進(jìn)一步壓縮這些CLIP特征。
實(shí)驗(yàn)
實(shí)驗(yàn)設(shè)置:實(shí)驗(yàn)測(cè)試了該方法在開放詞匯3D對(duì)象定位和語義分割任務(wù)上的性能,使用的數(shù)據(jù)集包括LERF和3D-OVS。
結(jié)果:LangSplat顯著優(yōu)于先前的最先進(jìn)方法。特別是,它在1440×1080分辨率下比LERF快199倍,顯示出在速度和效率上的顯著提高。
可視化和消融研究:論文包括了詳細(xì)的可視化和消融研究,展示了LangSplat各組成部分的有效性。
貢獻(xiàn)
1. 通過引入帶有語義特征的3D高斯?jié)姙R來進(jìn)行三維場(chǎng)景感知。
2. 與以前的方法相比,實(shí)現(xiàn)了顯著的速度提升,使其適合實(shí)時(shí)應(yīng)用。
3. 通過采用層次語義和新的渲染技術(shù),LangSplat提高了3D語義場(chǎng)的精確度。
4. 通過使用場(chǎng)景特定的自動(dòng)編碼器,減少了處理高維數(shù)據(jù)所需的計(jì)算和內(nèi)存開銷。