三維點云的開放世界理解,分類、檢索、字幕和圖像生成樣樣行
輸入一把搖椅和一匹馬的三維形狀,能得到什么?
木推車加馬?得到馬車和電動馬;香蕉加帆船?得到香蕉帆船;雞蛋加躺椅?得到雞蛋椅。
來自UCSD、上海交大、高通團隊的研究者提出最新三維表示模型OpenShape,讓三維形狀的開放世界理解成為可能。
- 論文地址:https://arxiv.org/pdf/2305.10764.pdf
- 項目主頁:https://colin97.github.io/OpenShape/
- 交互demo: https://huggingface.co/spaces/OpenShape/openshape-demo
- 代碼地址:https://github.com/Colin97/OpenShape_code
通過在多模態數據(點云 - 文本 - 圖像)上學習三維點云的原生編碼器,OpenShape 構建了一個三維形狀的表示空間,并與 CLIP 的文本和圖像空間進行了對齊。得益于大規模、多樣的三維預訓練,OpenShape 首次實現三維形狀的開放世界理解,支持零樣本三維形狀分類、多模態三維形狀檢索(文本 / 圖像 / 點云輸入)、三維點云的字幕生成和基于三維點云的圖像生成等跨模態任務。
三維形狀零樣本分類
OpenShape 支持零樣本三維形狀分類。無需額外訓練或微調,OpenShape 在常用的 ModelNet40 基準(包含 40 個常見類別)上達到了 85.3% 的 top1 準確率,超過現有零樣本方法 24 個百分點,并首次實現與部分全監督方法相當的性能。
OpenShape 在 ModelNet40 上的 top3 和 top5 準確率則分別達到了 96.5% 和 98.0%。
與現有方法主要局限于少數常見物體類別不同,OpenShape 能夠對廣泛的開放世界類別進行分類。在 Objaverse-LVIS 基準上(包含 1156 個物體類別),OpenShape 實現了 46.8% 的 top1 準確率,遠超現有零樣本方法最高只有 6.2% 的準確率。這些結果表明 OpenShape 具備有效識別開放世界三維形狀的能力。
多模態三維形狀檢索
通過 OpenShape 的多模態表示,用戶可以對圖像、文本或點云輸入進行三維形狀檢索。研究通過計算輸入表示和三維形狀表示之間的余弦相似度并查找 kNN,來從集成數據集中檢索三維形狀。
圖片輸入的三維形狀檢索
上圖展示了輸入圖片和兩個檢索到的三維形狀。
文本輸入的三維形狀檢索
上圖展示了輸入文本和檢索到的三維形狀。OpenShape 學到了廣泛的視覺和語義概念,從而支持細粒度的子類別(前兩行)和屬性控制(后兩行,如顏色,形狀,風格及其組合)。
三維點云輸入的三維形狀檢索
上圖展示了輸入的三維點云和兩個檢索到的三維形狀。
雙輸入的三維形狀檢索
上圖將兩個三維形狀作為輸入,并使用它們的 OpenShape 表示來檢索同時最接近兩個輸入的三維形狀。檢索到的形狀巧妙地結合了來自兩個輸入形狀的語義和幾何元素。
基于三維形狀的文本和圖像生成
由于 OpenShape 的三維形狀表示與 CLIP 的圖像和文本表示空間進行了對齊,因此它們可以與很多基于 CLIP 的衍生模型進行結合,從而支持各種跨模態應用。
三維點云的字幕生成
通過與現成的圖像字幕模型(ClipCap)結合,OpenShape 實現了三維點云的字幕生成。
基于三維點云的圖像生成
通過與現成的文本到圖像的擴散模型(Stable unCLIP)結合,OpenShape 實現了基于三維點云的圖像生成(支持可選的文本提示)。
更多的基于三維點云的圖像生成示例
訓練細節
基于對比學習的多模態表示對齊:OpenShape 訓練了一個三維原生編碼器,它將三維點云作為輸入,來提取三維形狀的表示。繼之前的工作,研究利用多模態對比學習來與 CLIP 的圖像和文本表示空間進行對齊。與之前的工作不同,OpenShape 旨在學習更通用和可擴展的聯合表示空間。研究的重點主要在于擴大三維表示學習的規模和應對相應的挑戰,從而真正實現開放世界下的三維形狀理解。
集成多個三維形狀數據集:由于訓練數據的規模和多樣性在學習大規模三維形狀表示中起著至關重要的作用,因此研究集成了四個當前最大的公開三維數據集進行訓練。如下圖所示,研究的訓練數據包含了 87.6 萬個訓練形狀。在這四個數據集中,ShapeNetCore、3D-FUTURE 和 ABO 包含經過人工驗證的高質量三維形狀,但僅涵蓋有限數量的形狀和數十個類別。Objaverse 數據集是最近發布的三維數據集,包含顯著更多的三維形狀并涵蓋更多樣的物體類別。然而 Objaverse 中的形狀主要由網絡用戶上傳,未經人工驗證,因此質量參差不齊,分布極不平衡,需要進一步處理。
文本過濾和豐富:研究發現僅在三維形狀和二維圖像之間應用對比學習不足以推動三維形狀和文本空間的對齊,即使在對大規模數據集進行訓練時也是如此。研究推測這是由于 CLIP 的語言和圖像表示空間中固有的領域差距引起的。因此,研究需要顯式地將三維形狀與文本進行對齊。然而來自原始三維數據集的文本標注通常面臨著缺失、錯誤、或內容粗略單一等問題。為此,本文提出了三種策略來對文本進行過濾和豐富,從而提高文本標注的質量:使用 GPT-4 對文本進行過濾、對三維模型的二維渲染圖進行字幕生成和圖像檢索。
研究提出了三種策略來自動過濾和豐富原始數據集中的嘈雜文本。
文本過濾和豐富示例
在每個示例中,左側部分展示了縮略圖、原始形狀名稱和 GPT-4 的過濾結果。右上部分展示來來自兩個字幕模型的圖像字幕,而右下部分顯示檢索到的圖像及其相應的文本。
擴大三維骨干網絡。由于先前關于三維點云學習的工作主要針對像 ShapeNet 這樣的小規模三維數據集, 這些骨干網絡可能不能直接適用于我們的大規模的三維訓練,需要相應地擴大骨干網絡的規模。研究發現在不同大小的數據集上進行訓練,不同的三維骨干網絡表現出不同的行為和可擴展性。其中基于 Transformer 的 PointBERT 和基于三維卷積的 SparseConv 表現出更強大的性能和可擴展性,因而選擇他們作為三維骨干網絡。
在集成數據集上擴展三維骨干模型的大小時,不同骨干網絡的性能和可擴展性比較。
困難負例挖掘:該研究的集成數據集表現出高度的類別不平衡。一些常見的類別,比如建筑,可能占據了數萬個形狀,而許多其他類別,比如海象和錢包,只有幾十個甚至更少的形狀,代表性不足。因此,當隨機構建批次進行對比學習時,來自兩個容易混淆的類別(例如蘋果和櫻桃)的形狀不太可能出現在同一批次中被對比。為此,本文提出了一種離線的困難負例挖掘策略,以提高訓練效率和性能。
歡迎到 HuggingFace 上嘗試交互 demo。