Global Illumination 入門




     出典: http://graphics.ucsd.edu/~henrik/

第14回 名古屋CV・PRML勉強会
  野田雅文(@miyabiarts)
目次
•   レンダリング
•   Local Illumination
•   光の物理量
•   BSSRDF/BRDF
•   レンダリング方程式
    – 古典的レイトレーシング
    – モンテカルロレイトレーシング
    – フォトンマップ
参考文献




                  Realistic Image Synthesis
CG Magic:レンダリング                               Physically Based Rendering
                  using Photon Mapping
Global Illuminationとは
どちらがCGでしょう?
      実物                                       CG




       出典:http://www.graphics.cornell.edu/online/box/compare.html

実世界と見分けがつかないような画像をレンダリングする技術の一つ
レンダリング
• 3次元空間中の物体を画面上に表示


      3次元空間        画面(2次元)


カメラ




              光源
ラスタライズ vs レイトレーシング




プリミティブ単位でレンダリング   ピクセル単位でレンダリング




                         画像面
Global Illumination
• 光源から視点に至る光の伝播を物理法則
  に基づきシミュレーション




                 出典: http://graphics.ucsd.edu/~henrik/
Local vs Global

Local                 Global

光線




Local + Local + ・・・ + Local + α = Global
Local Illumination
• 局所的な物体表面に入射した光が、どの
  ように出力されるかを計算


 入射光              出射光
 位置・方向・放射輝度       位置・方向・放射輝度




                     物体表面
光の物理量
 放射エネルギー     Radiant energy      J
 放射束         Radiant flux        W
 放射照度        Irradiance
 放射強度        Radiant intensity
 放射輝度        Radiance

単位時間あたりの
光のエネルギー                      単位立体角あたり
                             の放射束




       単位面積あたり             単位面積・単位立体
       の放射束                角あたりの放射束
Local Illumination
• 局所的な物体表面に入射した光が、どの
  ように出力されるかを計算
 入射光              出射光
 位置・方向・放射輝度       位置・方向・放射輝度




                     物体表面
BSSRDF
• Bidirectional Scattering Surface Reflectance
  Distribution Function
  – 双方向散乱面反射率分布関数
     • 入射した光が出てくる位置と方向の分布を示す
     • 物体内部の光の散乱を考慮




                                  物体表面
BRDF
• Bidirectional Reflectance Distribution Function
  – 双方向反射率分布関数
• BSSRDFを簡略化
• 入射点と出射点が同じ位置




                   物体表面
BRDFを用いたLocal Illumination



    移項して、積分
BRDFモデル
•        を表面特性に応じて自由に設計
    – 物理的な制限
BRDFモデル
• 様々なモデルが提案
 – Phong
 – Phong-Blinn
 – Trans-Sparraw
 – Oren-Nayer
 – Ward
 – Poulin-Fournier
 – Schlick
最も単純なBRDFモデル




           Diffuse   Specular



反射の強さの分布
Diffuse(拡散反射)

半球状のどの方向に対しても、同じ放射輝度で反射




      入射方向・出射方向に依存しない定数
Specular(完全鏡面反射)
入射角と面、反射角と面の角度が同じとなる反射
屈折
異なる物体間の特性の違いによって発生
実は反射の特殊な場合に起こる現象

          入射角により、一部反射・一部屈折
          も起こり得る(フレネル反射)
Local vs Global

Local                 Global

光線




Local + Local + ・・・ + Local + α = Global
レンダリング方程式




     どうやって求める?
レンダリング方程式




 具体的にはどのように計算する?
言い換えると
グローバルイルミネーションとは、




1. この積分を正確かつ効率的に求めること
2. BRDFを尤もらしく設定すること
レンダリング方程式の解法
• 古典的レイトレーシング
• モンテカルロレイトレーシング
 – パストレーシング
 – 双方向パストレーシング
 – メトロポリス光輸送法
• フォトンマッピング
古典的レイトレーシング




    出典: http://graphics.ucsd.edu/~henrik/
古典的レイトレーシング
• 視点から反対向きに光線を追跡
 – 拡散反射:放射輝度を計算し、追跡を終了
 – 鏡面反射:反射方向に光線を追跡
拡散面における放射輝度



光源からの直接光のみを考慮して近似


      定数    可視関数:
            光源が見えていれば、1
             見えていなければ、0
古典的レイトレーシング




    出典: http://graphics.ucsd.edu/~henrik/
問題点
 • 間接照明を考慮していない
近似(古典的レイトレーシング)   実際




    直接光が届かなくても、間接的に光は届く
間接照明
真面目に解くことを考える




入射する放射輝度の分布が複雑であるため、解析的
に求めることは極めて困難
モンテカルロ法
• ランダムサンプリングに基づく数値計算
  手法
 – 例:面積の計算
  • 大量のサンプルをランダムに散布
  • 領域内に入っているかどうかの判定は可能
