Color Management addon/jp

From RawPedia
Jump to navigation Jump to search
カラーマネジメント-補足

測色の概念

 本文はRawTherapeeを測色の観点から幾つか論じるために書かれています:
1. 測色の観点から見た本プログラムのrawデータ処理の流れを手短にまとめ、重要な点と不足な点をハイライトします。
2. ユーザーに何処に重点を置いたらいいのか知ってもらうために、処理の主な原則を説明します。
3. RawTherapeeを初めて使う人のために、不明瞭と思われる機能の幾つかを説明します。

 備考:本文の説明にはRawTherapee4を使用しており、実際の計算もこのバージョンで行っていますので、RawTherapee3を使う参考にはなりません。更に、未解決のバグによる誤作動の可能性も考慮していません。

注意

  • 本文はRawTherapeeと直接関係のない測色の部分は説明していません。例えば:
    • 印刷
    • スクリーンのキャリブレーション
  • 説明はしていませんが、測色が可能なソフトを使ってモニターのキャリブレーションを行うことは奨めます。作成するプロファイルはあくまでモニター用であり、それを入力プロファイルや出力プロファイルとしては使いません。
  • OSがWindowsやMac OS、Linuxであれば、ArgyllのDisplaGUIの様なソフトとキャリブレーションセンサーを使えば非常に正確な結果が得られるでしょう(本項筆者は古いDTP94を使っていますが、それでも十分です、但し、処理に要する時間は長く、約1時間かかります)。
  • RawTherapeeは自動的にシステムのカラープロファイルを検索するようになっていますが、環境設定→カラーマネジメント→モニターのカラープロファイルで、モニターのICCプロファイルを入力することが出来きます。
  • 本文を理解するためには、カラーマネジメントに関する最小限の知識(3次正方行列、RGB、XYZ、Lab、色空間、3原色、測色学など)を持っていた方がいいと思います。B. Lindbloom(英語)のサイトが参考になるでしょう。
  • ファイルブラウザと同じくヒストグラムの表示は、デフォルトで“出力プロファイル”を使うように設定されていますが、環境設定で“ヒストグラムとナビゲーターの表示に作業プロファイルを使う”というオプションがあるので、変更が可能です。
  • 勿論、本文だけで測色学を網羅することは出来ません。この概念は複雑です。

RGB変換前の初期のrawデータ処理

rawファイルの読み込みとそのデータ処理

  • 基本的にプログラムが行う最初のステップは、殆どの種類のrawファイルが読めるdcraw(D. Coffin氏が開発したraw現像ソフト)をベースに、各ファイル独自のコーディング、データの深度(12bit或いは14bit)やセンサーの飽和、ホワイトバランス、そしてもちろん、R、G、G、B、或いはR、G、B、Gデータ(G:グリーンは2つあるので)の読み込みです。
  • 初期のホワイトバランスはユーザーがカメラで設定した値です。
  • R、G、Bデータを画像として見ることが出来るようにするため、このホワイトバランスを使ってAMaZEやAHD、DCBなどによるデモザイク処理でR、G、Bデータが調節されます。その後、データ補間が行われます:データ補間が測色を変えてしまうことはありません(あっても非常に稀)。これはRawTherapeeで行われる全ての補間に関して言えることです(補間による色差ΔE94はほぼ1なので、無視できます)。その一方で限界もあります。強いハイライト部分でアーティファクト発生の可能性があります。
  • 画像をより現実的に見えるようにするために、これらR、G、Bデータは更にAdobeのカラーマトリクス、或いはAdobeまたはRawTherapeeのDCPプロファイルによって調節されます。ICC入力プロファイルによって調整されることもありますが、それについては以下で説明します。
  • R、G、Bの値自体は色空間が違っても変わりません。これは大事なことです(例えば、写真をsRGB、或いはAdobeRGBで撮る、という選択は、これらの値をどちらの色空間でJPEGに変換するかを決めるだけで、数値自体は変わりません)。
  • RawTherapeeのカラーマネジメントは2つの処理工程を使っています:一つは、一部でLCMS2を使います。これによりカラーマネジメントが一段と向上し、色飽和を避けながら浮動小数点演算が可能になっています。もう一つは、直接的な計算(XYZやLab、RGB、ガンマなどの変換)です。

ICC入力プロファイルによる調整:作り方、使い方、誤差

  • ICC入力プロファイルは、R、G、BデータをRGB変換(Capture NX2でも行っている)した後に適用するプロファイルのことです。第三者によって提供されている外部プロファイル、或いはRawTherapee内部に保持されているICCプロファイルのことです。原則、レンダリングインテントは適用されていません。ICCプロファイルはLabの値を変えてしまいますが、R、G、B値は変えません。
  • ICCプロファイルは、元の値(撮像センサーが捉えた値)と目標とする値の誤差を埋めようとするためのプロファイルで、理に適ったプロファイルです。
  • 理論的に見て、ICCプロファイルに、大きな問題はありません:異なる明るさ(D50 、曇天、シャドウ。。。)や、条件の異なる色見本の撮影、異なるレンズによる撮影などにおいても適応します。
  • 条件が似ていれば、多少異なってもICCプロファイルの適用に問題は生じません。例えば、太陽光の代わりにフラッシュで撮影をするとか、D50ではなくD55で撮影しても。。。
  • ICCプロファイルの作り方:
