天天看點

三維點雲的開放世界了解,分類、檢索、字幕和圖像生成樣樣行

作者:機器之心Pro

機器之心專欄

機器之心編輯部

OpenShape 讓三維形狀的開放世界了解成為可能。

輸入一把搖椅和一匹馬的三維形狀,能得到什麼?

三維點雲的開放世界了解,分類、檢索、字幕和圖像生成樣樣行

木馬和坐在椅子上的牛仔!

三維點雲的開放世界了解,分類、檢索、字幕和圖像生成樣樣行

木推車加馬?得到馬車和電動馬;香蕉加帆船?得到香蕉帆船;雞蛋加躺椅?得到雞蛋椅。

三維點雲的開放世界了解,分類、檢索、字幕和圖像生成樣樣行

來自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。

繼續閱讀