• <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • 內容創建/渲染

    使用 Meshtron 大規模生成高保真 3D 網格

    網格是 3D 資產最重要且應用最廣泛的表示形式之一。它們是電影、設計和游戲行業的默認標準,幾乎所有 3D 軟件和圖形硬件都原生支持它們。

    3D 網格 可視為多邊形面的集合,通常由三角形或四邊形組成。

    網格的一個重要屬性是拓撲 ,它是指這些多邊形面的組織結構,這些多邊形面離散于 3D 表面。藝術家創建的網格通常具有信息量大且組織良好的拓撲結構,這些拓撲結構與物體的底層結構高度一致。

    視頻 1、Meshtron 概述

    擁有藝術家般的拓撲對于編輯、紋理、動畫和高效渲染至關重要。然而,由藝術家手動創建這些網格是一項勞動密集型任務,需要大量的 3D 建模時間和專業知識。

    可以通過算法從其他 3D 表征中提取網格。在典型的文本到 3D 或圖像到 3D 生成系統中,神經生成器生成神經場,然后使用 Marching Cubes [ FlexiCubes (NVIDIA) NMC DiffMC ] 或 Marching Tetrahedra【 DMTet (NVIDIA)】等算法將神經場轉換為網格。

    遺憾的是,這些手動設計的算法會生成不具有類似藝術家拓撲的密集網格,從而影響這些方法的質量和實用性。

    A diagram shows that hand-designed algorithms like Marching Tetrahedra and Marching Cubes produce dense meshes that lack adaptivity. This results in meshes with missing details, bumpy geometry, and uninformative tessellation. Meshtron, as a data-driven algorithm, produces artist-like topology with great geometric detail, even at a lower face count.

    圖 1、網格比較

    新興的工作線使用機器學習算法從現有的藝術家創建的網格中學習,以數據驅動的方式生成網格。這些工作展示了巨大的潛力,但在可擴展性方面受到限制,處理多達 1.6 K 個面部的最佳方法:

    與之形成鮮明對比的是,一個精致的 3D 物體通常需要 10K 多個面才能進行準確建模。我們的調查顯示,藝術家創建的網格的人臉中值通常為 10K,平均值為 32K。

    Meshtron 提供了一種簡單且可擴展的數據驅動型解決方案,可在 1024 級坐標分辨率下生成復雜的藝術家式網格,網格面高達 64K。與現有方法相比,這增加了一個數量級,坐標分辨率提高了 8 倍。

    A diagram shows previous works generate meshes with limited face counts at a low, 128-level spatial resolution and Meshtron meshes with controllable face counts of up to 64K at a higher, 1024-level spatial resolution. Compared to previous works, Meshtron produces better quality meshes at similar face counts, while being capable of generating much more sophisticated meshes.

    圖 2、之前低分辨率的低多邊形網格與可控制人臉計數和高分辨率的 Meshtron 生成網格的比較

    網格是一個令牌序列?

    Meshtron 是一種生成網格標記的自回歸模型。它的工作原理與 GPT 等自回歸語言模型相同。

    網格可以輕松轉換為令牌序列。網格的基本構建塊是三角形面,可以用九個令牌表示:

    • 每個三角形有三個頂點。
    • 每個頂點有三個坐標。
    • 每個坐標都可以量化以獲得離散 token。

    因此,通過按照從下到上的排序順序將這些面部標記鏈接在一起,網格可以以唯一方式表示為標記序列。

     GIF shows that a mesh can be converted to a unique sequence of tokens by sorting the vertices and faces. The obtained sequence has a length of 9 times the face count.
    圖 3、按標記序列呈現網格
    A GIF shows that the Meshtron generates triangles in sorted order, from bottom to top.
    圖 4、從下到上的生成過程

    Meshtron 是一種高效的網格生成器?

    直接生成這些網格令牌的成本很高。具有 32K 個面的網格需要 300K 個令牌。對于典型的自回歸模型,生成速度極慢,訓練成本高昂。

    Meshtron 采用 Hourglass Transformer 架構,通過內部合并 token 來減少序列長度,從而節省計算和內存。更具體地說,該模型由三個階段組成,每個階段將序列長度縮短三倍:

    • 第一階段?:在坐標級別運行,處理每個 token。
    • 第二階段:在頂點級別運行,每個頂點處理一個 token?(3 倍縮減)。
    • 第三步:在人臉級別操作,每個人臉處理一個令牌(9x 減少)。
    • ?
    A GIF shows that Meshtron uses an Hourglass Transformer as its backbone, which internally reduces the token count. This reduces the computing and memory consumption significantly while making the generation process much faster.
    圖 5、沙漏式 Transformer 的實際應用

    與傳統的單階段模型相比,通過將更多層分配給具有更高歸約率的階段,計算和內存成本顯著降低。

    Hourglass 網絡的每個階段都與網格的坐標 – 頂點面語義完美對齊。這不僅提高了建模效率,還能為難以生成的 token 分配更多計算能力。在每個三角形中,第一個頂點最容易生成,而最后一個頂點最難以生成。

    A diagram shows that mesh sequences have inherent periodicity in the difficulty of generating each token. The hourglass model allocates more compute (GFLOPs) to difficult-to-generate tokens (ones with high log perplexity). Vertical lines show the triangle boundaries within the token sequence.

    圖 6、對不同令牌位置的對數困惑度和每個令牌的 GFLOPs

    Meshtron 使用的另一種提高效率的技術是滑動窗口注意力。傳統的 Transformer 模型的上下文長度隨序列長度增長,從而導致計算的二次增長,以及隨著序列的延長內存消耗量的線性增長。這會導致訓練和生成過程中長序列的速度顯著放緩。

    相反,Meshtron 會維護一個包含 8192 個面的固定長度上下文窗口。在訓練期間,網格序列會隨機裁剪到多達 8192 個面。在推理過程中,系統會將之前生成的超過 8192 個面的令牌從 KV 緩存中逐出。滑動窗口技術會導致恒定的內存消耗和恒定的令牌吞吐量,并且不會隨著網格大小的增長而減慢。

    借助這些技術,Meshtron 可在訓練和推理期間將令牌吞吐量提高 2.5 倍,并節省 50% 以上的內存,同時生成質量更好的網格。

    Meshtron 高度可控?

    當前版本的 Meshtron 接受以下控制輸入:

    • 激光點云(Point cloud):確定輸出網格的形狀。
    • Face count :確定 輸出網格的密度。
    • Quad ratio:在 Quad 和三角形曲面細分之間切換。
    • 創意:可調整以生成激光點云中不存在的額外細節。

    由于幾乎所有的 3D 表征都可以轉換為點云,因此 Meshtron 既可以作為獨立的重構器來提高現有網格的質量,也可以與文本轉 3D 或圖像轉 3D 模型一起使用,從頭開始生成藝術家級網格。

    A diagram shows that in the faithful mode, the mesh generated by Meshtron follows closely to the input, reproducing all the details as well as imperfections. In the creative mode, Meshtron attempts to generate extra details and fix the imperfections. The input meshes in this example are generated by a text-to-3D service.

    圖 7、Meshtron 控制創造力

    Meshtron 的控制輸入是通過交叉注意力實現的,具有高度可擴展性,并且可以輕松適應其他類型的輸入,例如圖像、附加控制等。它還通過提供全局上下文支持滑窗式推理。

    A diagram shows that all the conditioning inputs are encoded into embeddings using respective encoders. The embeddings are then concatenated and used for controlling mesh generation with cross-attention.

    圖 8、Meshtron 完整模型架構

    結束語?

    Meshtron 是一種自回歸網格生成器,基于 Hourglass 架構并使用滑窗注意力。它利用網格序列的周期性和局部性來大幅提高效率。

    Meshtron 以前所未有的分辨率和保真度水平生成精細、復雜的 3D 物體網格,與專業藝術家創建的網格非常相似。它為動畫、游戲和虛擬環境打開了生成更逼真的精細 3D 資產的大門。

    由于其通用且高度可擴展的架構,我們希望 Meshtron 可以作為未來網格生成研究和應用的參考。

    有關更多信息,請參閱以下資源:

    ?

    ?

    +1

    標簽

    人人超碰97caoporen国产