モンテカルロレイトレーシング
• 半球状に光線をサンプリング
 – 各光線は再帰的にサンプリング




     サンプリングした光線の放射輝度の総和で近似
モンテカルロレイトレーシング
• 単純にサンプリングすると計算量が爆発

      計算量




近似の精度を落とさず、計算量をいかに削減するか
モンテカルロレイトレーシング
• パストレーシング
• 双方向パストレーシング
• メトロポリス光輸送法
パストレーシング
• 同じピクセルを通り、光源へ至る経路を
  ランダムに多数生成
• 各経路から得られる放射輝度を平均して、
  画素の値を求める
パストレーシング




   出典: http://graphics.ucsd.edu/~henrik/
古典的レイトレーシング vs パストレーシング




             出典: http://graphics.ucsd.edu/~henrik/
パストレーシング
• 利点
 – 視点から光源に至る経路を全て扱うことがで
   きるため、レンダリング方程式を完全に解く
   ことができる


• 欠点
 – 十分高精度に近似するためには多数のサンプ
   リングが必要
   • レンダリング時間が莫大
パストレーシングの欠点
 • 偏った経路が存在する場合に弱い




出典: http://graphics.ucsd.edu/~henrik/
双方向パストレーシング
• 光源の方からも経路をランダムに生成
• 光源からの経路上の点から、視点からの
  経路上の点へ放射輝度を伝播
メトロポリス光輸送法
• 生成した経路をランダムに摂動させるこ
  とで、新しい経路を作成
 – 尤もらしい経路ならば採用して更に繰り返し
 – 尤もらしくない経路ならば棄却
メトロポリス光輸送法
• 小さな穴が含まれるシーンに有効
フォトンマッピング
• 2段階の追跡手法
 – 1段階目:光源からフォトン(光子)を散布
 – 2段階目:視点から光線追跡し、フォトンから
   放射輝度を算出




              フォトン
パストレーシング vs フォトンマッピング


     数十時間                               15秒




            出典: http://graphics.ucsd.edu/~henrik/
