Global Illumination-Aware Stylised Shading (2021) 

### Global Illumination-Aware Stylised Shading (Doi, 2021) 

#### Q:この論文の概要を教えてください
#### A:
本論文では、シーン全体の光の散乱を考慮した、グローバルイルミネーションに対応した新たな様式化シェーディング手法を提案しています。 既存のスタイル化手法では表現できなかった、ソフトシャドウやコースティクスなどのグローバルイルミネーション効果を、1次元テクスチャを用いて再現します。 具体的には、レイトレーシングにおける色再マッピング（ACP）と、テクスチャ値の忠実度（FTV）という2つの手法を提示しています。 これらの手法は、オブジェクトの色を任意の色彩に変換し、周囲のオブジェクトへの反射も考慮することで、イラストやセルアニメーションのような表現を可能にします。 ACPはパス上の色を変換し、FTVはオブジェクトの放射をテクスチャの色のみに限定します。 比較実験により、提案手法が既存の手法よりもグローバルイルミネーションの効果をより良く再現できることが示されています。

#### Q:この研究の主要な貢献を大きく3つ挙げよ
#### A:
この研究の主要な貢献は、以下の3点に大きくまとめられます。

*   **グローバルイルミネーションを考慮した**1Dテクスチャを使用する2つの**色再マッピング手法**（ACPとFTV）を提案したこと。これにより、オブジェクト間の反射や屈折など、シーン全体の光の相互作用を考慮したスタイル化されたシェーディングが可能になりました。
*   既存の手法と比較して、**グローバルイルミネーションの再現性が向上**していることを示したこと。特に、コースティクスやソフトシャドウなど、従来の手法では難しかった照明効果を再現できることが示されています。
*   ACPとFTVはそれぞれ異なる特徴を持つこと。
    *   ACPでは、変換された色がパス tracingにおける次の交点の色に影響を与えます。
    *   FTVでは、最終的な画像に指定された入力テクスチャの色のみが含まれます。
    *   FTVは、オブジェクトの放射輝度を後から変換できる効果的なPPMベースの計算を含んでいます。

これらの貢献により、3Dコンピュータグラフィックスにおけるスタイル化されたレンダリングの可能性が広がり、アーティストはより自由な表現が可能になると考えられます。


#### Q:この研究は、グローバルイルミネーションを考慮したスタイライズシェーディングの分野で、どのような位置を占めるのか？
#### A:
この研究は、グローバルイルミネーションを考慮したスタイライズシェーディングの分野において、既存の手法では表現できなかった**間接光の影響を再現できる**という点で重要な位置を占めています。

*   既存のスタイライズシェーディング手法では、オブジェクトの色をユーザーが定義したいくつかの色段階に変換するものが一般的でしたが、シーン内の光の相互作用、例えば**色のにじみやソフトシャドウ**などを再現することが困難でした。特に、光がガラスを通過する際に生じる**コースティクス**など、視覚的に光の相互作用が重要なシーンには適用できませんでした。
*   この研究では、**ACP (Colour Remapping that Affects the Colour on a Path Trace)** と **FTV (Fidelity for Texture Values)** という2つの新しいカラーリマッピング手法を提案しています。これらの手法は、1次元テクスチャを使用し、グローバルイルミネーションを計算することで、オブジェクト間の**反射や屈折**を考慮に入れたスタイライズシェーディングを可能にします。
*   **ACP**では、パス上の以前の交点でのリマップされた色が次の交点に影響を与え、**FTV**では、結果の画像に指定された入力テクスチャの色のみが含まれます。また、FTVは、オブジェクトの放射輝度を後から変換できる効果的なPPM (Progressive Photon Mapping) ベースの計算を含んでいます。
*   既存の**アーティスティックなイルミネーション編集**手法は、ライトトランスポートパスを幾何学的に制御するものでしたが、この研究の手法は、パスを修正せずに、物理的に基づいた放射輝度を指定された色のグラデーションに置き換えます。また、既存の**マテリアルデザイン**手法は、ユーザーが定義した任意の色でのグローバルイルミネーションを考慮していませんでした。
*   この研究は、**セルアニメ**や**イラスト**でよく見られるスタイルを3Dコンピュータグラフィックスで再現するために、グローバルイルミネーションを考慮した新しいアプローチを提供し、より**リアルな光の表現**を可能にしました。
*   この研究で提案された**ACP**と**FTV**という二つの手法によって、非写実的な色であっても、間接光による影響を考慮した描画が可能になります。例えば、あるオブジェクトの色が別のオブジェクトに反射したり、コースティクスやソフトシャドウがテクスチャの色と連動して表現されるようになります。

