Skip to content
Go back

Making Your Bokeh Fascinating

· Updated:

doi web

拙訳

はじめに(Introduction)

  • 基本的なアイデアと理論[Kawase 2008Kawase, M. 2008. レンダリスト養成講座2.0 〜光学に基づいたボケ味の表現〜. Computer Entertainment Developers Conference. https://cedil.cesa.or.jp/cedil_sessions/view/118.]
    • 円形絞りのみ
  • 実践的な実装と最適化[Kawase 2012Kawase, M. 2012. 実践!シネマティックレンズエフェクト. Computer Entertainment Developers Conference. https://cedil.cesa.or.jp/cedil_sessions/view/876.]
    • 任意の絞り形状の種類

ペンシルマップの生成(Creating the Pencil Map)

  • 収差ダイアグラムから光路light pathを事前計算する
    • 球面色収差や軸上色収差を計算に入れる

縦収差ダイアグラム → 光路がペンシルマップを作る(少数の光線) → ペンシルマップ

円形ボケレンダリング(Circular Bokeh Rendering)

  • V座標は光軸からの距離を表す
    • 各スライスを円にマッピングすることで円形の’ボケ’を生成する

U:レンズからの距離。V:光軸からの距離。

離散化された結果…(Discretized Result…)

  • 色収差が問題に
  • 3つの波長(R/G/B)では分散を表現するのに不十分

波長サンプリングの増加(Increasing Wavelength Samplings)

  • より多くの波長でマップを計算する
  • RGB空間に変換する

球面および色収差におけるボケ(Bokeh with Spherical and Chromatic Aberration)

  • 不完全なフォーカス
  • 赤の鋭いエッジを持つ前ボケ
  • 青の柔らかいエッジを持つ後ボケ

ダブレットのペンシルマップの生成(Creating the Pencil Map of Doublet)

  • 縦収差ダイアグラムからマップを計算する
  • 実際のレンズパラメータを使う(それらが存在すれば)
    • 各波長の光線経路のみが必須とされる

縦収差ダイアグラム → 光路がペンシルマップを作る → ペンシルマップ

写真との比較(Comparison with photographs)

  • 一般的な補正
    • 前ボケは柔らかい紫のエッジを持ち、中心が暗くなる
    • 後ボケは鋭い緑のエッジを持ち、中心が明るくなる

異なるダブレットのタイプ(Different Type of Doublet)

  • 残存色収差は残存球面収差より見えやすい

縦収差ダイアグラム → 光路がペンシルマップを作る → ペンシルマップ

ペンシルマップの最適化(Optimization of Pencil Map)

  • テクスチャでの無駄な部分
    • 疎で、多くのテクセルが空白である
    • より重要な’焦点が合う’テクセル周辺の精度が十分でない
  • 最大の高さ(ボケのサイズ)によってすべての距離(U軸)でかたまりbundleの高さを正規化する
  • 空白のテクセルが少なくなり、焦点が合うテクセル周辺の精度が大きく改善する

球面レンズ(補正なし)

非球面レンズ(色収差補正なし)

非球面ダブレットレンズ

非球面ダブレットレンズ(別種)

アポクロマティック(APO)レンズ

完璧なレンズ(実在しない)

任意の絞り形状への応用(Application to Arbitrary Aperture Shapes)

様々な絞り形状(Various Aperture Shapes)

  • 絞り形状は重要な芸術的ファクタである
    • 一般的に、5から9枚の絞り羽根diaphragm blades
    • 円形roundedからN角形に変化する
  • どうやってペンシルを多角形の絞り形状にマップするか?
    • 3Dテクスチャ?
      • 大きすぎるし、実践的ではない

ペンシルマップの間接参照(Indirect Reference of Pencil Map)

  • ペンシルマップのV座標を格納するLUTテクスチャを事前計算する
  • ランタイムでペンシルマップを間接的にサンプルする
  • LUTは絞りの形状を決定する
    • ペンシルマップに依存しない
    • 絞り羽根の曲がった形状を再生成できる
      • 様々な絞り条件のためのLUT一式を準備する
    • 星やハートといった他の形状も用いることができる

様々なLUT(Various LUTs)

  • 開き具合opening levelsや絞り羽根の数ごとに
  • 2つの隣接するLUT間を補間することで滑らかな変形が可能である

デバッグのためのシルエットのLUT(Silhouette LUTs for debug)

散乱か収集か?(Scattering or Gathering?)

両方実装できる(Both can be Implemented)

  • 散乱によるほうが品質が良い
    • 処理負荷が高い
  • ハイブリッドな手法が推奨される
    • 散乱と収集の両方

ハイブリッドな手法(Hybrid Method)

  • ピクセルを散乱するか収集するかを決定するため、以下を使う
    • CoCサイズ
    • 近傍ピクセル間の輝度差

最適化(Optimization)

  • 散乱には半分の解像度のバッファを使う
    • 散乱処理が16倍速くなる可能性がある
  • 階層的な解像度のバッファでいくつかのパスに処理を分割する
    • 大きなボケには低い解像度を使う
    • 1/4x1/4の解像度での処理が256倍速くなる可能性がある
  • 各解像度で比較的大きなボケには2x2ピクセルごとに1ピクセルを散乱する
    • 特に処理負荷の高いピクセルが4倍速くなる可能性がある

曲がった絞りと光学の口径食(Curved Diaphragm and Optical Vignetting)

  • 開く/閉じる
    • 変形
      • 円形絞り
      • 多角形絞り
    • 回転
    • 光学口径食
      • 猫目効果

様々な収差と補正(Various Aberrations and Corrections)

  • 球面収差SA軸上色収差axial CAの補正はボケに主に影響を与える

結論(Conclusion)

  • ペンシルマップとLUTでフォトリアリスティックなボケを再生成する
    • ペンシルマップはボケの特徴を定義する
    • LUTはボケの形状を定義する
  • 最適化
    • 様々な選択肢が利用可能
    • パフォーマンスを改善するために組み合わせて用いることができる