106 Views
February 10, 23
スライド概要
2023/2/10
Deep Learning JP
http://deeplearning.jp/seminar-2/
DL輪読会資料
NeuWigs: A Neural Dynamic Model for Volumetric Hair Capture and Animation Naruya Kondo (Digital Nature Group M2) 1
書誌情報 ● NeuWigs: A Neural Dynamic Model for Volumetric Hair Capture and Animation ○ Arxiv (Submitted on 2022/12/1) ○ 著者:CMU, Meta, Google, Epic (※ Work done while at Meta) ■ Ziyan Wang, Giljoo Nam, Tuur Stuyck, Stephen Lombardi, Chen Cao, Jason Saragih, Michael Zollhoefer, Jessica Hodgins, Christoph Lassner ● ひとことで言うと ○ 「Primitiveで小さなNeRF達」を逐次的に動かし、非剛体シミュレーションする ○ 髪の毛を、リアルタイムなObservation無しで、シミュレーションできる! ■ 再生/再構成ではなく、異なる時間発展に対応できる ■ (リアルタイムに動くかは不明だけど、そんなに重くなさそう) ○ (ネタっぽいけど、非剛体sim的に凄そう) 2
プロジェクトページ 3
問題設定 ● 学習: ある1つの髪(wig) で撮った時系列データを学習 ● 評価: 新しい動きを入力にして、髪空間を生成&描画 ● データ ○ {うなずく, 首振り, 傾げる} × {速い, 遅い} を何回も ○ 100カメラ, 30fps, 恐らく1回10秒程度 大量カメラは正義 (真理) 4
Overview 学習① 評価 学習② • • State compression – 各時刻の点群をAutoencoderで z_t に埋め込み。 • 出力: 点群の位置, 向き, 大きさ – Volumetric Primitivesで、小さなNeRFを組み合わせて全体を描画 Dynamic model training – z_t, 顔中心の動き, 重力から z_{t+1} を予測 • z_t が与えられるとdecodeでき、 時間変化も生成できる 5
State compression 1. l-MVSで髪の点群 p_t を得る – unordered 2. PointNetでエンコード – MaxPooling等で順番に依存しない 3. MLPでデコード – 順番が揃うらしい(?) – 点群 q_t の位置、向き、スケールを得る 4. Loss: 位置、向き、Flow(変位) + N(0,1)とのKL 一番近い点との差 6
State compression 1. ⇧全部を組み合わせ、1つのNeRF Field を作る (V^{all}) sparseなNeRF 2. Volume rendeing とも言える? 3. Loss: L1 + VGG 光線上の透過率 αの差分 だけ色rgbを足す つまり、z_tが与えられると、decode&renderができる 7
Dynamic model training 1. enc, decを固定して、学習データ のz_tの系列について、 次の z_t を予測 h: 頭の中心, g: 重力の方向 z_tは分布で、μ, δはその平均と分散 2. Loss 8
Dynamic model testing • テストの際、そのまま予測したz_{t+1}を使うと、ノ イズが蓄積する – ⇨ decodeしてencodeしてから使った – (ノイズがとれるらしい) 9
評価 10
感想 • primitiveの動きに注目して学習するというのが良さそう • 激しい動きにどれくらい対応できる? • 髪の毛以外に応用できる? • 髪の毛の周りのGhostが気になる (あるある?) • 先にencoder / decoderを学習して、後から潜在変数(の遷移)を学習するのと、end-to-endで学習する の、結局どちらが良いのだろう – 最近は前者をよく見る気がする – (本論文、diffusion系、transformer系しかり) – (松尾先生はend2end推しらしい) • primitiveの境界はどうしてる? by 山川先生 11