キャリブレーションに使用した468色の色見本
  1. 撮影場所(野外やスタジオなど)に応じて、理想的な条件で色見本を撮影します。
  2. 色見本の色域が広いほど、より正確な結果が得られます。例えば、カラーチェッカー24はsRGB色空間に近く、普通は正確なキャリブレーションが可能です。しかし、実際の色がsRGBの色域外(花の色などでもあり得ます)にあった場合、その色の精度を評価するのは困難になるでしょう。
  3. 色見本のセルの枚数が多いほど、正確なキャリブレーションが得られます(プロファイルの指示がより細かくなるので)。
  4. この説明で筆者が使った色見本(468色)は、同僚のRouliが作ったものですが、WideGamut色空間には無い色も幾つかカバーしており、それらは低い輝度値を有しています。
  5. 情報として、説明作りに使用したカメラはニコンD200です。468色の色見本撮影(NEF)から、このカメラの色差ΔE94を測りました。適用した入力プロファイル(或いはカラーマトリクス)は3種類;1種類目は、dcrawを使って得たオリジナルのカラーマトリクス(Camera Raw6.6やRawTherapeeの中のDCPプロファイルから得られるものと同じ)で、この場合は平均色差が4.37、標準偏差1.82、最大色差13.75となりました。2種類目は、RawTherapeeの中に保持されているICCプロファイル(sRGBに近いカラーチェッカー24で作成されています)を適用、この場合は平均色差が3.66、標準偏差2.08、最大色差11.28になりました。3種類目は、上記の幅広い色域を持った468色の色見本を使って自分で作成したICCプロファイルを適用、この場合は平均色差が2.05、標準偏差1.44、最大色差8.8になりました。結論から言うと、殆どの場合、カラーチェッカー24で作成されたICCプロファイルでも十分です。
  6. 自分でICCプロファイルを作成するには、色見本を、午後12時の太陽光の下、或いは、日陰の中、タングステン光の下、Soluxスタジオ用ライト(太陽光の分布に非常に近い)の下、その他、必要とされる光環境の下で撮影します。その際:
    1. カメラの設定(露出など)はマニュアルモードで行います。
    2. 撮影時のホワイトバランスは、太陽光に近い5000K、8000K、タングステン光の2850K、Sunランプの4700Kなどに設定します。
    3. 反射光を受けないように注意します。
    4. 1/3 EV刻みの露出補正で何枚か撮影します。
    5. 色見本の中心部と周辺部分がなるべく同じ露出になるように撮影します。
  7. これらのrawファイルをRawTherapeeに保存します。
  8. これらrawファイルを開く時は“ニュートラル”処理プロファイル(.pp3)を適用、作業色空間は“Prophoto”、入力プロファイルは“プロファイルなし”に設定します。
  9. 撮影した色見本の画像の中でL値が40~60のグレーのセルを選び、暗いセルとの露出の違いを比較します;撮影した画像の中から、この評価で最も良いものを選びます;必要ならば再度撮影を行います。
  10. この際、Rawタブの“rawホワイトポイント”の設定を確認します。“ハイライト保持”のスライダー値がゼロであることを確かめます。これは比較するグレーのセルのL値が、可能な限り撮影された時と同じ状態で行うためです。
  11. スポットホワイトバランス機能を使ってホワイトバランスを調整します。この時に使う画像の中のセルは、グレーでL値が20~80、“a*”と“b*”の値が最もゼロに近いセルを使います(“a*”と“b*”の値は0.5以下でなければなりません。仮に、これらの値が1.0に近い場合は、“色温度”と“色偏差”のスライダーを使ってホワイトバランスを調整します)。これにより比較するセルのLab値も本当のグレーに近づけるのです。
  12. “現在のプロファイルを保存”で保存します。
  13. ICCプロファイル作成のソフトで、撮影時の光源に合わせた(D50、D65、Soluxなど)再現性重視のプロファイルを作成します。ソフトによってマッチング方法は、スペクトル値、Lab値、或いはXYZ値、などと異なります。
  14. 一部のプロファイル作成ソフト(Profilemaker5など)は再現性重視のために色差ΔE94を最小にするプロファイルを作らないものもあります。しかし、その代り、それらソフトはコントラストカーブや、明清色と純色トーンの違いに応じて色度のトーンを変えたりすることで、特定のカラーレンダリング(ポートレート用、風景用など)を持ったプロファイルを作成します。これはこれで有効に使えるプロファイルですが、私見を述べるなら、それはRawTherapeeの機能面から見て範疇外ということです。プロファイルに初めから調整が施されてしまっているので、色相やコントラストに差が出ても、どのアルゴリズムを使おうとも正確に補正出来ません。しかし、それもまたユーザーの選択でしょう。

ホワイトバランス

ホワイトバランスの誤差
  • 厳密に言うと、ホワイトバランスが本当に機能するのは“スポットホワイトバランス”を画像の中の完全なグレー部分(Labのa*とb*がゼロ)で使った時だけです。手掛けた映画全ての中に自分自身の画像を登場させたアルフレッド・ヒッチコック監督でもない限り、撮影画像の中に常にその様な部分を入れることは限りなく不可能に近いので、カメラのホワイトバランスを補正したければ、普通は“色温度”と“色偏差”のスライダーを使って調整します。
  • しかし、“色温度”スライダーの調整範囲は1500Kから25000Kまであるのですが、D光源(昼光)にマッチングさせる計算は、4000K以下では有効とは呼べないのです(4000K以下では、推定値に過ぎません)。
  • 更に、光源が昼光(D)と異なる場合は、例えば“黒体光源”や“蛍光灯”、データが不正確になります。
  • 念のため、D光源(昼光)以外の光源や色温度4000K以下の光源ではデータが不正確になることをお見せしましょう(右図)。
グラフはB.Lindbloomのサイトから任意に抜き出した4つの光源のスペクトルデータ:D50(5000K)、D40(4000K)、A(タングステン光 2850K)とF11(蛍光灯 4000K)。ご覧の様に、Dシリーズ以外の光源からD光源を推定するのが如何に困難であることが分る。
原則

撮影:  撮影を行う際、基本的にユーザーには2つの選択肢があります:1つはrawモードによる撮影。この場合、ホワイトバランスの設定を失敗してもRawTherapeeのようなraw画像処理ソフトがあれば、レタッチが可能です。もう1つはJPEGモードによる撮影。この場合、もしカメラで設定したホワイトバランスが実際の光環境と異なっていたら、失敗を修復するためのレタッチは難しくなります。よって、rawモードによる撮影の方を奨めます。

 しかし、普通カメラはホワイトバランス設定を幾つか持っています(JPEG撮影のためには必要であり、raw撮影にとっても便利です)。各設定の働き方はメーカーやその機種によって異なりますが、多くの場合:

  • “自動”モードでは、カメラが自動的に独自のアルゴリズムに最も適したホワイトバランスを選びます。通常、このモードは非常に上手く機能しますが、画像の中に強い主張色が存在すると、その限りではありません。
  • “マニュアル”モードでは、ユーザーが色温度の数値、例えば7000K、を手動でカメラに設定します。ユーザーが自身の経験を元に、数値を選択して入力します。
  • “プリセット”モードでは、メーカーが予め用意した光環境(太陽光、日陰、曇天、フラッシュ、蛍光灯など)に対するホワイトバランス設定の中から、ユーザーが何れかを選びます。
  • 備考1:メーカーや機種によってプリセットの中身が異なります。例えば、蛍光灯モードに対し、キャノンは選択肢が1つですが、富士フィルムは3つ、ペンタックスも3つ、ニコンには7つの選択肢を持つ機種もあります。
  • 備考2:“フラッシュ”モードの色温度はメーカーや機種によって異なります。例えば、ニコンD300のフラッシュ光源の色温度は約6400K、Lica R9は5500K、ソニーA900は、その日陰モードの色温度とほぼ同じ7000Kです。
  • 多くの場合、撮影時にどのプリセットを選ぶのが適当であるかは、撮影環境から簡単に判断出来ますが、時には迷う場合もあるでしょう。例えば、展示場や博物館で撮影を行う場合、どのプリセットがベストであるか迷うかもしれません。
  • これら上記の設定は、各色チャンネルの乗数に影響します。
  • 何れの設定を選んでも、RawTherapeeのホワイトバランスのドロップボックスには“カメラ”と表示されます。
