Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Lens Tracing
Search
yumcyawiz
May 17, 2020
Science
0
130
Lens Tracing
LT slide for OSK May LT
yumcyawiz
May 17, 2020
Tweet
Share
More Decks by yumcyawiz
See All by yumcyawiz
rtcamp 10 (vk-illuminati)
yumcyawiz
1
330
ReSTIRの数理と実装 (rtcamp10)
yumcyawiz
1
920
fredholm(rtcamp9)
yumcyawiz
0
110
フォトンマッピングをパス空間から考える
yumcyawiz
0
400
fredholm
yumcyawiz
0
270
Introduction to volume rendering
yumcyawiz
0
2.1k
OSK#p-ray2020年度講義: 古典的レイトレーサーの実装
yumcyawiz
0
260
Ray Tracing: Overview
yumcyawiz
7
1.2k
GLSLでパストレーシングしてコーネルボックスを出す
yumcyawiz
0
500
Other Decks in Science
See All in Science
大規模言語モデルの論理構造の把握能力と予測モデルの生成
fuyu_quant0
0
120
As We May Interact: Challenges and Opportunities for Next-Generation Human-Information Interaction
signer
PRO
0
430
学術講演会中央大学学員会大分支部
tagtag
0
130
Healthcare Innovation through Business Entrepreneurship
clintwinters
0
200
[第62回 CV勉強会@関東] Long-CLIP: Unlocking the Long-Text Capability of CLIP / kantoCV 62th ECCV 2024
lychee1223
1
890
多次元展開法を用いた 多値バイクラスタリング モデルの提案
kosugitti
0
280
Causal discovery based on non-Gaussianity and nonlinearity
sshimizu2006
0
250
butterfly_effect/butterfly_effect_in-house
florets1
1
160
03_草原和博_広島大学大学院人間社会科学研究科教授_デジタル_シティズンシップシティで_新たな_学び__をつくる.pdf
sip3ristex
0
240
Iniciativas independentes de divulgação científica: o caso do Movimento #CiteMulheresNegras
taisso
0
1.2k
01_篠原弘道_SIPガバニングボード座長_ポスコロSIPへの期待.pdf
sip3ristex
0
270
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
150
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
99
5.4k
Building Applications with DynamoDB
mza
94
6.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
How to Think Like a Performance Engineer
csswizardry
22
1.5k
GraphQLの誤解/rethinking-graphql
sonatard
70
10k
Adopting Sorbet at Scale
ufuk
75
9.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
102
18k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
7
620
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
22
2.6k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
Lens Tracing レイトレで写真レンズを使う @yumcyawiz
Table of contents 1. Introduction 2. 幾何光学の基礎 3. 収差 4.
レンズトレーシング 5. フォーカシング 6. レイのサンプリング 7. レンダリング結果 1
Introduction
レンズトレーシング 複数枚のレンズで構成される光学系をレイトレすること Figure 1: 光路図 2
メリット 写真レンズで撮ったものとほぼ同じ描写が得られる Figure 2: レンダリング結果 3
幾何光学の基礎
薄レンズモデル 非常に薄い単レンズのモデル 収差は 0(現実にはあり得ない) p: 主点 f: 物側焦点 f′: 像側焦点
z y p f f′ 4
薄レンズモデル 焦点距離 l = f′ − p, 物面までの距離 a, 像面までの距離
b レンズの式 1 a + 1 b = 1 l z y a b p f f′ 5
厚レンズモデル 厚みを持った単レンズのモデル p: 物側主点, p′: 像側主点 H: 物側主平面, H′: 像側主平面
z y H H′ p p′ f f′ 6
厚レンズモデル レンズの式が同様に成り立つ 焦点距離 l = f′ − p′ z: 物平面位置,
z′: 像平面位置として 1 z − p − 1 z′ − p′ = 1 l z y H H′ p p′ f f′ 7
レンズ系 複数枚のレンズ系でも入射面、射出面のみに注目して p, f, p′, f′ が同 様に定義される z y
· · · p p′ f f′ 8
近軸近似 上記の議論はレンズを平面として見て行っていた。 レンズが球面の場合、これは z 軸 (光軸) に近い光線のみについて成 り立つので近軸近似と呼ばれる。 z y
9
収差
収差 収差とは結像のずれのことで、収差が存在するとピントを合わせて もボケた状態になる。 現実のレンズでは収差が必ず存在する。 z y 像面 横収差 縦収差 10
ザイデルの 5 収差 収差にはザイデルの 5 収差と呼ばれる次の 5 つがある。 • 球面収差
• コマ収差 • 非点収差 • 像面湾曲 • 歪曲収差 また、光の分散による色収差も存在する。 11
球面収差 レンズが球面であるために発生する収差 z y 像面 12
コマ収差 軸外から来る光が一点に収束しない収差 彗星の尾のような形に見えるためそう呼ばれる z y 像面 13
非点収差 軸外から来る光に対し、X 方向と Y 方向で焦点距離にずれがあること で起こる収差 14
像面湾曲 像面が平面とならず、湾曲してしまっていること z y 像面 15
歪曲収差 撮影した物体が歪んだ形になってしまうこと 16
色収差 波長による屈折率の違いから発生する収差 z y 像面 17
レンズトレーシング
レンズの種類 レンズには以下の 2 種類がある • 球面レンズ • 非球面レンズ ここでは球面レンズのみについて考える 以下では特定の波長ごとにレンズトレーシングすることを考える
18
レンズの表現 r: 曲率半径 (curvature radius) h: 開口半径 (aperture radius) d:
次の要素までの距離 (thickness) z y 像面 第 1 面 第 2 面 r1 c1 h1 d1 r2 c2 h2 d2 19
レンズ系の表現 レンズ系は次のような表形式データとして表現できる Index r h ior d 0 29.475 25.2
1.67 3.76 1 84.83 25.2 1 0.12 2 19.275 23 1.67 4.025 . . . . . . . . . . . . . . . Table 1: レンズ系の表現 r = 0 のときは絞りとする 20
レンズ系の表現 Figure 3: ダブルガウス型レンズ 21
レンズトレーシング レンズトレーシングは次のような処理を繰り返すことで行われる 1. レンズとの衝突位置を計算 2. 衝突位置が範囲外なら終了 3. フレネル反射率を計算し、ロシアンルーレットで反射か屈折か 決める 4.
反射なら反射方向を計算し, 次のレイを生成 5. 屈折なら屈折方向を計算し, 次のレイを生成 (全反射なら反射さ せる) 22
レンズとの衝突位置の計算 球面とレイの衝突計算を行えばよい. ∥⃗ o + t⃗ d −⃗ c∥2 =
r2 を t について解く. 得られた t で衝突位置 ⃗ p = ⃗ o + t⃗ d を計算する. p2 x + p2 y ≤ h2 であればレンズ面上に衝突点がある. 23
波長ごとの屈折率の計算 Sellmeier の式を用いて計算できる n2 = 1 + ∑ i Biλ2
λ2 − Ci ある光学ガラスに対応する係数 Bi, Ci の値 がhttps://refractiveindex.info/にたくさんある 24
フレネル反射率の計算 Schlick の近似式を計算 F(θ) = F0 + (1 − F0)(1
− cos θ)5 F0 = ( n1 − n2 n1 + n2 )2 25
屈折方向の計算 お馴染みだと思うので省略 実装する上では前面の ior を何らかの方法で覚えておく必要がある 26
フォーカシング
フォーカシング レンズ系を z = zf にピント合わせすることを考える. ピント合わせはレンズ系全体を δ だけ動かすことで行う. 27
フォーカシング 厚レンズ近似で考えると, レンズの式で z = zf , z′ = 0
として 1 zf − p + δ + 1 −p′ + δ = 1 l これを解いて δ = 1 2(p − zf + p′ − √ (p − zf − p′ )(p − zf − 4l − p′ ) 28
主要点の計算 p, f, p′ , f′ は微小な y で光軸に平行な光線を入射し、レンズトレーシ ングを行って得られる出射光線から計算できる
29
レイのサンプリング
レイのサンプリング レイトレでレンズ系を使うために、像面から物空間に出ていくレイ をサンプリングする方法について考える 30
射出瞳 像面から見た絞りの像を射出瞳という z y 像面 射出瞳 31
射出瞳の計算 最後尾にあるレンズ面全体をグリッド分割して、各グリッドに飛ば したレイがレンズ系を通過できるかどうか調べればよい. これは計算量が多いので事前計算しておく. z y 像面 32
射出瞳の計算 射出瞳の形は厳密に求める必要はなく, Bounding Box で覆えれば十 分 33
射出瞳の計算 射出瞳は像面上の点一つ一つについて形が変わる. しかしレンズ系が軸対称なので全部を計算する必要はない. 対角線上の射出瞳のみを計算しておけば, 他のものはそこから選んで くることができる. 34
レイのサンプリング 次のような手順でレイをサンプリングする 1. 像面上の位置に対応する射出瞳の Bounding Box を選ぶ 2. Bounding Box
から点をサンプリングする 3. サンプリングした点に向ってレイを飛ばす 35
p.d.f. の計算 面積 A のバウンディングボックスから一様にサンプリングすると, 面 積に関する p.d.f. は pA
= 1 A 像面からサンプリング点までの距離を r, 生成したレイと z 軸のなす 角を θ とすると, 立体角に関する p.d.f. は p σ = r2 cos θ pA 36
像面への寄与の計算 像面は放射束を測定しているので, サンプリングしたレイが持つ放射 輝度を L とすると, 加算する寄与 C は C
= L cos θ p σ = L cos θ r2 cos θ 1 A = LA cos2 θ r2 37
レンダリング結果
レンズ 焦点距離 22mm の広角レンズを使用 Figure 4: 22mm 広角レンズ 38
レンダリング結果 レンズフレア, 色収差あり Figure 5: レンダリング結果 39
色収差の比較 (a) 色収差なし (b) 色収差あり 40
レンズフレアの比較 (c) レンズフレアなし (d) レンズフレアあり 41
50mm ダブルガウス 焦点距離 50mm のダウブルガウス型レンズ Figure 6: 50mm ダブルガウス型レンズ 42
レンダリング結果 色収差あり, レンズフレアなし Figure 7: レンダリング結果 43
10mm 魚眼 焦点距離 10mm の魚眼レンズ Figure 8: 10mm 魚眼レンズ 44
レンダリング結果 色収差あり, レンズフレアなし Figure 9: レンダリング結果 45
Reference References LTD CYBERNET SYSTEMS CO. 光学総合サイト. url: https://www.cybernet.co.jp/optical/. Wenzel
Jakob Matt Pharr and Greg Humphreys. Physically Based Rendering: From Theory To Implementation. url: http://www.pbr-book.org/. 松居 吉哉. レンズ設計法. 共立出版, 2018. isbn: 978-4-320-03607-9. 46
The End Thank you for listening. 47