Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mip-NeRF ICCV2021輪読会スライド

8ba32afb4b7d6967cb38b2dadf1ddd80?s=47 Daigo HIROOKA
December 12, 2021

Mip-NeRF ICCV2021輪読会スライド

8ba32afb4b7d6967cb38b2dadf1ddd80?s=128

Daigo HIROOKA

December 12, 2021
Tweet

More Decks by Daigo HIROOKA

Other Decks in Research

Transcript

  1. 第9回全日本コンピュータビジョン勉強会 Presenter:廣岡大吾

  2. 自己紹介 • 廣岡大吾 ◦ Twitter:dhirooka (@daigo_hirooka) • 機械学習エンジニア@ BrainPad ◦

    関心:Deep LearningとMLOps ◦ BrainPad Advent Calendar 2021 進行中 • その他 ◦ GoProがゲレンデで活躍してます 2
  3. 紹介論文:Mip-NeRF • 目標:NeRFレンダリング時のスケール変化に伴うエイリアスの抑制(アンチエイリアス) 3 NeRF in the Wild

  4. 4 NeRF in the Wild

  5. • 既存のNeRF ◦ レンダリング時のスケール変化は想定外 ◦ 近くからのレンダリング:ぼやける ◦ 遠くからのレンダリング:エイリアス • Mip-NeRF

    ◦ スケール変化に対応 ◦ レンダリング時のアンチエイリアスを実現 ◦ 計算コストもほぼ同じ 紹介論文:Mip-NeRF 5
  6. NeRFのおさらい 6

  7. NeRF:Neural Radiance Field • シーンの見え方を生成( view synthesis)するアプローチの一つ • 1つのシーンに対して1つの NeRFのモデルを学習する

    ◦ 学習データ:対象シーンを写した画像群 ◦ 推論:任意の視点からのシーンの見え方(レンダリング) 7 [2003.08934] NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
  8. NeRFによるシーンのモデル化 • NeRFの学習=全結合NNの学習 ◦ 入力:3次元上の位置xyz、視点からの向きθ,Φ ◦ 出力:入力(評価点)に対応する色 RGB・密度σ ◦ シーンに応じた色・密度の場(

    Radiance Field)をNNによってモデル化・学習している 8
  9. Radiance Fieldに基づくピクセル値の計算 • ①視点からピクセルへの半直線( camera ray)を用意 9

  10. Radiance Fieldに基づくピクセル値の計算 • ①視点からピクセルへの半直線( camera ray)を用意 • ②Camera ray上の各点について、 radiance

    fieldによって色・密度を評価 10
  11. Radiance Fieldに基づくピクセル値の計算 • ①視点からピクセルへの半直線( camera ray)を用意 • ②Camera ray上の各点について、 radiance

    fieldによって色・密度を評価 • ③各点の色・密度をボリュームレンダリングによって集約、ピクセル値を得る 11 ピクセル値
  12. Radiance Fieldに基づくピクセル値の計算 • ①視点からピクセルへの半直線( camera ray)を用意 • ②Camera ray上の各点について、 radiance

    fieldによって色・密度を評価 • ③ボリュームレンダリングによって各点の色・密度を集約、ピクセル値を得る • 必要なピクセル分計算することで 1枚の画像をレンダリングする 12 ピクセル値
  13. NeRFの学習 • 学習データの各視点から画像を再構成し、ピクセル値の二乗誤差に基づいて教師あり学習 • ボリュームレンダリングは微分可能なので、 end2endな学習が可能 13

  14. NeRF:まとめ • アーキテクチャ ◦ Radiance Field:空間上の位置・角度 →色・密度の関数 ◦ ボリュームレンダリングによって camera

    rayからピクセル値を計算 • 既存の多くのモデルよりも高精細なレンダリングが可能 • NNモデルとしては軽量、効率よくシーン情報を保持できている 14
  15. NeRF at ICCV2021 15

  16. NeRF at ICCV2021 • Frank Dellaertさん(Georgia Tech/Google)によるまとめ • NeRFの課題 ◦

    学習、推論(レンダリング)ともに遅い ◦ 静的(static)なシーンのみ表現可能 ◦ 照明がシーンの一部として焼きつく( baking) ◦ 1つの学習済みモデルで、1つのシーン・物体のみ表現可能 16
  17. NeRF at ICCV2021 • Frank Dellaertさん(Georgia Tech/Google)によるまとめ • NeRFの改善アプローチ ◦

    レンダリング精度など基礎的な改善 ▪ 今回のMip-NeRFなど ◦ レンダリング速度の向上 ◦ ポーズフリー:事前のカメラ位置計算の排除 ◦ 条件付き生成、シーンの編集 ◦ 動画など、時間方向への拡張 ◦ etc 17
  18. None
  19. NeRFの課題:スケール変化時のエイリアシング • NeRFの学習データは基本的に同じスケールの画像 • 学習データと異なる距離でのレンダリングでは精度が劣化 ◦ 近くの描画:ぼやける ◦ 遠くの描画:エイリアス 19

  20. 提案:Cone Tracingによるスケールの考慮 • Cone Tracing ◦ ピクセルに対してcamera ray(線)ではなくcone(円錐)を投射 ◦ 点ではなく円錐台(conical

    frustum)領域の色・密度を評価する • 視点から遠いほどconical frustumが大きくなり、スケールを考慮できる 20
  21. Conical frustumの評価 • NeRF:空間上の点の位置・向きに対して Positional Encodingを特徴表現として利用 • Mip-NeRF:conical frustumを評価するための特徴表現とは? ◦

    領域を積分するような形で、効率よく計算できるような定式化だと良い 21
  22. Conical frustumの近似 • 3次元ガウス分布によって conical frustumの領域を近似する ◦ frustumの対称性から、平均、 ray方向・垂直方向の分散の 3つの値で定義できる

    ◦ 導出は論文のappendixを参照 22
  23. Integrated Positional Encoding • ガウス分布を用いることで、 conical frustumにおけるPositional Encodingの期待値を 解析的に計算できる= Integrated

    Positional Encoding 23
  24. Integrated Positional Encodingの効果 • Conical frustumの形状に応じて、Positional Encoding(PE)をフィルタリングできる 24 Conical frustumが小さい(近くのシーン)

    Conical frustumが大きい(遠くのシーン) ガウス分布の分散小 ガウス分布の分散大 PEの高周波数成分まで保持 PEの高周波数成分は減衰 シーンの細かい特徴まで保持 シーン特徴を大まかに保持 IPEの各周波数成分▶ ガウス分布の分散▼ 高周波数成分 は減衰 ガウス分布の 分散大
  25. Mip-NeRF:学習 • Positional Encodingの代わりにIPEを用いる ◦ 期待値は解析的に得られるので、計算コストはあまり変わらない • スケール別モデルの排除 ◦ NeRFではcoarse,

    fineの2つのNNを用意して学習していた ◦ Mip-NeRFはマルチスケールなモデルなので 1つのNNで良い ▪ →パラメータ数が半分で済む • Jaxによって実装 ◦ google/mipnerf ◦ JaxNeRF(オリジナルのNeRFチームの実装)をベースとしている 25
  26. Experiment:Multiscale Blender Dataset • Blender Datasetをマルチスケールに拡張して学習 • 多様なスケールでのレンダリング精度を評価 ◦ 実験した全てのスケールで

    NeRFより優れたレンダリングを達成 26
  27. Experiment:Multiscale Blender Dataset • Blender Datasetをマルチスケールに拡張して学習 • 多様なスケールでのレンダリング精度を評価 ◦ 実験した全てのスケールで

    NeRFより優れたレンダリングを達成 27
  28. Experiment:Single-scale Blender Dataset • オリジナルのBlender Dataset(単一スケール)についても学習、評価 ◦ 単一スケールのレンダリングでも優れた性能 ◦ (Conical

    frustumによるモデル化、IPEがレンダリング方法として根本的に優れている?) 28
  29. Mip-NeRF:まとめ • 目標:NeRFにおいてスケール変化時に発生するエイリアスの抑制(アンチエイリアス) • アプローチ ◦ Camera ray上の点ではなくconical frustum(円錐台)を評価 ◦

    Conical frustumをガウス分布で近似することで 解析的な特徴表現: Integrated Positional Encodingを導出 ◦ 単一のマルチスケールなモデル を構築 • 結果 ◦ 多様なスケールで優れた レンダリングが可能になった ◦ モデル軽量化 29
  30. 参考:MipMapによるテクスチャ描画 • MipMapping:3DCGなどでテクスチャの描画効率を向上するための技術 ◦ mip:multum in parvo(much in little) ◦

    オリジナルのテクスチャに対して pre-filteringした画像群を用意することで、 スケール変化時のエイリアスを抑制できる • Mip-NeRFのIntegrated Positional Encodingは 特徴表現(PE)に対するpre-filteringと捉えられる ◦ →NeRFにおけるアンチエイリアス 30 ミップマップ - Wikipedia オリジナル画像 pre-filteringした 画像群
  31. References • 記載のない限り画像は Mip-NeRFの論文より引用 • 論文 ◦ NeRF: Neural Radiance

    Fields ◦ mip-NeRF ◦ Mip-NeRF: A Multiscale Representation for Anti-Aliasing Neural Radiance Fields • その他 ◦ NeRF at ICCV 2021 ◦ [2111.05849] Advances in Neural Rendering ◦ ミップマップ - Wikipedia 31
  32. Appendix 32

  33. NeRFの仮定:ピンホールカメラモデル • 3D座標とピクセル座標の関係を表すモデル ◦ NeRFにおけるレンダリング上の仮定 ◦ Camera ray:カメラの位置からピクセルへの半直線 33 OpenCV:

    Camera Calibration and 3D Reconstruction camera ray
  34. ピンホールカメラモデル • 3D座標とピクセル座標の関係を表すモデル ◦ NeRFにおけるレンダリング上の仮定 ◦ Camera ray:カメラの位置からピクセルへの半直線 • ピクセルに対応する

    camera ray上で、Radiance Fieldによって色と密度を評価する 34
  35. NeRFにおけるボリュームレンダリング • ボリュームレンダリングによるピクセル値の計算 ◦ Camera ray上の色c・密度σの積分 ◦ 実装上は数値積分によって計算 35 Camera

    ray rに対応する ピクセル値 点iより手前の透過 点iの不透明度 密度σ大で1に近づく 点iの色 点iの3D座標 N等分した各区間から uniform sampling
  36. NeRF:実装上の工夫①:Positional Encoding • Radiance Fieldの入力は位置と角度 • Positional Encodingによって各成分を高次元ベクトルに加工 ◦ 画像の細かい特徴(高周波数成分)を捉えられるようになった

    36
  37. NeRF:実装上の工夫②:Hierarchical Sampling • N等分区間からの一様サンプリングは無駄が多い ◦ 何もない位置 ◦ 視点奥の直接見えない位置 • Hierarchical

    Sampling ◦ まずN等分区間から評価点の一様サンプリングを行う ◦ 各評価点の密度に基づいて、再度サンプリングを行う ◦ ピクセル描画に重要な領域にフォーカスする 37 視点手前の物体を重視 何もない 直接 見えない
  38. NeRF:実装上の工夫②:Hierarchical Sampling • Coarse, Fineの2モデルを用意する • Hierarchical Samplingを用いた推論 ◦ 等分区間からNc個の評価点をサンプリング

    ◦ Coarseモデル:Nc個の評価点の色・密度を計算 ◦ 区間を重み付けして再度 Nf個の評価点をサンプリング ◦ Fineモデル:Nc+Nf個の評価点の色・密度を計算 • Hierarchical Samplingを用いた学習 ◦ Coarse, Fineモデルそれぞれで ピクセル値の二乗誤差を学習 38 Coarseモデルの 二乗誤差 Fineモデルの 二乗誤差