オープンソース
• YafRay
• Cycles
• Vidro(http://www.vidro-project.com/)
製品
•   Mental-ray(mental images GmbH)
•   V-Ray(Chaos Group)
•   Maxwell Render(Next Limit S.L.)
•   lucile(Fixstars Corp.)
    – http://www.fixstars.com/ja/lucille/
今回話さなかった内容
• 確率的サンプリングの詳細
    – 重点サンプリング
    – 層化サンプリング
•   放射照度キャッシング
•   ボリュームレンダリング
•   パーティシペイティングメディア
•   レンダラの実装法

More Related Content

PPTX
BRDFモデルの変遷
PDF
フォトンマッピング入門
PDF
SSII2018TS: 3D物体検出とロボットビジョンへの応用
PPTX
空撮画像技術と3次元リアルタイムデータの可視化について
PDF
ORB-SLAMを動かしてみた
PDF
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
PDF
Open3DでSLAM入門 PyCon Kyushu 2018
PDF
【メタサーベイ】Neural Fields
BRDFモデルの変遷
フォトンマッピング入門
SSII2018TS: 3D物体検出とロボットビジョンへの応用
空撮画像技術と3次元リアルタイムデータの可視化について
ORB-SLAMを動かしてみた
NDTスキャンマッチング 第1回3D勉強会@PFN 2018年5月27日
Open3DでSLAM入門 PyCon Kyushu 2018
【メタサーベイ】Neural Fields

What's hot (20)

PDF
20090924 姿勢推定と回転行列
PDF
3次元レジストレーション(PCLデモとコード付き)
PPTX
OpenVRやOpenXRの基本的なことを調べてみた
PPTX
shared_ptrとゲームプログラミングでのメモリ管理
PDF
SLAMチュートリアル大会資料(ORB-SLAM)
PDF
【CVPR 2019】DeepSDF: Learning Continuous Signed Distance Functions for Shape R...
PDF
30th コンピュータビジョン勉強会@関東 DynamicFusion
PDF
SLAM入門 第2章 SLAMの基礎
PDF
LiDAR点群と画像とのマッピング
PPTX
【DL輪読会】"Instant Neural Graphics Primitives with a Multiresolution Hash Encoding"
PDF
第126回 ロボット工学セミナー 三次元点群と深層学習
PDF
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
PPTX
backbone としての timm 入門
PDF
[DL輪読会]A Higher-Dimensional Representation for Topologically Varying Neural R...
PPT
BRDF レンダリングの方程式
PDF
フーリエ変換と画像圧縮の仕組み
PPTX
20160724_cv_sfm_revisited
PDF
ConvNetの歴史とResNet亜種、ベストプラクティス
PDF
【Unity】より良い表現のためのライティング戦略
20090924 姿勢推定と回転行列
3次元レジストレーション(PCLデモとコード付き)
OpenVRやOpenXRの基本的なことを調べてみた
shared_ptrとゲームプログラミングでのメモリ管理
SLAMチュートリアル大会資料(ORB-SLAM)
【CVPR 2019】DeepSDF: Learning Continuous Signed Distance Functions for Shape R...
30th コンピュータビジョン勉強会@関東 DynamicFusion
SLAM入門 第2章 SLAMの基礎
LiDAR点群と画像とのマッピング
【DL輪読会】"Instant Neural Graphics Primitives with a Multiresolution Hash Encoding"
第126回 ロボット工学セミナー 三次元点群と深層学習
3次元レジストレーションの基礎とOpen3Dを用いた3次元点群処理
backbone としての timm 入門
[DL輪読会]A Higher-Dimensional Representation for Topologically Varying Neural R...
BRDF レンダリングの方程式
フーリエ変換と画像圧縮の仕組み
20160724_cv_sfm_revisited
ConvNetの歴史とResNet亜種、ベストプラクティス
【Unity】より良い表現のためのライティング戦略
Ad

Viewers also liked (17)

PDF
物理ベースの絵作りのための基礎
PPTX
なぜなにリアルタイムレンダリング
PDF
Physics Tutorial, GPU Physics (GDC2010)
PDF
Introduction to Monte Carlo Ray Tracing (CEDEC 2013)
PDF
Introduction to Bidirectional Path Tracing (BDPT) & Implementation using Open...
PDF
双方向パストレーシングレンダラedubpt解説
PDF
Introduction to Monte Carlo Ray Tracing, OpenCL Implementation (CEDEC 2014)
PDF
Forward+ (EUROGRAPHICS 2012)
PDF
物理ベースレンダラedupt解説
PDF
UE4背景アーティスト勉強会(前編) 背景ワークフロー解説
PPTX
[CGWCC2016] UE4でリギング
PPTX
Substanceのちょっといい話
PPTX
オックスフォード図書館制作奮闘記
PDF
CEDEC2015講演 チーム開発をスムーズにするために
PDF
『THE COMPREHENSIVE PBR GUIDE – Vol. 2: Practical guidelines for creating PBR ...
PDF
3DCGMeetup08_MayaRigSystem_mGear
PDF
『THE COMPREHENSIVE PBR GUIDE Volume 1: The Theory of PBR by Allegorithmic』私家訳版
物理ベースの絵作りのための基礎
なぜなにリアルタイムレンダリング
Physics Tutorial, GPU Physics (GDC2010)
Introduction to Monte Carlo Ray Tracing (CEDEC 2013)
Introduction to Bidirectional Path Tracing (BDPT) & Implementation using Open...
双方向パストレーシングレンダラedubpt解説
Introduction to Monte Carlo Ray Tracing, OpenCL Implementation (CEDEC 2014)
Forward+ (EUROGRAPHICS 2012)
物理ベースレンダラedupt解説
UE4背景アーティスト勉強会(前編) 背景ワークフロー解説
[CGWCC2016] UE4でリギング
Substanceのちょっといい話
オックスフォード図書館制作奮闘記
CEDEC2015講演 チーム開発をスムーズにするために
『THE COMPREHENSIVE PBR GUIDE – Vol. 2: Practical guidelines for creating PBR ...
3DCGMeetup08_MayaRigSystem_mGear
『THE COMPREHENSIVE PBR GUIDE Volume 1: The Theory of PBR by Allegorithmic』私家訳版
Ad

Similar to Global Illumination (11)

PDF
SSII2018TS: コンピュテーショナルイルミネーション
PPTX
SSII2020TS: 物理ベースビジョンの過去・現在・未来 〜 カメラ・物体・光のインタラクションを モデル化するには 〜
PPTX
CG2013 13
PDF
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
PPTX
[解説スライド] NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
PDF
ECCV読み会 "Materials for Masses: SVBRDF Acquisition with a Single Mobile Phone ...
PPTX
20160612 関東cv勉強会 sumisumithパート
PPT
Sig gtu
PPT
2008年6月21日倉地紀子講演「SIG-GT11 『CG Magic:レンダリング』に見るレンダリングの最新事情」資料
PDF
シェーダ勉強会 第2回 Phong モデルとテクスチャマッピング
PDF
CEDEC 2012 実践!シネマティックレンズエフェクト
SSII2018TS: コンピュテーショナルイルミネーション
SSII2020TS: 物理ベースビジョンの過去・現在・未来 〜 カメラ・物体・光のインタラクションを モデル化するには 〜
CG2013 13
[DL輪読会]NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
[解説スライド] NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
ECCV読み会 "Materials for Masses: SVBRDF Acquisition with a Single Mobile Phone ...
20160612 関東cv勉強会 sumisumithパート
Sig gtu
2008年6月21日倉地紀子講演「SIG-GT11 『CG Magic:レンダリング』に見るレンダリングの最新事情」資料
シェーダ勉強会 第2回 Phong モデルとテクスチャマッピング
CEDEC 2012 実践!シネマティックレンズエフェクト

Global Illumination