RawTherapeeのホワイトバランス

選択肢が5つあります:

  • « カメラ »:撮影時のExif情報の中に記録されたホワイトバランスを使います。
  • « 自動 » : 理論上のニュートラルグレーをベースにRawTherapeeが rawデータの平均から求めたホワイトバランスを使います。
  • « プリセット »: 日陰、昼光、蛍光灯などの名前で予め設定されたホワイトバランスを使います。
  • « カスタム »:ユーザーが色温度や色偏差のスライダーを使って調節したホワイトバランスを使います(ホワイトバランスの誤差を参照)。
  • « スポットホワイトバランス »: 画像の中のニュートラルグレー部分で、この機能を使って求めたホワイトバランスを使います。但し、これは画像の中にその様な部分が無ければ有効に使えません。
物体色 – 光源 – 標準観測者

 単純化すると、測色は3つのデータで構成されます:

  • 物体色:光源の種類に関わらず、その物体が特徴付けられる色付き(レッド、ブルーなど)のことで、分光器による測定で、その物体固有の色付きを説明します。
  • 光源、或いは発光体:光源の本質を特徴づける情報(正午の太陽光、日陰、フラッシュ光、タングステン光、蛍光灯など)のことです。2種類のデータで数値化されます:1つはスペクトル分布、もう一つは色温度。注意:同じ色温度を持つ光源であっても、スペクトルデータが異なれば同一の光源ではありません。
  • 標準観測者:例えば、壁に塗られたある色を見るのと、同じ色を小さい視野で見るのとでは、色の感じ方が違います。この様に人間の視覚が曖昧なため、CIE(国際照明員会)は物体色を視角2°で見た(測色標準観測者)と視角10°(測色補助標準観測者)で見たという仮想の観測者を制定して、それを基準として色を数値化するのに使っています。

 つまり、物体色をX光源で観察したことを数値化するには、物体色、光源、標準観測者のスペクトルデータが必要なのです。これらはXYZと呼ばれる値で、現像ソフト(RawTherapeeやPhotoshopなど)で設定される光源の色温度(例えば、6500K)で特定されますが、標準とされる光源はD50です。従って、色順応のアルゴリズムを使って、光源のXYZ値を標準XYZ値(D50 )に変換する必要があるのです。幾つか手法がありますが、効率の良さの順に並べると:例えば、CIECAM02、ブラッドフォード変換、フォン・クリースの係数則となります。

昼光光源

 何百という多くの研究者がこの光源を目標にしてきました、Judd, MacAdam や Wyszecki による研究成果はその一例に過ぎません。要約すると、“D”光源は次の式で表されるような3つの値の合計になります: S(λ)=S0(λ)+M1*S1(λ)+M2*S2(λ)

  1. 初めの部分は“固定”の部分です。試験されたサンプル全ての平均値です。
  2. 2番目は“変化する”部分です。S1は雲があるかどうか、或いは直接的な太陽光の強さと位置で決まる“ブルー/イエロー”の変化量のことです。
  3. 3番目も“変化”する部分で、S2は蒸気や霧による湿度で決まる“ピンク/グリーン”の変化量のことです。
  4. しかし、実際には、色温度と光源をベースにした2つの値、xDとyDを決定する単純な式で表わされます。
  • Tが4000K以上7000K以下の場合、x_D=0.244063 + 0.0991*103/T+2.9678*106/T2 -4.6070*109/T3
  • Tが7000K以上25000K以下の場合、x_D=0.237040 + 0.24748*103/T + 1.9018*106/T2 -2.0064*109/T3
  • y_D = -3.0*x_D2 + 2.87*x_D-0.275
  • これら計算式は前述の計算式の変数M1(xD、yD)とM2(xD、yD)を算出するために使われるもので、以前のRawTherapeeでは使われていませんでした。以前のRawTherapeeは色チャンネルの乗数を計算するのに、直接xDとyDを使っていましたが、現在は色温度Tにおける光源のスペクトルデータを決定するのに使われます。乗数を決定するには2番目の変数M2*S2(λ)だけを使います。

 これら計算式を見て簡単に気付くのは:

  • 色温度Tが4000K以下では、“昼光”が存在しないということです。以前のRawTherapeeで色温度1200Kから4000Kで使われていたのは、“UFraw”のために発明された計算式でした。
  • 一方、色温度の最大値を12000Kから25000Kに引き上げる(2013年)ことに問題はありませんでした。
“黒体”光源と“タングステン光”光源

 タングステンフィラメントを使った典型的な家庭用バルブの光源を示す言葉としてCIE(国際照明委員会)が使い始めたのがA光源です。A光源の相対スペクトル分布は、プランクの放射則でも使われており、色温度は約2850Kです。CIEが定めたこのA光源は、他の光源を使うという断りが無い限り、白熱光に関した測色を扱うどのアプリケーションにも使われています。

 黒体”光源は、色温度を基に全波長域の分光放射輝度を説明したプランクの公式で算出することが出来ます:

  • S(λ)=(c1*pow(波長、-5.0))/(exp(c2/(波長*黒体の色温度))-1.0 )

ここで、c1とc2は:c1=2*Pi*h*c2、hはプランク定数、cは光速、c2=h*c/k、kはボルツマン定数

 この光源は誤差を最小に保ったまま約4000Kまで“昼光”光源と一致します。そのため、RawTherapeeは4000K以下1500Kまでは、“黒体”光源を使うようになりました(恐らく“ACR”も同じ方法でしょう)。

蛍光灯の光源

 店頭でも入手可能な蛍光灯に合わせるため、12のタイプに標準化されています:

  • F1 : 蛍光灯 昼光 – 6430K
  • F2 : 白色蛍光灯 冷 – 4230K
  • F3 : 白色蛍光灯 – 3450K
  • F4 : 白色蛍光灯 温 – 2940K
  • F5 : 蛍光灯 昼光 – 6350K
  • F6 : 白色光蛍光灯 – 4150K
  • F7 : D65蛍光灯(高演色形) – 6500K
  • F8 : D50蛍光灯(高演色形) – 5000K
  • F9 : 白色蛍光灯 冷 デラックス(高演色形)– 4150K
  • F10 : Philips T85(3波長域発色形) – 5000K
  • F11 : Philips T84(3波長域発色形) – 4000K
  • F12 : Philips T83(3波長域発色形) – 3000K

 これら光源は ( ホワイトバランスの誤差を参照) それぞれ非常に異なるスペクトル分布を持ち、“昼光”や“黒体”光源とも大きく違います。従って、色温度の数字が同じでも、他の光源を蛍光灯の光源として適用しない方がいいでしょう。例えば、F11-4000Kのホワイトバランスを“昼光-4000K”で置き換えることはしません。

