darktable3.4のマニュアル(2)

カラーキャリブレーション の後半部分です。

日本はGMTより進んでいますが、今日中に、darktable3.4が公開されると思います。

本体なしでの翻訳なので、動作確認はできていません。

 

 


 

 

CATタブワークフロー

色順応で使用されるデフォルトの光源と色空間は、RAWファイルのExifメタデータから初期化されます。これらのパラメータを手動で設定するために、[CAT]タブで使用できる4つのオプションがあります。

  • カラーピッカー(color-picker)(カラーパッチの右側)を使用して、画像から中間色を選択するか、使用できない場合は画像全体を選択します。この場合、アルゴリズムは選択された領域内の平均色を見つけ、その色を光源として設定します。この方法は、自然のシーンの平均的な色がニュートラルになると予測する「グレーワールド」の仮定に依存しています。この方法は、表面がペイントされているような人工的なシーンでは機能しません。

  • (AI)エッジから検出((AI) detect from edges)を選択します。これは、機械学習技術を使用して、画像全体を使用して光源を検出します。このアルゴリズムは、画像で見つかったエッジ全体の平均グラデーションカラーを見つけ、そのカラーを光源として設定します。この方法は「グレーエッジ(grey-edge)」の仮定に依存しており、大きな色収差が存在する場合は失敗する可能性があります。他のエッジ検出方法と同様に、ノイズに敏感で、高ISO画像にはあまり適していませんが、中間色が利用できない人工シーンには非常に適しています。

  • (AI)表面から検出(AI) detect from surfaces*を選択します。これは、画像全体を使用する前の2つの方法を組み合わせたものです。このアルゴリズムは、画像内の平均色を検出し、鮮明な詳細が検出され、色が強く相関している領域により大きな重みを与えます。これにより、エッジ (edge)から検出よりもノイズの影響を受けにくくなり、ナイーブな平均よりも正当な非ニュートラルな表面の影響を受けにくくなりますが、シャープな色のテクスチャ(緑の草など)は失敗する可能性があります。

  • カメラで撮影as shot in cameraを選択して、カメラのデフォルトに戻し、RAW Exifを再度読み取ります。

カラーパッチは、sRGB空間に投影された現在計算されている光源の色を示します。色順応アルゴリズムの目的は、この色を純粋な白に変えることです。これは、必ずしも画像をその知覚perceptual相手の色にシフトすることを意味するわけではありません。光源が適切に設定されている場合、モジュールが無効になっているときに、画像にはカラーパッチに示されているのと同じ色合いが与えられます。

カラーパッチの左側には、 CCT (相関色温度)の近似値があります。これは、現在使用されている光源にケルビン単位で最も近い温度です。ほとんどの画像処理ソフトウェアでは、温度と色合いの組み合わせを使用してホワイトバランスを設定するのが通例です。ただし、光源が日光から遠く離れている場合、CCTは不正確で無関係になり、CIE(国際照明委員会)はそのような状況での使用を推奨しません。 CCTの読み取り値は、最も近くに見つかったCCTの一致値を意味します。

  • CCTの後に(昼光 daylight)が続く場合、これは、現在の光源が理想的な昼光スペクトル±0.5%に近いことを意味し、したがってCCTの数値は意味があります。

  • CCTの後に(黒体 black body)が続く場合、これは、現在の光源が理想的な黒体(プランク Planckian)スペクトル±0.5%に近いことを意味し、したがってCCTの数値は意味があります。

  • CCTの後に(無効 invalid)が続く場合、これは、昼光または黒体の光スペクトルから遠すぎるため、CCTの数値が無意味であり、おそらく間違っていることを意味します。

上記の光源検出方法のいずれかを使用すると、プログラムは2つの理想化されたスペクトル(昼光と黒体 daylight and black body)を使用して計算された光源がどこにあるかをチェックし、光源 (illuminant)パラメーターで使用する最も正確なスペクトルモデルを選択します。ユーザーインターフェイスはそれに応じて変更されます。温度スライダーは D(昼光 daylight)Planckian(黒体 black body)に提供され、CCTは意味があります。それ以外の場合は、CIELuv空間の一般的な色相(hue)と彩度(chroma)のスライダーがカスタム(custom)光源用に提供されます。

