Slide 1

Slide 1 text

NeRFの基礎知識と LumaAIの使い方 Aster

Slide 2

Slide 2 text

自己紹介 Aster IwakenLab所属 修士1年 趣味 : NeRF旅 「XR・NeRFを使って,誰もが魅了する 作品・映像を作りたい!!!」 Twitter : @Beehibiki

Slide 3

Slide 3 text

このような映像を作成できるNeRFについて紹介

Slide 4

Slide 4 text

目次 ● NeRFの概要 ● NeRFの撮影方法 ● LumaAIの使い方 ● NeRFの応用

Slide 5

Slide 5 text

NeRFの概要

Slide 6

Slide 6 text

ざっくりNeRFとは 複数の画像から、そのシーンの三次元形状を復元し、 新しい視点からの画像を生成する技術 入力:単一の連続した5次元座標(空間位置(x,y,z)と視線方向(θ,φ)) 出力:その空間位置における体積密度と色

Slide 7

Slide 7 text

新しい視点からの画像を生成するまでの流れ NeRFの入力として位置・方向を使用しているだけで 位置・方向の推定に関してはNeRFではない. 複数の視点から画 像を撮る 画像データから その画像がどの位置・ 方向から撮られたか推定す る. NeRF 新しい視点からの 画像を生成する.

Slide 8

Slide 8 text

NeRF 位置・方向を入力にしているため,1つのカメラが間違った 位置にあると、すべてのレンダリングが失敗する可能性がある. カメラの位置と向きがどのように計算されるかを理解することでどう いう画像が必要かわかるため,非常に重要

Slide 9

Slide 9 text

位置・方向の推定について 複数の画像を入力として,被写体の座標情報やカメラの撮影情報を 推定するツールであるCOLMAPを使用している.

Slide 10

Slide 10 text

位置・方向の推定について Colmap の心臓部は SIFT (Scale Invariant Feature Transform)と呼ばれる 特徴検出アルゴリズムが使用されている. 対照的な境界線,角,または先端を持つ画像が必要 空の雲,白い壁,光沢のある反射素材などの特徴に関しては位置推定が難しい 入力画像の注意点 ● 視差を意識する ● 遠近感をつける ● 撮影枚数

Slide 11

Slide 11 text

NeRFの流れ 1. COLMAPにより推定した様々なカメラ座標を取得 2. 上記のカメラ座標と、それに伴う視線方向をニューラルネットワークへの入力とし、 色と体積密度の情報を推定 3. 色と体積密度の情報をボリュームレンダリング技術を使って2D画像に変換 4. 変換した2D画像と正解画像との2乗誤差を求める 5. 誤差逆伝搬法を用いてニューラルネットワークの重みを更新 新しい視点からの画像を生成することが可能に

Slide 12

Slide 12 text

NeRFの目標 与えられた画像集合から、モデルFθ(x,d)=(c,σ)を構築すること

Slide 13

Slide 13 text

NeRFの流れ 青丸の視点から見たときに赤丸の位置の色は何色?

Slide 14

Slide 14 text

NeRFの流れ ニューラルネットワークを用いて色を推定

Slide 15

Slide 15 text

NeRFの流れ 70%でオレンジかな

Slide 16

Slide 16 text

NeRFの流れ この流れを入力画像のレイ方向の全座標・全てのピクセルで行う.

Slide 17

Slide 17 text

ボリュームレンダリングによる画像化 推定した色と密度の情報を使ってボリュームレンダリングを行い, 画像を生成する.

Slide 18

Slide 18 text

ボリュームレンダリング ある位置oにカメラがあるときに、そのカメラによって撮影される画像のピクセルの値は 光線方向に色と密度を足し合わせることで決まる. 優先度高 優先度低 tf tn tn〜tfがレンダリングの範囲 o 色と密度によるピクセルの値の求め方

Slide 19

Slide 19 text

ボリュームレンダリング カメラの座標から遠い位置の色に関しても計算しているからこそ, 反射する物体・半透明な物体でも表現できる. ただし,COLMAPによるカメラ推定が難しい 優先度高 優先度低 tf t n o 足し合わせる

Slide 20

Slide 20 text

ニューラルネットワークの更新 正解データ レンダリング結果 比較 ● 変換した2D画像と正解画像との2乗誤差を求める ● 誤差逆伝搬法を用いてニューラルネットワークの重みを更新

Slide 21

Slide 21 text

NeRFの流れ 1. COLMAPにより推定した様々なカメラ座標を取得 2. 上記のカメラ座標と、それに伴う視線方向をニューラルネットワークへの入力とし、 色と体積密度の情報を推定 3. 色と体積密度の情報をボリュームレンダリング技術を使って2D画像に変換 4. 変換した2D画像と正解画像との2乗誤差を求める 5. 誤差逆伝搬法を用いてニューラルネットワークの重みを更新 新しい視点からの画像を生成することが可能に

Slide 22

Slide 22 text

NeRFの撮影方法

Slide 23

Slide 23 text

NeRFの撮影方法 NeRFの撮影方法として2つある. ● ビデオを撮る->画像として切り分け (LumaAIの場合は切り分けしないでいい) ● 複数の写真を撮る 素早く撮影したい場合はビデオ 人が多い場所の場合は写真