色温度が同じでも、昼光4000Kの光源と、蛍光灯F11(4000K)ではスペクトル分布が非常に異なる。昼光の方は分布が安定している。よって、2つのカラーレンダリングは異なる

実際、ホワイトバランスはスペクトルデータをベースに計算されていて、2つの係数、xDとyDが色チャンネルの乗数を調節します。この積分計算には平均値の定理が働き、事実、双方のホワイトバランスの“平均”は同じになりますが、理想的(黒体や昼光)なスペクトルデータとは違い、局部的にピークがあったり、大きな誤差があったりするため、色によっては、その色の色相に顕著な違いが現れることがあります。

CRI(カラーレンダリング指数)という、光源の質を示す概念があります。このCRIが100であれば、その光源のカラーレンダリングは完璧であるという意味になります。私達はこのCRIが90以上であれば、質の良い光源と見なします。例えば:

  • 白色蛍光灯 温(F4): CRI=51
  • マーキュリーランプ(クリア): CRI=17
  • 幾つかのLEDはCRIが50から96
  • Solux 4700: CRI=92
  • など

 将来、この概念を次の様な形でRawTherapeeへ導入することも検討されています(実装は未だです):

  • リファレンスカラー20色を作る:内8色はカラーチェッカー24から選んだ標準色、肌色の色相4色、4色のグレー(白から黒の間)、3色のブルー
  • CIECAM02を色順応に組み入れる
  • CIE Labを色差計算に使う

 それまで、これらの誤差の一部埋めるために、撮影環境の光源とスペクトルデータがマッチしているICC入力プロファイルを使います。

その他の光源

 他にも、A光源、“昼光”に近い光源から分れたBとCという光源がありますが、RawTherapeeには組み入れていません。そうすることも出来ますが。

  • 等エネルギー光源: “E”
  • スタジオ用ライトの光源(映画館、舞台照明、博物館、写真館などの光環境)で、HMI、GTI、Solux 4700K、JudgeIII、Solux 4100K、など。これらのプロファイルはRawTherapeeに組み入れられています。
  • LED光源。これらの光源はブルーチャンネルに大きな誤差を持つことが多いですが、中には質が十分な特性を持っているものもります。
  • “メーカー独自(キャノン、ニコン、ペンタックスなど)”のフラッシュ光源とスタジオ用フラッシュの光源。全般的にこれらは昼光光源に非常に近いですが、色温度はそれぞれ異なります。そこで、スタジオ用フラッシュに関しては、私達は3つの色温度グループ、5500K、6000K、6500K、に分類しましたが、それぞれの特性を生かすには、理論的にそれぞれのフラッシュに関するスペクトルデータ(私達は持っていません)が必要です。加えて、これらフラッシュのデータは電力次第で大きく変わります。従って、筆者は“昼光”を使うようにしています。

 以上説明してきたように、RawTherapeeを含むraw現像ソフトを取り巻く状況は複雑で、誤差の可能性も沢山あるということを知っておいて下さい。

光源の一覧とそのCRI(カラーレンダリング指数)
ホワイトバランスを決めるアルゴリズム

“昼光”のホワイトバランスにはベーシックなアルゴリズムを使っています:計算式(S(λ) = S0(λ) + M1*S1(λ) +M2*S2(λ)のM1、M2に対する変数、xD、yDの算出を行いますが、そのためのXiYiZiは[XiYiZi]=[標準観測者2°のXYZ]*[S(λ)]という行列計算から求められたものです。そこから、色チャンネルの乗数を調節する値を、[mulrgb]=[sRGBd65_XYZ]*[XiYiZi]で計算します。

  • カラーマネジメントの精度とスペクトルレンジを広げるため、アルゴリズムの作成には、John Walker(パブリックドメイン)とB Lindbloomの成果を利用しました。そこには、“CIEカラーマッチ”として知られる、スペクトルデータのXYZ変換も含みました。標準観測者2°のデータを基に、その色のスペクトルデータ(波長350nmから830nm)を、xBar、yBar、zBar値の光源に変換します。これで出力値xとyを得ます。

 黒体光源のホワイトバランスについては、プランクの法則を使いましたが、色温度4000Kで、上記の昼光に使った計算式から得られるxD、yD値と、この黒体光源で使った計算式から得られるxD、yD値がかなり近いという良い結果が得られました(色温度3995Kと4005Kの間でヒストグラムを作ることが出来ました)。昼光のそれらは4000Kで、xD=0.382、yD=0.383(因みに、4500KではxD=0.362、yD=0.370、7000Kでは、xD=0.30、yD=0.32、25000Kでは、xD=0.25、yD=0.377)。黒体光源 4000Kで、xD=0.381、yD=0.377です。

 他の光源に関しては、468色の色見本でそれぞれキャリブレーションを行うのは大変だったので、情報を探した結果、運よく求める光源(タングステン、蛍光灯、HMI、GTI、Soluxなど)のスペクトルデータを見つけることが出来ました。

R、G、Bデータを RGB変換するための作業色空間 “作業プロファイル”

 この“変換”はカメラが撮影したR、G、Bデータ(色空間は関係ありません)を、ユーザーが選んだ作業色空間に変換するプロセスです。

7つの作業色空間を用意しました(十分だと思います、むしろ多過ぎるかもしれません):sRGB, AdobeRGB, Prophoto, Widegamut, BruceRGB, BetaRGB, BestRGB。この中の4つは色空間が広いものです:BetaRGB (B.Lindbllomのオリジナル), BestRGB, WideGamut、そして Prophoto。 

 RGB変換の際に、RawTherapeeの中で使われるガンマは、常にsRGBの、ガンマ=2.4、勾配=12.92です(Lightroomも同じ)。

 備考:他の現像ソフトは異なる作業色空間の選択肢を持ちます:

  • AdobeのACR の選択肢は4つ (AdobeRGB, ColorMatch, Prophoto、そしてsRGB)。
  • AdobeのLightroomには選択肢がなく、sRGBのガンマで調節したProphoto(Melissa)を使います。
  • DxOにも選択肢はありません、Adobeの色空間を使います。
  • NX2は出力色空間には幾つか選択肢を持っています。

 どの作業色空間を選べば良いのか?狭い色空間を使う人と、広いのを使う人の間では意見がなかなか合いません。。。狭い色空間ではデータ損失がある、誤りが発生する、架空のデータは必要など。実際、最も色空間が広いのはProphotoですが、その構造からして、人の目には見えない、或いは架空の色までカバーしています。但し、場合によってはブルーの領域でアーティファクトが発生することがあります。

 適切な色空間を選ぶ際は、余分な領域が少ないということも考慮されるべきだと思います。これは画像毎に適切な色空間を選ぶという意味になります。必要以上に広い色空間を使うと、極端な場合、彩度が足りない色が出てくるケースがあります(これは作業色空間の話で、出力時に再生が行われます)。何れにせよ、カラーマネジメントはこういった点も考慮する必要があるのです。

 筆者は実利を重んじる方なので、画像毎に最適な色空間を選ぶべきという意見ですが、では何を基準に選ぶのか?

  • CMYK(4色)ドライバのプリンターで印刷をするのであれば、色域の広いプロファイルを使うのは、本当は有益でありません。

4種類の作業色空間とプリンターの色空間

  • 上位機種のインクジェットプリンターを使うのであれば、作業プロファイルだけでなく、出力にも色域の広いプロファイルを使う方がいいと思います。この種のプリンターの色域は、色にもよりますが、WideGamutRGBよりも広いからです。もちろん、プリンターの正しいプロファイルを使用する必要があります。参考図は、各色域を表しています:a)通常の色空間(青線はsRGB、ピンク線はAdobeRGB、黄線はWideGamutRGB)、b)グレー線はニコンD200のICCプロファイル、c)白線は、エプソンプリンタの純正用紙のICCプロファイル、“3800MOABKOKOPELI_2431_V4”、です。
  • AdobeRGBやWideGamutRGBに近い色域のモニターを使っているなら、色域の広いプロファイルを使うべきです。