カスタム(custom)光源から、たとえば、D(昼光 daylight)光源に切り替えると、カスタム光源から最も近いCCTが転送され、昼光モデルによって使用されます。 カスタム光源を使用しているときに(昼光)タグがCCT読み取り値に表示された場合、この変換はほとんど非破壊的(±0.5%)です。同じことが プランク Planckian(黒体 black body)光源にも当てはまります。任意の光源からカスタムへの切り替えは、元の設定に関して100%非破壊的です。 カスタム(custom)から他の光源への切り替えは破壊的であり、CCTの読み取り値が(無効 invalid)としてタグ付けされている場合はおそらく不正確です。

他のハードコードされた光源( illuminants)が利用可能です(以下参照)。その値は標準のCIE光源から得られた絶対値です。シーンを照らすために使用された電球の種類が正確にわかっていて、カメラの入力プロファイルと参照(D65)係数が正確であると信頼できる場合は、これらを直接使用できます。

光源検出モードは、最適なCAT色空間も設定します。 線形ブラッドフォード (inear Bradford) CAT空間は、2800 K〜6500Kの昼光および黒体光源に対してより知覚的に正確であることが知られています。 CAT16空間は、青色光などの難しい光源に対してより良い範囲を保持することが知られています。

CATタブコントロール

  • adaptation適応

    モジュールが色順応変換とチャネルミキシングを実行する作業色空間です。次のオプションが提供されています。

    Linear Bradford(1985):これは、昼光に近い光源の場合にはより正確ですが、より難しい光源の場合は色域外の色を生成します。

    CAT16(2016):これは、広い色域または飽和したシアンと紫で作業しているときに、架空の色を回避する上でより堅牢です。

    Non-linear Bradford(1985):これは線形バージョンよりも良い結果を生み出すことができますが、信頼性はありません。

    XYZ:単純なスケーリング空間(輝度Yでスケーリング)。これは、テストとデバッグを目的とする場合を除いて、一般的には推奨されません。

    none(disable):適応を無効にし、パイプラインの作業RGB空間を使用します。

  • illuminant光源

    シーンを照らしたと思われる光源のタイプを次から選択します。

    パイプライン(D50)と同じ(same as pipeline (D50)):このモジュールインスタンスでは色適応を実行せず、選択した適応(adaptation) 色空間を使用してチャネルミキシングを実行します。

    CIE標準光源(CIE standard illuminant):CIE標準光源(昼光、白熱灯、蛍光灯、等エネルギー、または黒体)のいずれか、または非標準の「LEDライト」光源から選択します。これらの値はすべて事前に計算されています。カメラセンサーのプロファイルが適切である限り、そのまま使用できます。プランキアン (Planckian)軌跡(locus)の近くにある光源の場合、追加の「温度」制御も提供されます(以下を参照)。

    カスタム(custom)ニュートラルグレーパッチが画像で使用できる場合、光源の色はカラーピッカーを使用して選択するか、色相および彩度スライダーを使用して手動で指定できます(LCh知覚色空間内)。カラーピッカーの横にある色見本は、CAT補正で使用される計算された光源の色を示しています。カラーピッカーを使用して、AI検出に使用される領域を制限することもできます(下記参照)。

    (AI)画像表面からの検出((AI) detect from image surfaces):このアルゴリズムは、YUV空間の彩度(chroma)チャネル間の共分散が高く、チャネル内分散が高い画像パッチの平均色を取得します。言い換えると、灰色であるかのように見える画像の部分を探し、合法的に灰色ではない可能性のある平らな色の表面を破棄します。また、色収差だけでなく色ノイズも破棄します。

    (AI)画像のエッジから検出((AI) detect from image edges):「グレーワールド」の仮定に依存するホワイトバランス(white balance)モジュールの自動ホワイトバランスとは異なり、この方法では、「グレーエッジ」の仮定を使用して、ラプラシアン(laplacian)のミンコウスキー( Minkowski )p-norm(p = 8)とそれを最小化する計算によって適切な光源を自動検出します。つまり、エッジはすべてのチャネルで同じ勾配(灰色のエッジ)を持つ必要があると想定しています。これは、以前の表面ベースの検出方法よりもノイズに敏感です。

    カメラで撮影したときas shot in camera:カメラが提供するホワイトバランス設定に基づいて光源を計算します。

  • temperature色温度

    光源の色温度を調整します。スライダーを右に動かすと、より青い光源を想定します。これにより、ホワイトバランスのとれた画像がより暖かく、または、より赤く見えます。スライダーを左に動かすと、より赤い光源を想定します。これにより、補正後の画像がより涼しく、または、より青く見えます。

    この制御は、黒体軌跡の近くにある光源にのみ提供され、その軌跡に沿って微調整を提供します。他の光源の場合、「色温度」の概念は意味をなさないため、温度スライダーは使えません。

  • hue色相

    カスタムホワイトバランスの場合、CIELuv空間から派生したLCh色空間で光源色の色相を設定します。

  • chromaクロマ

    カスタムホワイトバランスの場合、CIE Luv空間から導出されたLCh色空間で光源色の彩度 chroma(または彩度saturation)を設定します。

  • gamut compression 色域圧縮

    ほとんどのカメラセンサーは、青色チャネルに記録され、「架空の(imaginary)」色を生成する不可視のUV波長にわずかに敏感です。入力カラープロファイルによって修正されると、これらの色は色域から外れて(つまり、特定の色を、作業色空間で正の値を持つ有効な[R、G、B]トリプレットとして表すことができなくなる可能性があります)、グラデーションで視覚的なアーティファクトを生成します。色順応は、他の有効な色を色域から押し出すと同時に、すでに色域外の色をさらに色域から押し出すこともあります。 色域圧縮 Gamut compressionは、知覚的で非破壊的な方法を使用して、画像全体をパイプラインの作業色空間の色域に合わせるために、輝度と色相をできるだけ近くに保ちながら彩度(saturation)を圧縮しようとします。 この機能が非常に役立つ1例は、青色LEDライトを含むシーンの場合です。これは、多くの場合非常に問題があり、最終画像で醜い色域クリッピングが発生する可能性があります。

  • clip negative RGB from gamutガモットから負のRGBをクリップします

    負のRGB値をすべて削除します(ゼロに設定します)。これは、たちの悪い黒レベルと、青色LEDライトで発生する可能性のある青色チャネルクリッピングの問題の対処に役立ちます。

