仕事でちょっと厄介な画像処理を施す必要があったので、色々調べていたんだがまーとんでもない事実が次から次へと出るわ出るわ。
1. Photoshopの‘50%グレー’はカラーモードによって色が違う。
RGBの時は(128, 128, 128)、グレースケールの時はRGB換算で(160, 160, 160)、CMYKの時は(50%, 50%, 50%, 50%)、Labの時は(50, 0, 0)。
無論、全てRGB換算すると全部色が違う。
2. 50%グレーを色調反転すると色が変わる。
元々0〜255の256階調で色表現を行っているので、RGBモードでも中央値が127.5と小数値になってしまう為厳密な50%グレーが表現出来ていない。
だから、50%グレーを色調反転すると色が変わる。
Labに至っては、(50, 0, 0)を反転すると(50, -1, -1)になる。何だか気持ち悪い。
3. 色調反転の結果はカラーモードに依存する。
RGBならRGB値が、CMYKならCMYK値が各々反転される。
ここで不可解なのがグレースケールの時。色調反転すると、どのカラー値も反転してくれない。但し、情報パレットに表示される‘K値’は確かに反転している。このK値をどうやって計算しているのかは不明。
千奈美に、RGBモードだろうがCMYKモードだろうが、アルファチャンネルはグレースケールモードで解釈されている模様。
上記の問題と関連して、今回ちょっと問題になっているのが以下のような事例。
真っ白な背景に真っ黒のレイヤーを重ね、グレー成分を含むアルファチャンネルをレイヤーマスクとして適用する。このレイヤーマスクが適用されている真っ黒レイヤーを丸々コピーした後、レイヤーマスクだけを選択して色調反転する。
各々のレイヤーの不透明度は0〜100%の範囲で丁度反転しているので、両方を重ねると完全な不透明状態、即ちカンバスが真っ黒になる筈。
…なのだが、実際には真っ黒にはならない。
不透明度81%のレイヤーと19%のレイヤーを重ねると、合計の不透明度が85%となってしまう。何故だ??