• <menu id="4s8ek"><strong id="4s8ek"></strong></menu>
    <menu id="4s8ek"><tt id="4s8ek"></tt></menu>
  • 科技魔方

    微軟提出FLAG:從稀疏頭顯信號生成AR/VR化身全身姿勢

    即時新聞

    2022年05月10日

      混合現實技術提供了全新的人機交互方式,而人是所有應用的核心。所以,生成逼真的、高保真的人類表示是用戶體驗的關鍵。盡管外部傳感器和攝像頭可以提供相當出色的效果,但僅通過頭顯來生成逼真的人體表現依然是一個具有挑戰性的問題。從HoloLens和Quest等頭顯獲取的相關數據僅限于頭部的位置和方向,以及手的位置和方向。對于整體人身姿勢和運動來說,這是一個非常不完整的信號。

      在《FLAG: Flow-based 3D Avatar Generation from Sparse Observations》的論文中,微軟提出了一種基于稀疏輸入的conditional normalizing flows的新方法。具體來說,團隊通過Flow-based模型學習給定頭部和手部數據的全身姿勢條件分布,而所述模型能夠在3D姿勢分布和基礎分布之間實現可逆映射。然后,模型的可逆性允進一步學習從條件到相同基礎分布中的高likelihood區域的概率映射。研究人員將這種方法命名為Flow-based 3D Avatar Generation(FLAG)。

      這種設計的優點主要包括:首先,與基于VAE的姿勢先驗中的近似likelihood相比,使用Flow-based生成模型可以實現精確的姿勢likelihood計算; 其次,生成模型的可逆性允許計算oracle latent code。在訓練過程中,oracle latent code將充當映射函數的ground truth。這使得能夠學習從觀察到的頭部和手到latent空間的代表性映射,從而令所述方法成為一個強大的預測模型; 最后,當在posed空間或latent空間中進行優化時,使用所述模型作為姿勢先驗,可以在latent空間提供優越的初始化,使得優化非常有效。

      將Normalizing Flows作為likelihood-based生成模型,這為數據的表達概率分布提供了一條途徑。與VAEs不同,VAEs的主要挑戰是找到合適的近似后驗分布, Normalizing Flows只需要定義簡單的基礎分布(先驗分布)和一系列雙射變換。

      對于微軟提出的方法,團隊的任務是在給定稀疏觀測xH和形狀參數β的情況下生成全身姿勢xθ。xθ∈ R3×J表示關節旋轉,作為J身體關節的軸角向量,而xH∈ R9×K代表全局6D關節旋轉。所述信息可以從人體的參數模型中獲得,例如SMPL。

      從xH生成xθ的一種有效方法是,通過Flow-based模型fθ,了解給定觀測xH和β的身體姿勢的分布。盡管這種方法可以有效地提供給定姿勢的likelihood,但生成過程依然不完整。為了生成給定xH和β的新姿勢,需要對latent變量進行采樣。然而,取樣過程完全獨立于觀察結果。盡管依賴latent空間z=0(全零向量)的平均值作為latent code來生成完整姿勢,但研究人員認為存在一個比z=0更好地表示xθ的latent code。

      為了獲得這樣一個latent code,團隊提出的模型估計了normalizing flow based分布中的一個子區域N(µH,∑H),給定xH和β,從中可以對latent變量進行采樣以生成全身姿勢。在測試時,為了生成給定xH和β的全身姿勢,研究人員從zH中抽取一個latent code∼ N(µH,∑H),并將其用作zθ的近似值。zθ是生成全身姿勢的latent code。

      他們使用這個latent估計通過xˆθ=fθ(zH,[xH,β])生成全身姿勢。接下來,定義fθ,并描述如何建模N(µH,∑H)。

      團隊用normalizing flow模型來模擬xθ的分布。模型fθ是以xH和β為條件的conditional RealNVP。這可以通過簡單可逆變換的組合將xθ從姿勢分布映射到基本分布(反之亦然)來實現,每個變換都可以拉伸或收縮其輸入分布。

      盡管研究每個可逆變換在從基本分布中采樣的zθ生成人體姿勢時的貢獻并不直接,但研究人員希望每個連續變換都能為其作用的人體姿勢的傳入分布增加表現力。為了直觀地理解每個變換的作用,他們將人類姿勢如何通過模型中的所有變換形成可視化。

      如圖3a所示,對中間分布的大多數可觀察到的修改都發生在后面的階段,其中,可以觀察到一個類似人類的姿勢正在形成。研究人員認為,這是因為監督的唯一來源是明確指導最后一個轉換塊的GT姿勢。為了簡化訓練并充分利用fθ中的每個變換塊,他們建議在fθ中引入中間監督。

      除了將GT姿勢作為最后一個變換塊的輸入,團隊同時將GT姿勢作為中間變換塊的輸入,就好像它們是子網絡的最后一個塊一樣。這是可能的,因為fθ中的變換不會修改數據維度。因此,鼓勵中間轉換塊產生合理的人體姿勢,并充分發揮其能力。圖3b通過有中間監督和無中間監督的變換來說明姿勢演變。圖2同時表明了中間監督會提高生成姿勢的合理性。

      為了生成一個新的姿勢,給定xH和β,需要從基本分布中采樣一個latent變量z,并使用它生成一個姿勢xˆθ=fθ(z,[xH,β])。在標準的flow-based模型中,盡管可以產生有效的解決方案,但微軟認為所述方法并不構成最佳解決方案,證據是normalizing flow的可逆性。

      由于oracle latent code在訓練期間已知,所以模型能夠將條件(xH和β)映射到基本分布中的一個區域。利用z∗,當通過fθ從基本分布轉換到posed空間時,可以考慮基本分布volume的變化,以及latent code周圍概率質量的變化。團隊用高斯函數對感興趣區域建模,并學習其參數µH和∑H=diag(σH)2。

      給予稀疏的觀察。當只觀察頭和手時,存在多個看似合理的全身姿勢。對于每個看似合理的姿勢,需要知道基本分布中相應的子區域??紤]到所述關鍵性質,團隊設計了一個基于transformer的映射函數。

      團隊提出了一個基于transformer的模型來建模映射函數,并利用了在訓練期間學習身體不同關節之間關系的self-attentino機制。簡而言之,transformer編碼器接收xH和β作為輸入,并估計N(µH,∑H),其中µH訓練為oracle latent code z的良好近似值。

      為了使這種分布能夠代表整個身體,團隊做出了幾種設計選擇,并得出出圖4所示的模型。首先,使用稀疏輸入直接訓練這樣的模型具有挑戰性。為了簡化模型,研究人員定義了一個輔助任務,從transformer編碼器的輸出生成xθ。最初的目標是從全身關節重建xθ,并逐漸降低編碼中的關節可見性(通過掩碼),直到只提供頭部和手。

      為了進一步幫助transformer學習身體的表現,團隊引入了另一個輔助任務,即根據觀察到的關節預測latent關節。這種漸進掩碼和預測(MaskedJointPredictor)讓模型通過對輸入中可用關節的attention(層)來推斷全身表征。為了從transformer編碼器中獲得緊湊的表示,他們在輸出關節上應用池(PoolH),并且只取頭部和手部表示。

      transformer編碼器的輸出是確定性的,不會給出預測姿勢的不確定性估計。因此,微軟建議根據transformer編碼器的輸出(通過ToLatentSpace),對人體姿勢上的分類latent空間進行建模。團隊可以從這個分布中采樣一個離散的latent變量(通過Gumbel Softmax獲得可微性),用定義的輔助任務生成xθ,或者使用整個latent表示來估計N(µH,∑H)(通過LatenregionApproximator)。

      為了有效地模擬人體運動的復雜分布,研究人員需要一個相對較大的latent空間,從而產生大量的latent類別。為了解決這個問題,他們使用2D分類latent空間,如圖4所示。團隊建立了一個G維latent變量模型,每個latent變量負責M modes,使得能夠使用MG one-hot latent code。

      對于學習,團隊使用了各種3D人體模型的數據集。盡管整個模型可以以端到端的方式進行訓練,但他們觀察到先訓練fθ,然后再訓練latent區域近似器非常有效,因為從一開始就可以獲得有效的z∗。第二個訓練階段非??焖?,4個GPU時間。

      接下來,可以通過首先計算給定觀測值的µH,生成給定xH和β的全身姿勢,然后使用µH作為zθ的近似值,生成姿勢xˆθ=fθ(µH,[xH,β])。為了進一步提高生成姿勢的質量,可以同時使用flow based模型作為優化中的姿勢先驗,以最小化先驗和數據的代價函數。優化既可以在posed空間中進行,又可以在latent空間中進行。值得一提的是,團隊自始至終都使用LBFGS優化器。

      在實驗中,團隊首先在沒有任何條件的情況下對VAE編碼器-解碼器進行全身訓練。在下一步中,訓練另一個VAE。由于研究人員提出的方法是一個條件姿勢先驗,他們將其與現有的條件姿勢先驗進行比較,然后根據問題設置進行調整。在圖8中,微軟證明了在部分或無手觀察的情況下,FLAG可以生成高度合理的姿勢。

      盡管在大多數情況下,如果觀察非常稀疏,FLAG都能夠生成高度合理的姿勢,但團隊坦誠它可能無法生成復雜、不太常見的下半身姿勢。另外,FLAG只使用靜態姿勢信息,所以擴展FLAG來使用時態數據是一個自然的研究方向。同時,團隊只使用頭顯信號作為模型的輸入,而在其他AR/VR場景中,可以使用其他模式,例如音頻或環境掃描。

      盡管FLAG的目標是找到更好的latent code來生成一個合理的姿勢,但團隊估計的latent code與oracle latent code之間可能依然存在相當大的差距(見表5)。不過,微軟指出在這一領域的進一步探索可能會帶來更忠實和準確的化身姿勢。

      相關論文:FLAG: Flow-based 3D Avatar Generation from Sparse Observations

      總的來說,FLAG是一種從稀疏頭顯信號生成合理全身人體姿勢的新方法。FLAG是一種條件flow-based三維人體生成模型。團隊證明,由于latent變量采樣機制,所述方法是一個強大的預測模型,并且在不同的優化設置下是一個有效的姿勢先驗。實驗評估和消融研究表明,在具有挑戰性的AMASS數據集上,所述的方法優于最先進的方法,同時需要更少的優化迭代,而且誤差非常小。

    +1

    來源:映維網

    推薦文章

    免费国产黄在线观看,吃农村哺乳丰满妇女奶水,7788亚洲精品无码专区在线
  • <menu id="4s8ek"><strong id="4s8ek"></strong></menu>
    <menu id="4s8ek"><tt id="4s8ek"></tt></menu>