前回は、レンズを通った光がRAW画像として記録され、デモザイク処理によってScene-referred(光基準)になるところまで説明しました。
しかし、この時点ではまだRec.709の映像ではありません。
では、Scene-referred(光基準)からどのようにRec.709(表示基準)の映像にするのでしょうか?
その答えが、表示レンダリング(トーンマッピング)です。
Scene-referred(光基準)が正確に表示できない理由
現実世界には、非常に広い明るさがあります。
- 太陽 : 10000nits
- 白い壁 : 300nits
- 人間の肌 : 80nits
- 黒い服 : 5nits
現実世界には10000nitsを超えるような明るい光も存在します。
一方で、人間の肌は約80nits、黒い服は約5nits程度です。
人間の目は、このような非常に広い明るさの範囲を自然に認識できます。
しかし、通常のSDRディスプレイでは、約100nits程度しか表示することができません。
なぜ100nitsへ収める必要があるのか?
仮に、Scene-referredの広い明るさのまま、100nitsのディスプレイへ表示するとどうなるでしょうか。
太陽は白く飽和し、
暗い部分は潰れ、
人間が現実で感じた明るさとは異なる映像になります。
そのため、明るさをディスプレイで自然に見える範囲へ圧縮する必要があります。
ただ単純に暗くするのではなく、人間が感じた明るさやコントラストの印象をできるだけ維持しながら変換することが重要です。
この処理が、表示レンダリング(トーンマッピング)になります。
10000nits ———-> 現実の光 Scene-referred(光基準)
│
▼
表示レンダリング(トーンマッピング) ———-> 現実の光を、人間が自然に見える映像(光)へ変換する処理
│
▼
100nits ———-> SDRディスプレイ Display-referred(表示基準)
ディスプレイで自然に見える映像へ変換することが目的です。
表示レンダリング(トーンマッピング)だけでは、Rec.709の映像にならない
表示レンダリング(トーンマッピング)によって、Scene-referredの広い明るさは、ディスプレイで自然に見える明るさへ変換されました。
しかし、この時点ではまだRec.709の映像は完成していません。
#01の記事にもありますが、Rec.709の映像には3つの要素が必要です。
- 色域
- ガンマ
- 表示レンダリング(トーンマッピング)
この3つが揃って初めて、Rec.709の映像として表示されます。
Scene-referred
│
▼
表示レンダリング(トーンマッピング) ———-> Display-referred
│
▼
Rec.709
├ 色域
└ ガンマ
表示レンダリング(トーンマッピング)によってDisplay-referredとなり、さらにRec.709の色域とガンマが適用されることで、Rec.709の映像として表示されます。
まとめ
ここまでで、Scene-referredの広い明るさが、Rec.709の映像として表示される理由が分かりました。
VFXの運用では、Scene-referred環境からのコンポジット作業がベースになる場合があります。
では、Display-referredのRec.709の映像を、再びScene-referredへ戻すことはできるのでしょうか。
次回は、Inverse Tone Mappingについて説明します。