Slide 24

Slide 24 text

何を撮る上でも注意するべき点 ● 静止体 ● 露出が一定である ● さまざまな角度と視点 ● 特徴点の多さ ● 撮影スピード ● 撮影距離 ● 画像枚数 元動画を見ながら説明していきます

Slide 25

Slide 25 text

撮る前に考えること ● 天気 ->曇天 = いい天気 ● 特徴点が多いかどうか ● 他の人の多さ ● スキャンしやすいか ● 広すぎないか 特徴点の宝庫 人のノイズ多い

Slide 26

Slide 26 text

露出を一定にしないと上手くカメラ推定が出来ない

Slide 27

Slide 27 text

露出を一定にしないと上手くカメラ推定が出来ない もし晴天で撮りたいときは、遠近両方撮るのではなく、 近くだけで撮るようにしよう

Slide 28

Slide 28 text

手の影にも注意!!!

Slide 29

Slide 29 text

条件的にも良さげだし、撮るかー ✖ まずは足運びを考えよう

Slide 30

Slide 30 text

足運びを考える重要性 ● 時間配分を考える(LumaAIの場合4k 60fpsだと 10分以内) ● 物理的に撮影が出来ない場所がないか ● 視点が足りない部分はないか

Slide 31

Slide 31 text

モーションブラーを意識する ● iPhoneだと4K 60 fpsで撮るのがおすすめ ● 普段歩く時の半分以下のスピードを ● カメラの向きを変えるのもゆっくり

Slide 32

Slide 32 text

LumaAIの使い方

Slide 33

Slide 33 text

LumaAIとは? NeRFを用いて複数の写真もしくはビデオからシーンを再構成するサービス

Slide 34

Slide 34 text

LumaAIの使い方 現在以下の2つの方法で使うことができる. 1.iPhoneアプリ 2.Web upload Androidアプリに関しては開発予定がないとのこと

Slide 35

Slide 35 text

LumaAIの使い方 現在以下の2つの方法で使うことができる. 1.iPhoneアプリ 2.Web upload Androidアプリに関しては開発予定がないとのこと

Slide 36

Slide 36 text

3つのキャプチャーモードがある ● GUIDED ● FREEFORM ● UPLOAD

Slide 37

Slide 37 text

GUIDED 物体を中心に3周して、物体を生成するモード 背景よりも小物などの物体用

Slide 38

Slide 38 text

GUIDED 距離感やどういう視点が 必要なのか知れるため初心者にお勧め

Slide 39

Slide 39 text

FREEFORM ● 物体を3周することができない ● 背景も合わせて綺麗に撮りたい ● 素早く撮りたい ● GUIDEDに慣れてきた 場合にお勧め ガイドなしで自由に撮るモード

Slide 40

Slide 40 text

FREEFORM ● 中心にあるもののほうがきれいに撮れるため、水色 の円に対象を合わせる ● カメラの移動が早いと黄色くなるので、水色を意識 する ● カメラ位置が可視化できるので、撮れていない場合 を確認しながら撮影する

Slide 41

Slide 41 text

UPLOAD 誰でも簡単に動画をアップロードするだけでいい.

Slide 42

Slide 42 text

LumaAIの使い方 現在以下の2つの方法で使うことができる. 1.iPhoneアプリ 2.Web upload Androidアプリに関しては開発予定がないとのこと

Slide 43

Slide 43 text

Web Upload Androidユーザーや360度カメラなど様々なカメラの画像・ビデオを処理 する人向け カメラワークに関しては、Web版のほうが凝れる

Slide 44

Slide 44 text

カスタムパスの使い方 カメラの設定 カメラの位置の秒数の設定 映像をレンダリング

Slide 45

Slide 45 text

カスタムパスの使い方

Slide 46

Slide 46 text

ドリーズームの設定

Slide 47

Slide 47 text

ドリーズームの設定

Slide 48

Slide 48 text

止めの設定

Slide 49

Slide 49 text

止めの設定

Slide 50

Slide 50 text

Unreal Engine5 ×LumaAI

Slide 51

Slide 51 text

NeRFの応用例

Slide 52

Slide 52 text

NeRFの発展 ● Instant-ngp ○ 独自のネットワークアーキテクチャを導入することで、より高速な学習とレンダリング を実現 ● Block-NeRF ○ ボリュームをブロックに分割し、各ブロックに対して別々のニューラルネットワークを学習すること で、より高精度で高速なレンダリングを可能に ● Artistic Radiance Field ○ アーティスティックな3Dシーンの生成を目的とした手法 ● Dynamic-NeRF ○ NeRFを動画に拡張するための手法. ○ 時間軸を考慮して、動的な3Dシーンの再構成を行うことが可能 ● Human Radiance Field ○ 人物を対象としたNeRFの拡張手法. ○ 人体の形状や色の変化に適したニューラルネットワークを導入.

Slide 53

Slide 53 text

NeRFの応用例 LumaAI nerfstudio Instant-NGP Artistic Radiance Field Dream Fusion Turbo-NeRF

Slide 54

Slide 54 text

新しいNeRFの一例 人+遠景での新しい表現ができる. Hos-NeRF 1つの単眼映像からダイナミックな人・物体シー ンのNeRFを再構成する手法