この研究は、既存のスタイライズシェーディング手法の限界を克服し、グローバルイルミネーションの効果をより忠実に再現することで、**非写実的なレンダリングの表現力**を向上させるという点で、重要な貢献をしています。


#### Q:ACPとFTVそれぞれについてどのような手法か詳しく説明せよ
#### A:
ACP（Colour Remapping that Affects the Colour on a Path Trace）とFTV（Fidelity for Texture Values）は、**グローバルイルミネーションを考慮したスタイル化シェーディング**を実現するための2つの異なる手法です。どちらの手法も、オブジェクトの外観を任意のカラーに変換することを目的としていますが、そのアプローチと計算方法には違いがあります。

### ACP（Colour Remapping that Affects the Colour on a Path Trace）

*   **概要**：
    *   ACPは、**パストレーシング（PT）**をベースにした手法で、**オブジェクトの放射輝度をテクスチャ値に変換**します。
    *   これにより、ユーザーは1Dテクスチャを使用して色を指定することで、シェーディングをスタイル化できます。
    *   ACPでは、**パスが複数のオブジェクトを通過する場合、前の交点でのリマップされた色が次の交点に影響を与えます**。
*   **計算方法**：
    1.  ピクセルからトレースされたパスとシーンとの最初の交点を決定します。
    2.  1つの入射方向をサンプリングして放射輝度を推定します。
    3.  交点がリマッピングオブジェクト上にある場合、放射輝度をテクスチャ値に変換し、重み\(w\)を計算します。
    4.  テクスチャ値に\(w\)を掛けて放射輝度を求めます。
    5.  すべてのサンプルパスのリマップされた放射輝度を積分します。
*   **特徴**：
    *   ACPは、**各サンプルパスの推定された放射輝度に非線形なテクスチャ変換を適用**するため、レンダラーの実装に依存した結果になる可能性があります。
    *   ただし、**単一のパスに焦点を当て、入力カラーに対して滑らかな補間結果を提供**するため、ユーザーにとって好ましい手法となる場合があります。
    *   **他のオブジェクトへの反射をより良く再現**します。
    *   色変換はPTのマテリアル評価の中で実行されるため、計算量は従来のPTと同程度です。
*   **制限事項**：
    *   サンプラーの分散と、インポータンスサンプリング中の非線形な色変換により、割り当てられたテクスチャ値が混ざり合い、結果が損なわれる可能性があります。
    *   量子化されたテクスチャを適用すると、明確な境界線ではなく、ぼやけた境界線が生成される可能性があります。
*   **数式**：
    *   放射輝度の計算 \:
        *   \(L_p(x, \omega_o) = L_e(x, \omega_o) + \int_{S^2} f(x, \omega_i, \omega_o) L_i(x, \omega_i) |n(x) \cdot \omega_i| d\sigma(\omega_i)\)
    *   モンテカルロ推定 \:
        *   \(\langle L_p \rangle = L_e(x, \omega_o) + \frac{f(x, \omega_i, \omega_o) L_i(x, \omega_i) |n(x) \cdot \omega_i|}{p(\omega_i)}\)
    *   リマップされた放射輝度 \:
        *   \(L_{NP} = \int_{S^2} w t(u) p(\omega_i) d\sigma(\omega_i)\)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/8079b0fb-92ab-48d4-b6db-7ba3436a68fa.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/ab265e7c-f90f-4fc4-ac44-b837d229a9d7.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/e30a3f39-d80b-4a19-ab0d-e8de490c3272.png)

