本ページにはアフィリエイト広告(プロモーション)が含まれる場合があります。
ホワイトバランスと色温度
- 色の基礎
- White Balance and Colour Temperature
- 別名: WB
- 別名: 色温度
- 別名: ケルビン
- 別名: 色被り補正
「色温度」はもともと黒体(プランク放射体)の温度を指す測色量で、CIE の定義では光源の色度が黒体と一致する場合にしか成立しない。蛍光灯・LED・昼光はいずれも黒体軌跡に乗らないため、実際に使われているのは近似量である相関色温度(CCT)のほうである。ここまでは CIE の規格定義で確認できる。一方、現像ソフトのスライダーが実際に何をしているかは、ソフトごとに公開の度合いが違う。RawTherapee と darktable は公式文書とソースコードで挙動を確定でき、値を上げると画像が暖色に転ぶこと、WB の実体が RGB チャンネルごとの乗算係数であることが読み取れる。ただしそれが「どの現像ソフトでもそうである」という一般則までは裏づけられていないため、このページの実装まわりの記述はいずれも「この2つのソフトでは」という限定つきである。
図で見る
この操作が画像に何をするか
RAW 現像のホワイトバランスは、R・G・B の各チャンネルに別々の倍率を掛ける操作である。ケルビン値とティントは、その倍率をユーザーに提示するための言い換えにすぎない。スライダーが宣言しているのは「撮影時の光源はこの色温度・この色被りだった」ということで、ソフトはその光源の色を打ち消す方向に補正する。したがって高いケルビン値を指定すると「青い光源だった」と宣言したことになり、補正結果として画像は暖色に転ぶ。もう一方のティントは緑–マゼンタの軸を動かすもので、蛍光灯のように黒体軌跡から外れた光源では色温度だけでは合わせきれないため必要になる。ここまでは RawTherapee と darktable について、公式ドキュメントとソースコードで確認できる内容である。ただしケルビン値と倍率の対応関係はカメラのカラーマトリクスを経由するため機種ごとに違い、しかも「晴天」のようなプリセットが何ケルビンを指すかもメーカーごとに異なる。つまり同じ「5500K」という表示が、機種をまたぐと同じ色を意味しない。
効く場面
- 光源が1種類で、その光源の色を打ち消してニュートラルを出したいとき
- 蛍光灯・LED のように黒体軌跡から外れた光源で、色温度だけでは緑かぶりが残るとき
- 同じ光源・同じ機種で撮った複数カットの色を揃えたいとき
- あえて基準からずらして、夕景を暖色寄り・雪景を寒色寄りに振りたいとき
つまずきやすい点
- 「画像を暖かくしたい」と思ってケルビン値を下げてしまう(指定しているのは光源の色なので向きが逆になる)
- 別機種で撮った写真に、同じケルビン値の設定をコピーして色が合わないと悩む
- 「晴天は5500K」という一つの数値を、どのメーカーでも同じだと思い込む
- 色被りを色温度だけで直そうとして、緑かぶりが残ったまま全体が黄色くなる
- 画面内に複数の光源が混在しているのに、1組のケルビン値とティントで合わせようとする
どこまで裏が取れているか
この項目についてよく言われることを、出典に当たって確かめた結果です。出典が見つからなかったものは、見つからなかったと書いています。
- 原典で確認できる 「色温度」は、その光源の色度が黒体(プランク放射体)と一致する場合に定義される量であり、一致しない光源には「相関色温度(CCT)」を使う。CIE は、色度が黒体軌跡から一定以上離れる場合には相関色温度の概念を使うべきでないとしている。 出典は CIE(国際照明委員会)が無料公開している e-ILV(国際照明用語集オンライン版)で、内容は国際規格 CIE S 017:2020 の用語定義そのもの。規格本体は有償のため、無償公開されている定義文のみを確認した。色温度の定義は別項 https://cie.co.at/eilvterm/17-23-067 にあり、「与えられた刺激と同じ色度をもつプランク放射体の温度」と書かれている。CCT 側の注記にある「どれだけ離れたら使うべきでないか」の具体値(Δuv)は、e-ILV の HTML で数式が画像化されておりテキストとして取得できなかったため、ここには書かない。 出典: CIE e-ILV 17-23-068「correlated colour temperature」(および 17-23-067「colour temperature」)
- 原典で確認できる RawTherapee と darktable では、色温度スライダーは「撮影時の光源の色温度」を指定するものとして実装されており、値を上げると画像は暖色(黄〜オレンジ)に寄る。 主張をこの2ソフトに限定してある。RawTherapee 公式ドキュメントは「スライダーを右に動かすと画像は暖かく(黄色く)なる」と明記し、darktable の公式マニュアル(https://docs.darktable.org/usermanual/4.6/en/module-reference/processing-modules/white-balance/ )はスライダーの着色を「光源の色」で示すか「画像への効果」で示すかを切り替えられると説明している。後者は、この逆転が実装のクセではなく「何を指定しているか」の定義の問題であることを示す。/「どの現像ソフトでも同じ」という一般則としては裏づけていない。darktable マニュアルは「他の多くの RAW 現像ソフトも同じ表示方法である」と述べているが、これは開発側の主張であって個々のソフトを実測した結果ではなく、Adobe Camera Raw / Lightroom は本調査では確認していない。 出典: RawPedia「White Balance」(RawTherapee 公式ドキュメント)
- 原典で確認できる darktable のホワイトバランス処理が内部で使うパラメータは RGB チャンネルごとの乗算係数だけであり、温度とティントはその言い換えである。係数と温度の対応関係はカメラ機種固有なので、ある機種の設定を別機種の画像に適用しても一般に同じ結果にはならない。 主張を darktable に限定してある。公式マニュアルが「このモジュールの動作で内部的に使われる唯一のパラメータは rgb チャンネル係数である」「温度とティントのスライダーはそれを調整するための分かりやすい手段として提供されている」「係数と温度/ティントの関係は撮影に使ったカメラ固有の特性に依存する」「したがってあるカメラで作った設定を別のカメラの画像に適用しても一般に一貫した結果は得られない」と述べている。RawPedia も「ホワイトバランスは各原色に異なる量を掛けることで働く」と同趣旨を述べており、二つの独立した実装で一致するが、「すべての現像ソフトがそうである」という一般則はこの2件では担保されない。 出典: darktable 4.6 ユーザーマニュアル「white balance」
- 原典で確認できる RawTherapee と darktable では、色被り補正(Tint)は色温度とは別の軸であるグリーン–マゼンタ軸の調整である。 主張をこの2ソフトに限定してある。darktable は数値の向きまで明示している(tint が 1 未満でマゼンタ寄り、1 を超えると緑寄り)。RawPedia も「ティントのスライダーはマゼンタ–緑の軸に沿って調整する」と同じ軸・同じ向きを記述しており、二つの独立実装で一致する。ただし「なぜもう一方の軸が緑–マゼンタなのか」(黒体軌跡に直交する向きだから、という説明)については、この2件の出典には書かれていない。他ソフトの Tint が同じ軸かどうかも確認していない。 出典: darktable 4.6 ユーザーマニュアル「white balance」
- 原典で確認できる 現像ソフトの「色温度」は、温度域によって黒体軌跡と CIE 昼光(D)軌跡を切り替えて計算されている。RawTherapee は 4000K を境にしており、それ未満では黒体、それ以上では昼光を使う。 コメントではなく分岐そのものが根拠で、4000K を境に黒体スペクトルの積分と昼光の計算に分かれている。コード中のコメントは「4000K 未満には昼光の基準が存在しないため黒体を使う」と理由を述べている。GPL で公開されたソースコードであり、当該ソフトの挙動については一次資料。他のソフトが同じ閾値を使っているかは確認していない。なお同ファイルには 4000K 超で使う昼光軌跡の多項式も実装されているが、その原典(CIE 15 / ISO 11664-2)は有償のため直接確認していない。 出典: RawTherapee ソースコード rtengine/colortemp.cc(dev ブランチ)
- 二次資料でしか確認できていない 「晴天は5500K」と一つの数値で語られることが多いが、メーカーごとの晴天プリセットの色温度は同じではない。RawTherapee の開発者はソースコード中に、Nikon=5200K / Olympus=5300K / Panasonic=5500K / Leica=5400K / Minolta=5100K と記録している。 これは RawTherapee の開発者がソースコードのコメントとして書き残した値であって、メーカー各社の公称値ではない。したがって「そう記録している第三者の資料がある」以上の強さは持たない。メーカー公式の一次資料は本調査では取得できなかった(キヤノン・ニコンの公式ページはいずれも 403/404/名前解決不可)。/同じコメント群には曇天(Nikon=6000K / Olympus=6000K / Panasonic=6200K / Leica=6400K / Minolta=6500K)と日陰(Nikon=8000K / Olympus=7500K / Panasonic=7500K / Leica=7500K / Minolta=7500K)の値も記録されており、RawTherapee 自身は直射日光の代表値として 5300K を採用している。年式・機種による違いも本調査では追えていない。 出典: RawTherapee ソースコード rtengine/colortemp.cc(Daylight5300_spect 直前のコメント)
他の項目の主張とあわせて確かめたい場合は根拠の強さで見るもご覧ください。
関連する現像の項目
- カメラプロファイルと「正しい色」 — RAW から色を出すには、センサーの生の値を CIE の測色値に対応づける必要があり、その対応づけを担うのがカメラプロファイルである。DNG 仕様書はこの構造を公開しており、プロファイルが複数の照明条件ごとの行列と、色相・彩度・明度の変換表、さらに「ユーザー調整の出発点」としての look テーブルからなることが読み取れる。つまり規格自身が、カメラプロファイルには測色的な変換だけでなく意図的な作り込みが含まれると認めている。ここまでは DNG 仕様書という一次資料で行単位まで確認できる。確認できないのはその先で、「メーカー純正ソフトのほうが色が正しい」という広く言われる主張については、「正しさ」の基準を定義した規格・一次資料を見つけられなかった。仕組みは公開資料で確定できるのに、その仕組みの良し悪しを判定する基準だけが見つからない、という構造になっている。
- 色空間(sRGB / Adobe RGB / ProPhoto RGB) — 色空間は「原色3つと白色点の色度」+「伝達関数(ガンマ)」で定義される。この定義自体は規格の一次資料に数値まで書かれており、このページの数値はすべてそこから取っている。sRGB の原色はテレビ規格 ITU-R BT.709 から借りたものだが、伝達関数は BT.709 とは別の式である。Adobe RGB (1998) は線形区間を持たない単純なべき乗、ProPhoto RGB(規格名 ROMM RGB)は実在しないデバイスの色として定義される。そして Web は「プロファイルの付いていない画像・色は sRGB として扱う」と規定しているため、「Adobe RGB で書き出せばきれい」は書き出し先が Web の場合には成り立たない。曖昧さが残るのは「広色域だと何がどれだけ損なわれるか」の部分で、これは単一の研究の測定値しか見つかっていない。
- RAWとJPEGは何が違うのか — JPEG が情報を捨てるのは規格そのものにそう定義されているからで、ここは議論の余地がありません。一方「RAW は劣化しない生データ」という説明のほうは、メーカー自身の取扱説明書と突き合わせると、そのままでは成り立たない場面があります。