必要最低限のカラープロファイルを簡単に知る方法は、デバッグモードのRawTherapeeで(verbose=true)、“vibrance”の値をチェックすることです。そこでRawTherapee.exeウィンドウに表示される次のメッセージを見ます:

  • Gamut : G1negat=x iter - G165535= y iter - G2negat= z iter - G265535= w iter
  • 何れかのG1で、x或いはyの値が0以上になっている場合は、元の画像(コントラストや露光などの調整前)が作業色空間の色域を超えていることを意味します。
  • 何れかのG2で、z或いはwの値が0以上の場合は、“vibrance”で設定された彩度が色域を上回っていることになります。
  • これらの値を0以上、或いは以下にする(vibiranceの自動、又は、“色ずれを回避”+“彩度の制限”でも可能です)のもユーザーの選択です。但し、0以上を選んだ場合は、本来の色を失うことになります。
  • R、G、BデータのRGB変換の際は、G1ネガティブとG165535の値は保持されています。

ユーザーが選んだ色空間における作用(作業色空間:“作業プロファイル”)

 RawTherapeeはLabモード(或いはその派生であるLuvやLch)及びCIECAM02の作業で、実数を使った幅広い選択肢を持っているので、色や色域を最適に保持できます。

 “露光補正”セクションで、色相を変えられる機能は“彩度”調整だけですが、Lab調整セクションでは、彩度を使えません(後述の“マンセル”補正を参照)。

 “Lab調整”セクションで、露光補正セクションの“彩度”スライダーのような働きをする機能は、a*カーブ、b*カーブ、及び、色度が関わる全てのカーブです。

 “チャンネルミキサー”と“HSV”カーブは、測色に強い影響を及ぼしますので、測色の重要な点は知っておいた方がいいでしょう。一方、コントラストや明度、トーンカーブは色域の調整に大きく影響します(前述の“vibrance”に関する記述を参照)。

“作業プロファイル”で行われること、“作業プロファイル”を変えることで起こること

 色がsRGBの様な狭い作業色空間にあるということは、色を調整する範囲も狭く限られたものである、ということです。では、初期の色(センサーが捉えて、多少の補間が行われたもの)がsRGB色空間の範囲にあるとすれば、スライダーやカーブを調整した時に何が起こるのでしょうか?:

  • RGBモード(露光補正パネル)の、彩度や明度、コントラストを調整すると、RGBモード或いはRGBから線型的に誘導された“HSV”モードで作業していることになります。これはその調整結果が作業色空間(sRGB、AdobeRGB、Prophotoなど)に左右されると意味です。たとえ、画像の色が色域の範囲に収まっていたとしても、作業色空間を“sRGB”から“Prophoto”に変えれば、調整結果は変わってくるのです。
  • 一方、Labモードでは、明度や色度、コントラストのスライダーやカーブが動かされると、それは直接的にLやa*、b*(或いは、C、h)の値に影響します。これは画像の色が色域に収まっている場合は、画像の色域は変わらない(カラーマネジメントの範囲内において)という意味です。

 それでは、スライダーやカーブの調整で色域が元の色域を超えた場合はどうでしょうか?

  • 例えば、元画像のある色のLab値が、L=27、a*=2、b*=-75であったとしましょう。この色はProphotoRGBの範囲内にある色で、RGB値で表すとR=42、G=52、B=158になります。sRGBで表すと、R=‐85、G=69、B=184(Rのマイナス値は、それが色域から外れていることを意味しています)です。ここで、作業プロファイルをsRGBに変えると、当然色の情報が保持されていないので、XYZ変換は、L=32、a*=21、b*=-67 、R=0、G= 69、B=184になります。つまり、狭い色空間では同じ色を再現することが完全に不可能なのです。
  • 別な例を挙げましょう。sRGBに収まっている色、L=40、a*=42、b*=‐44があるとしましょう。これは、sRGBではRGB値がR=133、G=66 、B= 166、ProphotoRGBでは、R=102、G=64、B=140 となります。ここで、a)露光補正パネルの彩度スライダーで、彩度を+30にしたとします。すると、ProphotoRGBのLab値は、L=36、a*=49、b*=-49に変わり、sRGBのLab値はL=38、a*=47、b*=‐47になります。これはR、G、B値を基に計算するからです。b)彩度スライダーの代わりに、Lab調整パネルの色度のスライダー値を同じだけ上げると、Lab値はsRGBでもProphotoでもL=40、a*=55、b*=-58となります。これは色がsRGB色空間内に収まっているからです。c)では、色がL=40、a*=63、b*=37のようにsRGBの限界ぎりぎりにある色の場合に、色度を30上げるのはどうでしょうか?Lab値はProphotoRGBの場合、L=40、a*=81、b*=49となるので色相が保持されている(アークタンジェント(b,a))ことが分ります。しかし、sRGBではL=44、a*=69、b*=50となり、色相が保持されていない(色ずれ)ことになります。