### FTV（Fidelity for Texture Values）

*   **概要**：
    *   FTVは、**PPM（Progressive Photon Mapping）**をベースにした手法で、**オブジェクトの放射輝度を推定し、それをテクスチャ値に変換**します。
    *   FTVでは、**結果の画像には指定された入力テクスチャの色のみが含まれます**。
    *   **表面から放射される光の色変換に重点**を置いています。
*   **計算方法**：
    1.  **レイ tracingフェーズ**：視点からシーンへパスをトレースし、各パスについて、リマッピングオブジェクト上にある1つのリマッピング頂点を記録します。
    2.  **フォトン tracingフェーズ**：光源から任意のパスに沿ってフォトンをトレースし、レイ tracingフェーズで保存されたリマッピング頂点における輝度を推定します。
    3.  **累積フェーズ**：各リマッピング頂点について、割り当てられたテクスチャを使用して輝度を変換し、対応するピクセルに加算します。
    4.  **非ターゲットパスの計算**：PTを使用して、すべての非ターゲットパスの貢献度を、ターゲットパスとは別に計算します。
    5.  **最終的な画像の合成**：すべてのコンポーネントを合計して、最終的な画像を取得します。
*   **特徴**：
    *   FTVは、**PPMベースの計算**を含んでおり、**オブジェクトの放射輝度を後から変換**できます。
    *   ターゲットパスが複数のリマッピングオブジェクトを通過する場合、レイトレーシング段階で1つのリマッピングオブジェクトに分類されます。
    *   グローバルイルミネーション効果の再現において、既存の手法よりも優れています。
*   **制限事項**：
    *   複数のリマッピングオブジェクトが存在する場合、1つのパスにつき1つのリマッピングオブジェクトしか選択できないため、複雑なシーンでは表現力が制限される可能性があります。
    *   重要度の高いパスに対するインポータンスサンプリングは、必ずしも効果的ではありません。
    *   一度リマッピングセットが決定されると、後の段階で変更することはできません。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/b6c25ec0-676e-452d-8743-68451eb97bcf.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/31b3f926-20a9-41af-9c52-b63dc755b115.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/2f0e4117-c8d6-4b44-95cd-d3964520bdd3.png)

### ACPとFTVの比較

| 項目             | ACP                                                                                                                                 | FTV                                                                                                                                                                                                                                                                                                                                            |
| :--------------- | :---------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ベース           | パストレーシング（PT）                                                                                                             | プログレッシブフォトンマッピング（PPM）                                                                                                                                                                                                                                                                                                          |
| 色変換           | パス上の各交点で放射輝度をテクスチャ値に変換                                                                                                                | 放射輝度を推定し、テクスチャ値に変換                                                                                                                                                                                                                                                                                                 |
| テクスチャ       | 1Dテクスチャを使用                                                                                                                   | 1Dテクスチャを使用                                                                                                                                                                                                                                                                                                                          |
| 結果の色の特徴     | 中間色が生じる                                                                                                                       | 入力テクスチャの色のみ                                                                                                                                                                                                                                                                                                                        |
| 計算コスト         | PTと同程度                                                                                                                          | より高い                                                                                                                                                                                                                                                                                                                                     |
| 複数のオブジェクト | 色変換が連鎖的に影響                                                                                                                   | 1つのパスにつき1つのオブジェクトを選択                                                                                                                                                                                                                                                                                                               |
| 向き             | すべてのパスをリマッピングすることに重点                                                                                                                  | 表面から放射される光をリマッピングすることに重点                                                                                                                                                                                                                                                                                                     |
| 特徴             | 単一のパスに焦点を当て、滑らかな補間結果を提供、反射を良く再現                                                                                                                  | 放射輝度を後から変換可能、グローバルイルミネーション効果の再現                                                                                                                                                                                                                                                                                          |
| 制限事項         | テクスチャ値が混ざり合う、量子化テクスチャで境界線がぼやける                                                                                                                   | 複雑なシーンでの表現力が制限される、重要度の高いパスに対するインポータンスサンプリングが効果的ではない、一度リマッピングセットが決定されると変更できない                                                                                                                                                                                                            |
| 参考文献         | \                                                                                             | \                                                                                                                                                                                                                                                                                               |

