188 Views
February 25, 22
スライド概要
2022/02/25
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
DEEP LEARNING JP [DL Papers] BANMo: Building Animatable 3D Neural Models from Many Casual Videos Kento Doi, Matsuo Lab. http://deeplearning.jp/ 1
何ができるか? • Deformableなオブジェクトの動画から,動かせる3Dモデルを復元 • ニューラル陰関数表現 (neural implicit representation (NIR)) でcanonical 3D shape, appearance, skinning weights, time-varying articulationを表現 • 3D shapeはSDFで表現 • skinning weights … 各⾻格 (bone) に対する物体表⾯ (skin) の対応度合いを表す • time-varying articulation … 時刻ごとの関節の動き
何ができるか?
書誌情報 • 著者の所属はMeta AI, Meta Reality Labs, CMU • Metaは前Facebook • Meta AIにおけるインターンシップでの成果 • 2021/12にarXivで公開された • 投稿された会議などは不明 • CVPR2022, ECCV2022, SIGGRAPH2022あたり?
モチベーション • モチベーション:動画から3Dモデルを復元したい • 静的なシーンでは,SfMを⽤いて3D形状の復元が可能 • 例) ウェブ上の画像からランドマークや街の形状を復元 Ø⽣き物のように,変形する (deformable) オブジェクトを復元するには? • 問題設定:Deformableなオブジェクトが映る動画を⽤いた3D復元 • ただし,同じオブジェクトを写した複数の動画があるとする • 例) 異なる⽇に撮影された飼い猫の動画
提案⼿法:overview • BANMo (Builder of Animatable 3D Neural Models) • 多数の動画フレームの情報をcanonical spaceに統合し,3D shape, appearance, articulationを学習 • Canonical space中のモデルを変形させることで,各時刻のフレームのオブ ジェクト表現
提案⼿法:overview • BANMo (Builder of Animatable 3D Neural Models) • • • • 変形 (articulation) をどのように表現するか Neural blend skinningを⽤いる NIRで表現されたモデルの各部位を複数の剛体変換の重みづけにより変換 各部位で異なる重みづけを⾏うことで,変形を表現可能
提案⼿法:課題 • Canonical spaceでモデルを獲得する上での課題が3つ 1. どのようにオブジェクトの⾒かけと変形を表現するか 2. Canonical spaceと各フレーム間のマッピングをどのように獲得するか 3. フレーム間の対応をどのように獲得するか Øこれらを解決する⼯夫を提案
提案⼿法:Shape and Appearance Model • オブジェクトの形状と⾒かけをどう表現するか • Canonical space中のモデルと,各時刻のモデルの関係性は??
提案⼿法:Preliminary • NeRF (Neural Radiance Fields) • Radiance field is a continuous function whose input is the 3D coordinates plus the view direction (𝑥, 𝑦, 𝑧, 𝜃, 𝜙) and output is the density and the view-dependent color (𝑅𝐺𝐵𝜎) • Arbitrarily view is rendered using the classical volume rendering and NeRF B. Mildenhall et al. NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. ECCV, 2020. https://github.com/bmild/nerf 10
提案⼿法:Canonical shape model • Canonical spaceでの3Dモデルを定義し,各フレームのオブジェクト の形状をcanonical spaceのモデルの変換で表現 • Canonical spaceではモデルを以下のように表現する 𝑋 ∗ ∈ ℝ" : canonical spaceの三次元点座標 𝑣 # ∈ ℝ$ : 時刻ごとの視線⽅向 𝜔%# ∈ ℝ&' : 照明条件を司る潜在表現 (動画で共通)(learnable parameter) 𝑐 # ∈ ℝ" : 三次元点のRGB color 𝜎 ∈ [0, 1] : 三次元点の密度 𝜓 ∈ ℝ(& : canonical embedding (後で使う) ※ 𝜎 はSDFをラプラス分布で密度に変換している
提案⼿法:Space-time warping model
• Canonical spaceのモデルを各時刻のモデルの変形させるには
• 三次元点を別の三次元点に移すwarping関数を考える
• Forwardとbackwardの2種類のwarpingを定義
W t,! : X ⇤ ! X t
<latexit sha1_base64="6ACywV6Or5w7o1sDHmKIIB2nvA8=">AAACl3ichVFNSxtBGH5crR+x1agXSy+LwVJKCRMRFS+KBfFo1JiA0TC7jsngfjE7ieiSP+AfUPBUoYj0P3jxoH+gB39C8WihFw++2SxoK9V32ZnnfeZ93nlmxgocGWrGbjqMzq433T29fan+t+8GBtNDw+uhX1e2KNi+46uSxUPhSE8UtNSOKAVKcNdyRNHa/dpaLzaECqXvren9QGy6vOrJHWlzTVQlPVF2ua7Z3ImKza1IfzHLSlZrmivl7zXNWbO09fkpRbmupDMsy+Iwn4NcAjJIYtlPn6GMbfiwUYcLAQ+asAOOkL4N5MAQELeJiDhFSMbrAk2kSFunKkEVnNhdGquUbSSsR3mrZxirbdrFoV+R0sQ4+8nO2R27Zj/YL3b/315R3KPlZZ9mq60VQWXwcHT1z6sql2aN2qPqRc8aO5iJvUryHsRM6xR2W984OLpbnV0Zjz6yU3ZL/r+xG3ZJJ/Aav+3vebFyghQ9QO7f634O1ieyuansZH4yM7+QPEUvPmAMn+i+pzGPJSyjQPse4wJXuDbeG3PGorHULjU6Es0I/goj/wDEcp1O</latexit>
• Forward warping function
<latexit sha1_base64="RFw6zqauKE8nrkeUVnDBo3YTduc=">AAAClnichVFNSxtBGH7cqrWp1VgvQi9Lg1KKhNkirXgo0lLsMX7EBIyG2XWSDM5+MDtJ0SV/oH/AgycLUkp/Q0+C9g/04E8oHi300oNvNgtiRX2XnXneZ97nnWdm3EjJ2DB2NmA9GBwafjjyKPd49MnYeH7i6XoctrUnyl6oQl11eSyUDETZSKNENdKC+64SFXfnfW+90hE6lmGwZnYjsenzZiAb0uOGqHreqfnctDyukkp3KzGzdk2JhuFah5+69oJd3TJ2Tctmq09R/rKeL7AiS8O+CZwMFJBFKcx/RQ3bCOGhDR8CAQxhBY6Yvg04YIiI20RCnCYk03WBLnKkbVOVoApO7A6NTco2MjagvNczTtUe7aLo16S0Mc1+sW/sgv1k39lv9u/WXknao+dll2a3rxVRffzz1Orfe1U+zQatK9Wdng0amE+9SvIepUzvFF5f39nbv1hdWJlOZtgXdk7+D9kZO6YTBJ0/3tGyWDlAjh7A+f+6b4L1V0XndXFuea6w+C57ihE8w3O8oPt+g0V8RAll2ncfP3CCU2vKemt9sJb6pdZAppnEtbBKl6hRnNE=</latexit>
• Backward warping function
W
t,
t
:X !X
⇤
提案⼿法:Space-time warping model • NeRFと同様に,volume renderingで各時刻の画像をレンダリング • Warpingを考慮すると次の式のようになる • ただし,𝜏. は点iにレイが到達する確率,𝑜 はピクセルの透過率を表す • 𝜏. はレイが点に到達するまでに物体にぶつからない場合に⾼くなる
提案⼿法:Deformation Model via Neural Blend Skinning • Canonical spaceの三次元点𝑋 ∗ と各時刻の三次元点𝑋 " の間のワープを どのように表現するか
提案⼿法:Blend skinning deformation • Canonical → 各フレームのワーピングは次のような式で⾏われる • ただし,G, Jは共に剛体変換を表す • また,G, JはMLPにより各時刻の潜在変数から計算される • さらに,JはB個の剛体変換の加重平均により得られる (linear blend skinning) • Wは重み,ΔJは剛体変換のパラメータを表す
提案⼿法: Skinning weights • 前ページの重みWをどのように求めるか, ØCanonical spaceにB個のガウス分布を配置 Ø点𝑋 ∗ とガウス分布の中⼼とのマハラノビス距離で重みづけを⾏う Øガウス分布のパラメータを学習
提案⼿法: Registration via Canonical Embeddings • 異なる時刻で観測したピクセルを対応づけるため,canonical space の三次元点のセマンティックな情報の埋め込みを学習する • 具体的には,三次元点𝑋 ∗ をMLPを⽤いて𝜓 ∈ ℝ#$ に埋め込む
提案⼿法:Canonical embeddings matching • 得られた埋め込みを⽤いて2D-3Dのマッチングを計算できる Ø特徴を⽤いたマッチングと幾何的な変換の整合を正則化として⽤いる • 2Dの特徴は,CNNにより抽出したものを⽤いる • 2D-3Dの対応はsoft argmaxにより求める: 2D特徴の 3D特徴の embedding embedding
Optimization RGB値の⼆乗誤差 & ピクセルの透過率の誤差 2D optical flowと canonical spaceを経由し て求めたflowの整合 skinningとembedding matchingの整合 feature matchingにより 求めた3D点を2Dに投影 forward warpingと backward warpingの整合
実験:定性評価 • データセット: • 猫(ブリティッシュショートヘア)の動画20本 • ⼈物の動画10本 • シルエットとoptical flowはそれぞれ学習済みモデルを⽤いて取得 • ベースライン: • Nerfies … NeRF系のモデル.radiance field + deformationでシーンをモデル 化 • ViSER … 類似⼿法.複数視点の動画から動かせるオブジェクトを復元.NIR の代わりにmeshモデルを利⽤
実験:定性評価
実験:定量評価 • データセット: • AMA human dataset … メッシュのGTがある⼈物の動画データセット • Animated Objects dataset … CGで作成した動画のデータセット • 評価指標: • 再構成した3Dモデルと正解のメッシュモデルの間のChamfer距離
実験:定量評価
実験:定量評価
まとめ • 動画から動きのある3Dモデルを復元するBANMoを提案 • Canonical space中の3Dモデルを各フレームに投影する⽅法でオブ ジェクトを表現 • モデルの変形をneural blend skinningで表現 • フレームとcanonical spaceの対応づけを強化するための埋め込みを 提案 • 感想 • 物体が中央に写っている動画があれば3Dモデルを復元できるのはすごい • DeformableなNeRFの極みのような研究だと思った