“色ずれを回避”は何を行う?

 上記のケース(c)で、この“色ずれを回避”機能を使うと、測色に相対値を適用することで、色相を保持する試みが行われます。この例では、Lab値はL=40、a*=65、b*=38となります(RGBのGチャンネルの値は0になります)。

 “色ずれを回避”は次の2つのことを行います:

  • 相対的な測色を優先するので、その色域にある色の値を作業色空間の値に置き換えようと試みます。R、G、B値がマイナスとなった場合は、色度(及び輝度)を補正して0にします。
  • “マンセル”補正を適用します。

“マンセル”補正

 目標:Lab調整の色度を変化させると、時々誤った色になることがあります。多くの場合、ブルー/深紅、イエロー/レッド、グリーン、そしてレッド/深紅で起こります。マンセル表色系を使って自動的にこの補正を試みます。

そのために、160のLUT(ルックアップテーブル)を作りました:

  • これらLUTは、マンセル表色系で表されるこれらの色とその明度で、色度に基づいて色相を調節するようになっています。色度(0~180)の内、5、45、85、125、(可能であれば139に対しても)に2、3、ないし4ポイントの補正を行います。中間値は線型的に補間します。これらLUTはメモリーの占有が最小になるように抑えました。各LUTのエントリーは45から140なので、全体でも約1600エントリーに留まっています。
  • LUTはLab色空間で比較的色ずれが顕著になりそうな4色部分(ブルー/深紅、レッド/イエロー、グリーン、レッド/深紅)で働くようになっています。他の色は誤差が小さく、カラーマトリクスやICCプロファイルの精度範囲内に収まっています。
  • また、これらLUTはそのベースとしてC光源(D50やD65 とは若干異なる)使っていますが、色ずれを起こしそうな色の絶対値ではなく、その誤差に対して補正を行うので、演算の誤差も非常に小さくなります(1%以下なので、やはりカラーマトリクスやICCプロファイルの精度範囲内に収まります)。
  • これらの演算の処理時間は短いのですが、代わりに“自然な彩度”や“Lab調整”の処理が約10%増えるようになりました。
  • “verbose”を有効にすれば、各補正のタイプや補正に関わるピクセル数、凡その補正サイズ(ラジアン)を知ることが出来ます。ラジアンによる補正数値を色差ΔE94 で表すと次の様になります(例):
  1. ブルー/深紅の補正=0.4ラジアン ΔE94=12
  2. レッド/イエローの補正=0.2ラジアン ΔE94E94=8
  3. グリーンの補正=0.1ラジアン ΔE94E94=3.7
  4. レッド/深紅の補正=0.05ラジアン ΔE94=2
  5. 一般的な色ずれは最大で約0.05~0.15ラジアンですが、0.2から0.25になることも珍しくありません。
  6. 情報として。1以下の色差ΔE94は無視出来る色差です。2~3になると色ずれのあることが分るようになってきます。8以上は目立ちます。

出力の色空間 “出力プロファイル”

色空間の選択

 初めに検証するのは:貴方のコンピューターにインストールしてある、これからインストールしようとする出力プロファイルが何であるかを確かめることです。これには次の3つケースが考えられます:1.貴方のコンピューターのOSで決められている出力プロファイル(表面的には、Linuxの場合、何のプロファイルもインストールされていないでしょう)、2.インストールされているグラフィックソフトで(Capture NX2、Photoshop CS、DxO、など)で決まっている出力プロファイル。各ソフトウェアには独自のプロファイルがインストールされています。例えば、NX2であれば、NKsRGB.icmやNKAdobe.icmなどの著作権が付随したプロファイルのことです。3.AdobeやB.Lindbloomなどのウェブサイトからダウンロードしてきた出力プロファイル。

 原則を言えば、インストールされている出力プロファイル、或いはインストールする出力プロフィルは作業プロファイルとマッチするのが理想です。これらプロファイルは.icmや.iccの拡張子を持つファイルでコンピューターの中に保持されます(カラーマトリクスの計算を行う“iccmatrics.h”は無関係です)。これらのプロファイルが無ければ、TIFFやJPEG形式での出力がそのプロファイルに合わせて行われないことになります。RawTherapeeはデフォルトでRT_sRGBという出力プロファイルが宛がわれるようになっていますので、ユーザーが他に何も設定しなければ、出力はこのプロファイルに合わせて行われます(sRGB色空間)。

 これら出力プロファイルは、次の様な名前を持っています(異なる名前で、同じ、或いは近い特性を持つプロファイルを見つけることもあります)。一般的に、それらは著作権が付随したもので、承認が無いとオープソースで公開することは出来ません。ウェブから手に入れることの出来るプロファイルの中には、Prophoto.icm、SRB Color Space profile.icm、AdobeRGB1998.icc、BestRGB.icm、BetaRGB.icc、Bruce.icm、WideGamutRGB.iccなどがあります。他に、CIE.iccやColormatch.iccといったものもあります。

 出力プロファイルはRawTherapeeの“iccprofiles/output”フォルダーの中か、Windowsであれば、\windows\system32\spool\drivers\color 、他のOSならば、/usr/share/color/icc の中になければなりません。

 例えば、出力プロファイルにAdobeRGB1998を選び、作業プロファイルがProphotoであったとすると、RawTherapeeはLCMS2を使い、レンダリングインテントに合わせて、作業プロファイルのR、G、B、データを出力プロファイルの色空間に変換します。

L=50における各色空間の色域

 備考:出力(プリンターやスクリーン)色空間を選ぶ時も、作業色空間を選んだ時と同じような考え方をします。

 これまでのところRawTherapeeはプログラムに印刷モジュールを持っていないので、印刷を行う場合は、第三者のソフトウェア(例、Photoshop)を使わなければなりませんが、印刷を上位機種のインクジェットプリンターで行うなら、出力プロファイルに、ProphotoやWideGamutのように色域が広いプロファイルを使用することを強く奨めます。

 但し、8bitデータであるJPEGは、互換性が殆どないので、Prophotoなどの広色域プロファイルを使った場合、ポスタリゼーションのリスクがあることに注意して下さい。