CAT警告

このモジュールの色彩適応(chromatic adaptation)が、正しく機能するためには、パイプラインの初期の処理ステップに関するいくつかの仮定に依存しています。これらの仮定は微妙な方法で不注意に容易に破られます。この種の間違いを避けるために、カラーキャリブレーションモジュールは次の状況で警告を表示します。

  • カラーキャリブレーションモジュールが色順応(chromatic adaptation)を実行するように設定されているが、ホワイトバランスモジュールが「カメラリファレンス」に設定されていない場合、両方のモジュールに警告が表示されます。これらのエラーは、ホワイトバランスモジュールを「カメラリファレンス」に設定するか、カラーキャリブレーションモジュールで色順応を無効にすることで解決できます。一部のセンサーでは、ホワイトバランスモジュール内で小さな修正が必要になる場合があることに注意してください。その場合、これらの警告は無視できます。

  • カラーキャリブレーションインスタンスが2つ以上作成され、それぞれが色順応を実行しようとすると、2番目のインスタンスにエラーが表示されます。これは有効な使用例である可能性があります(たとえば、画像の異なる非重複領域に異なるホワイトバランスを適用するようにマスクが設定されている場合)。この場合、警告は無視できます。他のほとんどの場合、二重補正を回避するために、インスタンスの1つで色順応を無効にする必要があります。

    デフォルトでは、カラーキャリブレーションモジュールのインスタンスがすでに色順応を実行している場合、この「二重補正double-correction」エラーを回避するために、作成する新しいインスタンスごとに、その順応が自動的に「なし(バイパス)none (bypass)」に設定されます。

