Share
Embed
Mip-NeRF ICCV2021輪読会スライド
Presentation slide at https://kantocv.connpass.com/event/228283/
Daigo HIROOKA
December 12, 2021
Transcript
38 slides
-
自己紹介 • 廣岡大吾 ◦ Twitter:dhirooka (@daigo_hirooka) • 機械学習エンジニア@ BrainPad ◦
関心:Deep LearningとMLOps ◦ BrainPad Advent Calendar 2021 進行中 • その他 ◦ GoProがゲレンデで活躍してます 2 -
• 既存のNeRF ◦ レンダリング時のスケール変化は想定外 ◦ 近くからのレンダリング:ぼやける ◦ 遠くからのレンダリング:エイリアス • Mip-NeRF
◦ スケール変化に対応 ◦ レンダリング時のアンチエイリアスを実現 ◦ 計算コストもほぼ同じ 紹介論文:Mip-NeRF 5 -
NeRF:Neural Radiance Field • シーンの見え方を生成( view synthesis)するアプローチの一つ • 1つのシーンに対して1つの NeRFのモデルを学習する
◦ 学習データ:対象シーンを写した画像群 ◦ 推論:任意の視点からのシーンの見え方(レンダリング) 7 [2003.08934] NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis -
NeRFによるシーンのモデル化 • NeRFの学習=全結合NNの学習 ◦ 入力:3次元上の位置xyz、視点からの向きθ,Φ ◦ 出力:入力(評価点)に対応する色 RGB・密度σ ◦ シーンに応じた色・密度の場(
Radiance Field)をNNによってモデル化・学習している 8 -
Radiance Fieldに基づくピクセル値の計算 • ①視点からピクセルへの半直線( camera ray)を用意 • ②Camera ray上の各点について、 radiance
fieldによって色・密度を評価 • ③各点の色・密度をボリュームレンダリングによって集約、ピクセル値を得る 11 ピクセル値 -
Radiance Fieldに基づくピクセル値の計算 • ①視点からピクセルへの半直線( camera ray)を用意 • ②Camera ray上の各点について、 radiance
fieldによって色・密度を評価 • ③ボリュームレンダリングによって各点の色・密度を集約、ピクセル値を得る • 必要なピクセル分計算することで 1枚の画像をレンダリングする 12 ピクセル値 -
NeRF:まとめ • アーキテクチャ ◦ Radiance Field:空間上の位置・角度 →色・密度の関数 ◦ ボリュームレンダリングによって camera
rayからピクセル値を計算 • 既存の多くのモデルよりも高精細なレンダリングが可能 • NNモデルとしては軽量、効率よくシーン情報を保持できている 14 -
NeRF at ICCV2021 • Frank Dellaertさん(Georgia Tech/Google)によるまとめ • NeRFの課題 ◦
学習、推論(レンダリング)ともに遅い ◦ 静的(static)なシーンのみ表現可能 ◦ 照明がシーンの一部として焼きつく( baking) ◦ 1つの学習済みモデルで、1つのシーン・物体のみ表現可能 16 -
NeRF at ICCV2021 • Frank Dellaertさん(Georgia Tech/Google)によるまとめ • NeRFの改善アプローチ ◦
レンダリング精度など基礎的な改善 ▪ 今回のMip-NeRFなど ◦ レンダリング速度の向上 ◦ ポーズフリー:事前のカメラ位置計算の排除 ◦ 条件付き生成、シーンの編集 ◦ 動画など、時間方向への拡張 ◦ etc 17 -
提案:Cone Tracingによるスケールの考慮 • Cone Tracing ◦ ピクセルに対してcamera ray(線)ではなくcone(円錐)を投射 ◦ 点ではなく円錐台(conical
frustum)領域の色・密度を評価する • 視点から遠いほどconical frustumが大きくなり、スケールを考慮できる 20 -
Conical frustumの評価 • NeRF:空間上の点の位置・向きに対して Positional Encodingを特徴表現として利用 • Mip-NeRF:conical frustumを評価するための特徴表現とは? ◦
領域を積分するような形で、効率よく計算できるような定式化だと良い 21 -
Integrated Positional Encodingの効果 • Conical frustumの形状に応じて、Positional Encoding(PE)をフィルタリングできる 24 Conical frustumが小さい(近くのシーン)
Conical frustumが大きい(遠くのシーン) ガウス分布の分散小 ガウス分布の分散大 PEの高周波数成分まで保持 PEの高周波数成分は減衰 シーンの細かい特徴まで保持 シーン特徴を大まかに保持 IPEの各周波数成分▶ ガウス分布の分散▼ 高周波数成分 は減衰 ガウス分布の 分散大 -
Mip-NeRF:学習 • Positional Encodingの代わりにIPEを用いる ◦ 期待値は解析的に得られるので、計算コストはあまり変わらない • スケール別モデルの排除 ◦ NeRFではcoarse,
fineの2つのNNを用意して学習していた ◦ Mip-NeRFはマルチスケールなモデルなので 1つのNNで良い ▪ →パラメータ数が半分で済む • Jaxによって実装 ◦ google/mipnerf ◦ JaxNeRF(オリジナルのNeRFチームの実装)をベースとしている 25 -
Experiment:Single-scale Blender Dataset • オリジナルのBlender Dataset(単一スケール)についても学習、評価 ◦ 単一スケールのレンダリングでも優れた性能 ◦ (Conical
frustumによるモデル化、IPEがレンダリング方法として根本的に優れている?) 28 -
Mip-NeRF:まとめ • 目標:NeRFにおいてスケール変化時に発生するエイリアスの抑制(アンチエイリアス) • アプローチ ◦ Camera ray上の点ではなくconical frustum(円錐台)を評価 ◦
Conical frustumをガウス分布で近似することで 解析的な特徴表現: Integrated Positional Encodingを導出 ◦ 単一のマルチスケールなモデル を構築 • 結果 ◦ 多様なスケールで優れた レンダリングが可能になった ◦ モデル軽量化 29 -
参考: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した 画像群 -
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 -
NeRFの仮定:ピンホールカメラモデル • 3D座標とピクセル座標の関係を表すモデル ◦ NeRFにおけるレンダリング上の仮定 ◦ Camera ray:カメラの位置からピクセルへの半直線 33 OpenCV:
Camera Calibration and 3D Reconstruction camera ray -
ピンホールカメラモデル • 3D座標とピクセル座標の関係を表すモデル ◦ NeRFにおけるレンダリング上の仮定 ◦ Camera ray:カメラの位置からピクセルへの半直線 • ピクセルに対応する
camera ray上で、Radiance Fieldによって色と密度を評価する 34 -
NeRFにおけるボリュームレンダリング • ボリュームレンダリングによるピクセル値の計算 ◦ Camera ray上の色c・密度σの積分 ◦ 実装上は数値積分によって計算 35 Camera
ray rに対応する ピクセル値 点iより手前の透過 点iの不透明度 密度σ大で1に近づく 点iの色 点iの3D座標 N等分した各区間から uniform sampling -
NeRF:実装上の工夫②:Hierarchical Sampling • N等分区間からの一様サンプリングは無駄が多い ◦ 何もない位置 ◦ 視点奥の直接見えない位置 • Hierarchical
Sampling ◦ まずN等分区間から評価点の一様サンプリングを行う ◦ 各評価点の密度に基づいて、再度サンプリングを行う ◦ ピクセル描画に重要な領域にフォーカスする 37 視点手前の物体を重視 何もない 直接 見えない -
NeRF:実装上の工夫②:Hierarchical Sampling • Coarse, Fineの2モデルを用意する • Hierarchical Samplingを用いた推論 ◦ 等分区間からNc個の評価点をサンプリング
◦ Coarseモデル:Nc個の評価点の色・密度を計算 ◦ 区間を重み付けして再度 Nf個の評価点をサンプリング ◦ Fineモデル:Nc+Nf個の評価点の色・密度を計算 • Hierarchical Samplingを用いた学習 ◦ Coarse, Fineモデルそれぞれで ピクセル値の二乗誤差を学習 38 Coarseモデルの 二乗誤差 Fineモデルの 二乗誤差