這邊 AI 畫畫的熱度還沒下去,OpenAI 已經連 "3D 版 "AI 畫畫都搞出來了。
沒錯,用文字生成 3D 點雲模型,還是超——快的那種!
隻需要一張英偉達 V100 卡,兩分鐘就能生成一個 3D 小物件,比谷歌的文生 3D 模型 DreamFusion快了接近 600 倍 (但它們生成的不是同一種 3D 模型)。
項目代碼開源後在網上爆火,英偉達 AI 科學家 Jim Fan 甚至大膽預測:
2023 年會是 3D 模型爆發年,可以期待一波 3D 版 Stable Diffusion 和 MidJourney 了。
現在 Point · E 模型的 Demo 已經在 Hugging Face 上放出,想要玩的小夥伴們可以上手試試 ~
如何快速生成 3D 點雲模型?
顧名思義,Point · E 并非一個直接生成 3D 模型的 AI。
相比谷歌 DreamFusion 直接生成能用于渲染的 3D 網格圖,它生成的是一個3D 點雲模型(Point Cloud),至于 Point · E 的E則是效率(efficiency)的意思。
據作者介紹,之所以選擇從 3D 點雲模型突破,是因為目前 AI 生成 3D 模型的一大缺陷就是速度慢,用 GPU 渲染需要好幾小時才能生成結果。相比之下,2D 圖像生成卻隻需要幾秒鐘。
因此,加速 3D 模型生成的效率同樣非常重要,在此基礎上 Point · E 應運而生。
在文本生成 3D 點雲上,Point · E 并非 " 一步到位 ",而是将過程分為了三步。
首先,如紅色框展示的,模型會先基于文本生成一個 " 預覽版視圖 "。
這一步基于 OpenAI 去年發布的 30 億模型GLIDE微調實現,用它生成的視圖還不具備 "3D 特性 ",相當于隻是給了個參考範例。
随後,如黃色框所展示的,Point · E 會采用一個擴散模型,根據 " 預覽版視圖 " 生成一個粗糙的 3D 點雲模型(這裡的粗糙指分辨率較低,隻有 1024 個點)。
具體架構如下:
最後,再用一個更小的擴散模型,采用上采樣(upsample)将獲得的 3D 點雲模型進一步細化,得到最終的精細版 3D 點雲模型(一共有 4096 個點)。
具體的訓練過程,用了一個包含數百萬個 3D 模型的數據集,其中每個模型都被處理成渲染視圖、文本描述和 3D 點雲三部分。
用這種方法生成的 3D 點雲模型,在處理速度上确實快了不少。
比 DreamFusion 快數百倍
先從生成時間來看,無論是 DreamFields、還是 DreamFusion,在生成上都需要以小時為單位計數。
其中 DreamFields 是效果比較好的 AI 文本生成 3D 模型,但生成一個模型幾乎需要 200 個 V100 時(V100 連續運行 200 個小時)。
DreamFusion 是 DreamFields 的進化版,即便如此它也需要 12 個 V100 時。
相比之下,Point · E 的幾個不同大小的模型,基本都以分鐘為單位,在1 分鐘 ~1.5 分鐘内就能完成文本生成 3D 點雲模型。
不過,Point · E 在生成效果上,還确實不如谷歌的 DreamFusion,後者可以直接渲染生成 3D 模型:
相比之下,作為一個文本生成 3D 點雲 AI,Point · E 無法像 DreamFusion 那樣用網格(mesh)直接生成 3D 模型。
在經過渲染前,這些點雲需要先完成預處理,經曆一個網格化的過程,往往這個過程還需要耗費額外的時間:
作者也指出了 Point · E 存在的一些缺點。
一方面,有時候經過預處理,比較稀疏的點雲可能會被忽略(例如下圖中花的莖稈等地方):
另一方面,從預覽圖生成點雲的過程,有時候也會出 bug。例如 AI 看着預覽圖,生成了一個完全不匹配的 3D 點雲效果出來:
△超高版柯基和對稱雪糕筒
即便如此,不少網友認為 AI 生成 3D 模型的未來值得期待:
如果速度再快一點的話,或許就能讓 6 歲的小孩在 iPhone 上自己造元宇宙了(手動狗頭)
試玩地址:
https://huggingface.co/spaces/openai/point-e
論文 & 項目地址:
[ 1 ] https://arxiv.org/abs/2212.08751
[ 2 ] https://github.com/openai/point-e