カラーキャリブレーションの色順応モードは、CATタブで適応adaptationを「なし(バイパス)none (bypass)」に設定するか、光源を「パイプラインと同じ(D50)same as pipeline (D50)」に設定することで無効にできます。

これらの警告は、一般的なRAW編集ワークフローでモジュールの自動デフォルトプリセットを使用する際の一般的で簡単な間違いを防ぐことを目的としています。カスタムプリセットや、フィルムスキャンやJPEGの編集などの特定のワークフローを使用する場合、これらの警告は無視できるか、無視する必要があります。

チャンネルミキシング

このモジュールの残りの部分は標準のチャンネルミキサーであり、R、G、B入力チャンネルの相対的な強さに基づいて、モジュールの出力R、G、B、彩度(colorfulness)、明るさ、グレーを調整できます。

チャネルミキシングは、CATタブの adaptation コントロールで定義された色空間で実行されます。実用的な目的で、これらのCAT空間は、人間生理学に関連付けられ、シーン内の発光に比例する特定のRGB空間ですが、他のRGB空間と同じように動作します。 CAT空間のいずれかを使用すると、人間生理学との関連により、チャネルミキサーの調整プロセスが容易になりますが、適応 adaptationを「なし(バイパス none (bypass)」に設定することで、パイプラインのRGB作業空間でチャネルを混合することもできます。 色順応(chromatic adaptation)なしで適応(adaptation)色空間の1つでチャネルミキシングを実行するには、光源を「パイプラインと同じ(D50)same as pipeline (D50)」に設定します。


:チャンネルミキシングに使用されるCATまたはRGBプライマリの実際の色は、sRGB表示空間に投影され、RGBスライダーの背景にペイントされるため、変更した設定から、結果として生じるカラーシフトの感覚を得ることができます。


R、G、Bタブ

最も基本的なレベルでは、カラーキャリブレーションモジュールのR、G、およびBタブは、3x3行列と入力[R GB]値の間の行列乗算の一種と考えることができます。これは実際、マトリックスベースのICCカラープロファイルと非常によく似ていますが、ユーザーがICCプロファイルファイルから係数を読み取るのではなく、darktableGUIを介してマトリックス係数を入力できる点が異なります。

 ┌ R_out ┐     ┌ Rr Rg Rb ┐     ┌ R_in ┐
 │ G_out │ = │ Gr Gg Gb │ X │ G_in │
 └ B_out ┘     └ Br Bg Bb ┘     └ B_in ┘

たとえば、ある色空間から別の色空間に変換するための行列が提供されている場合は、次のように行列係数をチャネルミキサー(channel mixer)に入力できます。

  • 赤 redタブを選択し、赤、緑、青の入力スライダーを使用してRr、Rg、Rbの値を設定します

  • 緑 green タブを選択し、赤、緑、青の入力スライダーを使用してGr、Gg、Gbの値を設定します

  • 青 blueタブを選択し、赤、緑、青の入力スライダーを使用してBr、Bg、Bbの値を設定します

デフォルトでは、カラーキャリブレーションのミキシング機能は、入力[R GB]チャンネルを対応する出力チャンネルに直接コピーするだけです。 これは、識別行列を乗算することと同じです。

 ┌ R_out ┐     ┌ 1  0  0 ┐      ┌ R_in ┐
 │ G_out │ = │ 0 1 0 │   X │ G_in │
 └ B_out ┘     └ 0 0 1 ┘     └ B_in ┘

赤、緑、青のタブのミキシングスライダーがどのように動作するかを直感的に理解するためには、次のようにします。

  • の移動先の場合、スライダーを右に調整すると、画像のR、G、またはB領域がより赤くなります。スライダーを左に動かすと、それらの領域がよりシアンになります。

  • の移動先の場合、スライダーを右に調整すると、画像のR、G、またはB領域がより緑になります。スライダーを左に動かすと、それらの領域がよりマゼンタになります。

  • の移動先の場合、スライダーを右に調整すると、画像のR、G、またはB領域がより青くなります。スライダーを左に動かすと、それらの領域がより黄色になります。

R, G, B tab controlsR、G、Bタブコントロール

以下のコントロールは、R、G、Bタブごとに表示されます。

  • input red/green/blue-赤/緑/青を入力

    入力R、G、およびBチャネルが、関連するタブに関連する出力チャネルにどの程度影響するかを選択します。

  • normalize channelsチャネルを正規化する

    このチェックボックスを選択すると、係数が正規化され、入力画像と比較して最終画像でこのチャネルの全体的な明るさを維持されます。

brightness and colorfulness tabs明るさと彩度のタブ

画像内のピクセルの明るさと彩度(彩度)は、R、G、Bの入力チャンネルに基づいて調整することもできます。これは、フィルミックRGB filmic rgbモジュールがトーンマッピング( RGB 比の維持)およびミッドトーンの彩度(saturation)(彩度のもみほぐし)に使用するのと同じ基本的なアルゴリズムを使用します。

colorfulness tab controls彩度タブコントロール

  • input red/green/blue赤/緑/青を入力

    ピクセルのR、G、およびBチャネルに基づいて、ピクセルの彩度( color saturation)を調整します。たとえば、 入力赤 input red スライダーを調整すると、少量の赤しか含まない色よりも、多くの赤を含むピクセルの彩度に影響します。

  • normalize channelsチャネルを正規化する

    入力画像と出力画像の間で全体的な彩度(saturation)を一定に保つようにするには、このチェックボックスを選択します。

brightness tab controls明るさタブコントロール

  • input red/green/blue赤/緑/青を入力

    各色のR、G、およびBチャネルに基づいて、画像内の特定の色の明るさ( brightness)を調整します。たとえば、入力赤 input redスライダーを調整すると、Rチャネルが少ない色よりも、Rチャネルが多い色の明るさに大きく影響します。ピクセルを暗く、あるいは明るくするときは、色相を維持するために、そのピクセルのR、G、およびBチャネルの比率が維持されます。

  • normalize channelsチャネルを正規化する

    入力画像と出力画像の間で全体的な明るさを一定に保つには、このチェックボックスを選択します。

灰色(grey)のタブ

カラーキャリブレーションのもう1つの非常に便利な利用法は、チャネルを混合してグレースケール出力(モノクロ画像)を生成する機能です。 灰色 (grey)タブを選択し、赤、緑、青のスライダーを設定して、各チャネルが出力の明るさにどの程度寄与するかを制御します。これは、次の行列の乗算と同等です。

 GRAY_out  =   [ r  g  b ]  X  ┌ R_in ┐
                              │ G_in │
                              └ B_in ┘

肌の色を処理する場合、3つのチャネルの相対的な重みが、画像の詳細レベルに影響します。 赤に重みを付ける([0.9、0.3、-0.3]など)と肌の色が滑らかになり、緑を強調する([0.4、0.75、-0.15]など)とより詳細になります。 どちらの場合も、不要な肌の質感を強調しないように、青いチャネルが縮小されています。

grey tab controls灰色のタブコントロール

  • input red/green/blue 赤/緑/青を入力

    R、G、Bチャンネルのそれぞれが出力のグレーレベルにどの程度寄与するかを選択します。 3つのスライダーの合計がゼロ以外の値になる場合にのみ、画像はモノクロに変換されます。 青を追加すると細部が引き出される傾向があり、赤を追加すると肌の色が滑らかになる傾向があります。

  • normalize channels チャネルを正規化する

    スライダーを調整するときに全体の明るさを一定に保つには、このチェックボックスを選択します。