RawTherapeeの付属プロファイル

 著作権の観点から、多くのプロファイルは勝手に提供できません。当方が用意したのは、特定のプロファイルに、より多くのLUTを使ってシャドウ部分でのポスタリゼーション発生を抑えた、独自の疑似プロファイルです。これらは出力ガンマによる強い影響を受けています。

  • RT_sRGB.icm: 疑似sRGB.icm  ガンマはsRGBに近い: ガンマ=2.40 勾配=12.92
  • RT_sRGB_gBT709.icm: 疑似sRGB.icm  ガンマはBT709: ガンマ=2.22 勾配=4.5
  • RT_sRGB_g10.icm: 疑似sRGB.icm  ガンマは線形: ガンマ=1.0 勾配=0
  • RT_Middle_gsRGB.icc: 疑似AdobeRGB1998.icc  ガンマsRGBに近い: ガンマ=2.40 勾配=12.92
  • RT_Large_gsRGB.icc: 疑似ProPhoto.icm  ガンマはsRGBに近い: ガンマ=2.40 勾配=12.92 (Lightroomの“Melissa”近いプロファイル)
  • RT_Large_gBT709.icc: 疑似ProPhoto.icm  ガンマはBT709: ガンマ=2.22 勾配=4.5
  • RT_Large_g10.icc: 疑似ProPhoto.icm  ガンマは線形: ガンマ=1.0 勾配=0

RawTherapeeの誤差

 出力画像がプレビューとは多少異なると感じるユーザーは少なくないと思います。しかし、これは出力プロファイルに欠点があるからではなく、トーンカーブを作る際に、TRCの意図(トーンリプロダクションカーブ:ICCプロファイルに組み込まれている内部のトーンレンダリングを調節する)が上手く取り入れられていないからです。

 そこで(理由は他にもありますが)、“可変的な”出力プロファイルを用意しました。

  1. 別なガンマを使った出力プロファイルを選ぶ
  2. ガンマと勾配が変えられるようにする
  3. 線形的な出力プロファイルにして、後はPhotoshopなどで調整してもらう。
  4. (ヒストグラムに関する説明を参照のこと)

出力ガンマ

 私見を述べれば、TIFFやJPEG画像の生成を上手く行うための鍵は出力ガンマだと思っています(理由は色々ありますが)。前述のiccやicmプロファイルも出力ガンマの影響を直接的に受けています。しかし、ここで更に“新しい”ProphotoやsRGBの疑似プロファイルを追加しても、今の疑似プロファイルも似たような出力ガンマの特性を既に持っている訳ですから、有用性はあまりないだろうと思いました。そこで、このRawTherpeeの誤差(出力とプレビューの違い)を部分的に埋めようと考えたのです。

 理想を言えば、出力ガンマのモジュールを画像処理プロセスの先頭、つまり露光補正やハイライト回復、その他のタブにある機能の前に、持って行きたいところです。しかし、その様な改造は、重度のアーティファクト発生無しには不可能なので、RawTherapeeにとっては代償が大き過ぎます。また、その様な改造は処理の順番が重なり合ってしまい、初期の測色プロセスが、専門的と言うより、ユーザーが自前で行うような状態になってしまいます。

 よって、個人的理想とは異なるものの、出力ガンマを最後の方に持って来ました。しかし、だからと言って、完全に矛盾する訳ではありません。  出力ガンマを後に持って来たことで:

  • カラーマネジメントの無いソフトウェアでも画像の査定が可能です。
  • CMYKによる印刷で画像の調節が可能(第三者のソフトウェア)です。

幾つかの考え

 ガンマの作用は、RawTherapeeの“露光量補正”+“ブラックポイント”+“トーンカーブ”などの組み合わせを使った調整と非常に良く似ていますが、効果の現れ方は違います。シャドウ/ハイライト間の殆どで、コントラストやヒストグラムの分布が急変します。これは出力ファイルのTRCカーブが入力ICCプロファイルと似たようなインデックスを有しているので、ガンマがこれらの調整に同時に作用するからです(組み合わせによる調整では同時に出来ません)。最近、写真家の友人がこう言いました、「当初、コントラストやトーンカーブを使ってガンマと同じ効果を作れると思ったのだが。。。結果は全然違った」。

 Abobeが自社のLightroomために“Melissa”という色空間を設計したのは何故でしょう?この色空間は、ProphotoにsRGBのガンマを一部適用している独自の色空間です。勾配12.92まではリニアなガンマですが、そこからはガンマが2.4になります。 

 D.Coffinは昔からDCRAWにリニアガンマや、様々なガンマを使っていますが、何故でしょう?

 理論的には、カラーマネジメントが完璧であれば、出力ガンマが標準的であれ、何であれ、出力画像はプレビュー画像と同じです。何故なら、カラーマネジメントはLab(或いはXYZ)データを使い、D50でPCS(プロファイルコネクションスペース:デバイスに依存しない色空間)を使って実行されているので、画像は一緒のはずです。しかし、それら画像のシャドウ部分を見ると、多少ですが違いがあることが分ります。しかし、たとえそれが多少とは言え、それを見るユーザーは、出力画像が“プレビュー画像”とは違う、と感じるのです。

 一方、多くのウェブブラウザ(例、Chrome)同様、色を管理しないソフトウェアでは、出力画像はガンマ次第ということになります。だからこそ、カラーマネジメントを持つRawTherapeeにとっては、出力画像がどの様に見えるかを精査する(ソフトプルーフィング)ことは重要なのです。ですから、必ず考慮されなければならない点が幾つか出てきます:

  • 作業色空間(“作業プロファイル”)は出力色空間(出力プロファイル)に合わせて変換されなければならない。当り前に思えるかもしれませんが、画像のある色が一方或いは両方の色空間から外れている場合、或いは色空間が異なれば、カラーレンダリングも異なるのです。
  • カラーマネジメントの有無:色の管理が可能なRawTherapeeや編集ソフトならば、作業色空間と出力色空間が同じであれば、プレビュー画像と出力画像の誤差は小さいですが、それでも重要です。カラーマネジメントを持たないソフトでは、ガンマの影響が非常に大きくなります。
  • ソフトプルーフィング、レンダリングインテント、ブラックポイントの設計が必要。
  • 将来的には、出力プロファイルをプリンターのプロファイルに合わせることが簡単に出来ると思います。但し、その場合、印刷可能な色の見え方が重要になります。

 RawTherapeeがPhotoshop CSのフォーマットや色の“プルーフ”と似たような機能を持つようになれば、出力ガンマによる見え方の違いという問題は解決されることになります。Photoshopのこの機能が“ソフトプルーフィング”です、例えば、ウェブサイトにアップする画像やプリンターで出力する画像をプレビューで再現することが出来るようになります。