これらの違いから、ACPは計算コストを抑えつつ、滑らかな色表現や反射の再現に重点を置く場合に適しており、FTVはより多くの計算リソースを必要とするものの、グローバルイルミネーション効果

より正確に再現し、入力テクスチャの色のみを使用したい場合に適していると言えます。


#### Q:ACPとFTVの方法論は、既存のスタイライズシェーディング技術とどのように異なり、優位性を持っているのか？
#### A:
ACPとFTVは、グローバルイルミネーションを考慮した**新しい色再マッピング**の方法です。これらの手法は、既存のスタイライズシェーディング技術とは異なり、シーン全体の光の散乱を考慮してオブジェクトの色を変換することを目的としています。

既存のスタイライズシェーディング手法との違いと優位性：
*   **グローバルイルミネーション効果の再現**：従来のスタイライズシェーディング手法[LMHB00, SMGG01, TAY13, MSGS13, FJL\*16]は、オブジェクトの局所的な情報（光源の方向や視点）に基づいて色を決定するため、**色のにじみやソフトシャドウ**など、シーン全体の光の相互作用を表現することが困難でした。一方、ACPとFTVはグローバルイルミネーションを計算することで、**周囲のオブジェクトからの反射やコースティクス**といった効果を再現し、より**リアルなライティング**を表現できます。図1は、グローバルイルミネーションが重要となる例を示しており、あるキャラクターの髪の色が隣のキャラクターの髪に反射している様子が描かれています。
*   **1Dテクスチャの使用**：ACPとFTVは、1次元（1D）テクスチャを使用して、フォトリアリスティックなシェーディングの変化を表現します。
*   **柔軟な色変換**：ACPでは、パスに沿った前の交点での色変換が次の交点に影響を与えます。FTVでは、結果の画像には指定された入力テクスチャの色のみが含まれます。
*   **既存手法との比較**：
    *   **セルシェーディング**[LMHB00]：光源の方向と法線の内積からテクスチャ値を参照するため、コースティクスを考慮したシーンでは、テクスチャ値がコースティクスのパターンに対応しません。
    *   **画像処理**：レンダリング結果のピクセル値をテクスチャに置き換える画像処理の手法では、屈折を伴うシーンで、入力テクスチャにない色が屈折によって生じる可能性があります。

ACPとFTVは、それぞれ異なる特徴を持っています。ACPは、パストレースにおける**各パスの色変換**に重点を置いており、色が滑らかに変化する表現に適しています。一方、FTVは、**表面から放射される光**の色変換に重点を置いており、指定された入力テクスチャの色のみを使用します。

ただし、ACPとFTVにも**制限事項**があります。ACPでは、サンプラーの分散や非線形な色変換により、テクスチャ値が混ざり合い、境界がぼやけることがあります。FTVでは、複数のリマッピングオブジェクトが存在する場合、1つのパスにつき1つのリマッピングオブジェクトしか選択できないため、複雑なシーンでは表現力が ограниченаされる可能性があります。また、両手法とも、リマッピングオブジェクトのBSDFを後から変更することができません。


#### Q:FTVにおける貢献度計算はどのように行われるか？
#### A:
FTV（Fidelity for Texture Values）における貢献度計算は、主に以下の手順で行われます。

1.  **レイ tracingフェーズ**：
    *   **視点からシーンへパスをtrace**し、各パスについて、**リマッピングオブジェクト上にある1つのリマッピング頂点を記録**します。
    *   各R、G、Bチャネルの減衰率が、各リマッピング頂点とともに保存されます。この減衰率は、サブパスを通過する際の色の減衰を表し、の範囲の値をとります。
    *   拡散反射オブジェクトは自身に割り当てられたテクスチャ値を返し、鏡面反射コンポーネントを持つオブジェクトは反射オブジェクトの色を表示するようにパスを分類します。