色々な出力ガンマ

 ドロップダウンボックスの中には予め設定された7つのガンマがあります:

  • BT709: 勾配=4.5 ガンマ=2.2
  • sRGB: 勾配=12.92 ガンマ=2.4
  • 線形: ガンマ=1.0
  • 標準: 勾配=0 ガンマ=1.8
  • 標準: 勾配=0 ガンマ=2.2
  • High: 勾配=3.35 ガンマ=1.3
  • Low: 勾配=6.9 ガンマ=2.6


“ガンマが2.2でも1.8でも、“BT709”はsRGBに比べ、シャドウの処理が良いと思います(グレーが弱まる)。

“Low”は活気のない画像のコントラストを上げます。また、露出オーバーの部分では後処理が上手くいくと思います。

“High”はそれとは逆にコントラストを軽減します。

“リニア”にすると、Photoshopを使ってHDRイメージの処理が出来ます。RGBカーブを使って調整します(但し、実践はなかなか難しいです)

 更に、RawTherapeeには“フリーなガンマ”という機能があります。これは選択した出力プロファイルに好きな勾配とガンマ値を設定できる機能です。例えば:

  • sRGBで標準ガンマが1.8
  • WideGamutでガンマがBT709
  • sRGBでガンマが2.2、勾配が6.5

 先程と同じNEFファイルを使って、様々なガンマ設定によるヒストグラムの変化の例を示します。参考としてRawTherapeeと同じ初期設定(作業プロファイルがProphoto、適用処理プロファイル“ニュートラル”、出力プロファイルProphoto)のヒストグラムを示しました。

Prophotoのプレビュー GammaS.jpg
ヒストグラムが左に寄るほど、画像は暗くなります。

 更に、ヒストグラムが厳密に同じでも、プレビューと出力ファイルのカラーレンダリングが同じになるとは言えないのです。実際、TRCの概念はプレビュー画像にも、出力ファイルにも働きます。この“TRC”はICCプロファイルのインデックス情報に作用して、そのトーンデータを修正します。“TRC”のデータはその出力ファイル(Prophoto.icmやRT_sRGB.iccなど)の特性によって決定されているので、その値を正確に知っていれば、同じになると思われますが、どうやら“プレビュー”に対し全く同じではないようです(sRGBの出力に関する説明を参照のこと)。

 ユーザーの中には、“RT_sRGB”は“sRGB_Color_Space_Profile”と同一であるが、プレビューは違う、という人もいるでしょう。更に、別なガンマの場合はどうでしょうか?

使い方

 使い方は簡単な方がいいという要求に応えるため、出力プロファイルを作業プロファイルから作れるようにしました。フリーなガンマを有効にすると、出力プロファイルのドロップボックスからハイライトが消えます。すなわち、出力プロファイル=作業プロファイルになるので、後はガンマと勾配を好みに変えます。

 例えば、作業プロファイルはProphoto、ガンマを2.1、勾配を4.0に設定します。

 それから、RawTherapeeでTIFF画像に現像するか、或いは、外部エディターに送って、そこでTIFF画像を生成します。このファイルがPhotoshop CSで開らかれると、次の様に表示されます“埋め込まれているプロファイル:sRGBIEC61966-2.1の方が望ましいです(RTHガンマBT709はHPsRGBと類似しています)”。このプロファイルはRT_sRGB_gBT709とマッチしますが、何らかの調節が加えられているので、更なる精査が必要です。

 別な例を示します。作業プロファイルはsRGBで、フリーなガンマで、ガンマを2.3、勾配を10.0に設定します。これでTIFF画像を生成し、この画像をPhotoshop CSで開くと、やはり上記と同じメッセージが表示されます。

 ここで、“埋め込まれたプロファイルを消去する”というオプションを選択すると、設定したガンマと勾配を使った新しいTIFF画像が表示されますが、映りは違います(ファイルのインデックス情報が無いため)。

 このアルゴリズムにはLCMSの機能の一つである“CMSTトーンカーブ”が使われています:

  • 出力の色空間はLCMSの原色(レッド、グリーン、ブルー)から計算されます。例えば、Prophotoなら:p1=0.7347;p2=0.2653; p3=0.1596; p4=0.8404; p5=0.0366; p6=0.0001
  • ガンマのパラメータは“calgamma”という機能で計算され、ガンマと勾配に応じて、5つのパラメータが計算され、LCMS2の該当機能に返されます。

 こうして、選択されたガンマにマッチするRGB“Prophoto”系の疑似プロファイルを作成します。

 しかし、これらプロファイルを作る際に使ったLCMS2にも欠点があるのです。それはファイルの見出しにマッチングするプロファイルを書き出さないことです。これはLCMS2がLUTやLabデータではなく、R、G、Bデータをベースに計算するからです。理論的には、選択したガンマに対し一つのプロファイルだけでなく、多くのプロファイルが必要ということです。実践では、出力ガンマに大きな変更を加え、LCMS2の欠点に対応しています。RGB変換の後、出力ガンマに使われた.icc/icmと同じ特性を持つプiccプロファイルを適用、但し、そのレッドTRC、グリーンTRC、ブルーTRCのタグを“calgamma”を使って算出しています。

 リニアモードによるTIFF画像の生成を理解するには、Guillermo LuijkのDCRAW解説が参考になるでしょう: http://www.guillermoluijk.com/tutorial/dcraw/index_en.htm

 上記の理由から、.iccと.icmプロファイル(BestRGB.icm、BetaRGB.icm、Bruce.icm、WideGamutRGB.icc)は、“ICCディレクトリー”のフォルダーに入れる必要がありました(従って、疑似Prophoto、Adobe、sRGBのicc/icmファイルは“ICCプロファイルのoutputに入れたのです)。

RawTherapeeのプロフィルの質

 RawTherapeeのプロファイル(RT_sRGBやRT_Large_g10など)に有効性はあるだろうかと思うユーザーもいるでしょう。

これらプロファイルは“オリジナル”(AdobeRGB1998、Prophoto、sRGB Color Sapce Profile)と同じ特性を持っています。オリジナルとの違いは小さいですが、3原色やホワイトポイント、或いはその両方の点で違います。但し、出力の質や水準に違いはありません。

その代わり、TRCが細部まで作用するように、LUTの数を1024から4096に増やしました。その結果、次の様な有効性を得ています:最も一般的に使われるsRGBに比べ、ヒストグラムに突出した分布が少なくなり、シャドウ部分でポスタリゼーションが少なくなりました。以下にその比較を示します。明るさの少ない部分のsRGB Color Space ProfileとRT_sRGB(右)の16bitヒストグラムを拡大しています。

Template:Languages