2.  **フォトン tracingフェーズ**：
    *   **光源から任意のパスに沿ってフォトンをtrace**し、フォトンマップを作成します。
    *   このフォトンマップを使用して、**レイ tracingフェーズで保存されたリマッピング頂点における輝度を推定**します。推定された輝度は3Dの正の実座標空間に存在し、各リマッピング頂点とともに保存されます。
3.  **累積フェーズ**：
    *   各リマッピング頂点について、**割り当てられたテクスチャを使用して輝度を変換**します。
    *   **テクスチャ値と減衰率の積**を計算し、対応するピクセルに加算します。
4.  **非ターゲットパスの計算**：
    *   **PT（パストレーシング）**を使用して、**すべての非ターゲットパスの貢献度**を、ターゲットパスとは別に計算します。
5.  **最終的な画像の合成**：
    *   **すべてのコンポーネント**（非ターゲットパス、各リマッピングオブジェクトのターゲットパス）**を合計**して、最終的な画像を取得します。

重要な点として、FTVのレイ tracingフェーズは、一般的なフォトンマッピングとは異なり、**最初に拡散オブジェクトに到達した点だけでなく、リマッピングオブジェクトに到達するまでレイ tracingを継続**します。複数のリマッピングオブジェクトを通過するパスの場合、いずれか1つを選択する必要があります。

この手順により、FTVはグローバルイルミネーションの効果を考慮しながら、指定されたテクスチャに基づいてオブジェクトの色を再マッピングし、より写実的な、または様式化されたレンダリングを実現します。


#### Q:FTVは既存のシェーディング法とどう違うか？
#### A:
FTV（Fidelity for Texture Values）は、**グローバルイルミネーション**を考慮した**新しい色再マッピング**の手法であり、既存のシェーディング法とはいくつかの点で異なっています。

FTVと既存のシェーディング法との違い：
*   **グローバルイルミネーションの考慮**：
    *   FTVは、シーン全体の光の散乱を考慮してオブジェクトの色を変換することを目的としています。
    *   既存の多くのスタイライズシェーディング手法[LMHB00, SMGG01, TAY13, MSGS13, FJL\*16]は、オブジェクトの局所的な情報（光源の方向や視点）に基づいて色を決定するため、色のにじみやソフトシャドウなど、シーン全体の光の相互作用を表現することが困難でした。特に、光がガラスを通過する際に生じるコースティクスなど、視覚的に光の相互作用が重要なシーンには適用できませんでした。
    *   FTVはグローバルイルミネーションを計算することで、周囲のオブジェクトからの反射やコースティクスといった効果を再現し、よりリアルなライティングを表現できます。
*   **1Dテクスチャの使用**：FTVは、1次元（1D）テクスチャを使用して、フォトリアリスティックなシェーディングの変化を表現します。
*   **色変換の特徴**：
    *   FTVでは、結果の画像には指定された**入力テクスチャの色のみ**が含まれます。
    *   FTVは、表面から放射される光の色変換に重点を置いています。
*   **既存手法との比較**：
    *   **セルシェーディング**[LMHB00]：光源の方向と法線の内積からテクスチャ値を参照するため、コースティクスを考慮したシーンでは、テクスチャ値がコースティクスのパターンに対応しません。また、周囲の球体や壁を考慮したシェーディングにはなりません。
    *   **画像処理**：レンダリング結果のピクセル値をテクスチャに置き換える画像処理の手法では、屈折を伴うシーンで、入力テクスチャにない色が屈折によって生じる可能性があります。
*   **ターゲットパスの分類**：ターゲットパスが複数のリマッピングオブジェクトを通過する場合、レイトレーシング段階で1つのリマッピングオブジェクトに分類されます。

FTVは、**PPM (Progressive Photon Mapping)** ベースの計算を含んでおり、オブジェクトの放射輝度を後から変換できるという特徴があります。

ただし、FTVには、複数のリマッピングオブジェクトが存在する場合、1つのパスにつき1つのリマッピングオブジェクトしか選択できないため、複雑なシーンでは表現力が制限されるという制限事項があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/cdfefead-0e1c-4c51-94ec-6e422639c48f.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/d730737d-900b-4944-b1ea-61498bb38345.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/c164f08f-2cab-42c0-89fc-74a30b8d7b08.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2981660/2b4eee11-92a4-4813-8875-3765ab9318ff.png)

#### Q:ACPとFTVのアルゴリズムにおける主要な制限は何で、将来の研究はどのように対処できるのか？
#### A:
ACP（Color Remapping that Affects the Colour on a Path Trace）とFTV（Fidelity for Texture Values）のアルゴリズムにおける主な制限と、今後の研究でどのように対処できるかについて説明します。

ACPの制限：
*   **サンプラーの分散**と、**重点サンプリング中の非線形な色変換**により、割り当てられたテクスチャ値が混ざり合い、結果が損なわれる。量子化されたテクスチャを適用すると、ACPは明確な境界線の代わりにぼやけた境界線を生成する。
*   ACPは、**レンダラーの実装に依存して結果が異なる**。これは、各サンプルパスの推定輝度に対して非線形なテクスチャ変換を適用するためで、レンダラーに依存する。
*   計算時間に関して、ACPは従来のパストレーシング（PT）アルゴリズムと同様に、**1つの入射パスのみをサンプリング**する必要があるため、PTとほぼ同じ時間がかかる。

FTVの制限：
*   ターゲットパスが複数のリマッピングオブジェクトを通過する場合、**レイ tracing段階で1つのリマッピングオブジェクトに分類**される。より柔軟にターゲットパスを選択すれば、より複雑なシーンを表現できる可能性がある。
*   **リマッピングセットが決定されると、後の段階で変更できない**。
*   両方の提案手法において、**輝度が推定された後、リマッピングオブジェクトのBSDF（双方向散乱分布関数）を置き換えることができない**。オブジェクトの外観（粗さや屈折率）を変更するには、マテリアルパラメータを変更して再度レンダリングする必要がある。
*   貢献度の大きいパスでの重点サンプリングは、一般的なパス検索手法ほどFTVでは効果的ではない。例えば、色を反転させるテクスチャを適用する場合、最終結果への貢献度が大きい（写真のようにリアルな輝度への貢献度が低い）パスに焦点を当てる必要がある。
*   FTVの実装ではPPM（Progressive Photon Mapping）を使用してリマッピングオブジェクトの輝度を推定するが、**他の輝度推定器も使用できる**。一般的なフォトンマッピング（PPMを含む）は拡散オブジェクト上でのみフォトンを収集するのに対し、FTVはマテリアルに関係なくリマッピングオブジェクト上に交点を配置する。

今後の研究での対処方法：

*   ACPの**テクスチャ値の混合**の問題を解決するために、入力テクスチャの色を正確に表現するための改善が必要である。
*   FTVでは、ターゲットパスの選択をより柔軟にすることで、**より複雑なシーンを表現できる可能性**がある。例えば、奥に反射しているオブジェクトの色の表現を改善するために、ターゲットパスの選択方法を工夫する。
*   FTVにおいて、**リマッピングセットの変更**を可能にすることで、レンダリング後の編集の柔軟性を高めることができる。
*   **BSDF**（双方向散乱分布関数）**の変更**を可能にすることで、オブジェクトの質感や外観をより柔軟に編集できるようになる。
*   **重点サンプリング**において、**貢献度の低いパス**に焦点を当てることで、特定のエフェクト（例えば、色の反転）の品質を向上させることができる。
*   FTVでの**輝度推定**において、**PPM**（Progressive Photon Mapping）**以外の推定器**を使用することで、特に光沢のあるマテリアルに対する効率を改善できる可能性がある。

これらの改善により、ACPとFTVはより多様な芸術的表現を可能にし、ユーザーはより直感的かつ効率的にスタイライズされたレンダリングを作成できるようになるでしょう。