理系パパのカメラ奮闘記

2児の父親。理系の視点でカメラを勉強します。

彩度調整とは何をしているか?

LightroomでのRAW現像やSnapseedを用いた写真編集で、彩度を上げる/下げる操作をしたことがない人はいないかと思います。

前回の記事で軽く触れましたが、何気なく実行しているこの彩度の操作は実は奥が深いのです。

 

そこで今回は彩度調整について説明したいと思います

ただ、ここではっきり申し上げます。

彩度調整のメカニズムについて調べていくうちに「色」というものがとんでもなく奥が深く本ブログの守備範囲から逸脱するテーマですので、かなり内容を限定して説明します

自分も調べてみて初めて分かりました。

マンセル表色系」とか「色度図」とか一度見てみてください。

人間の感覚と数式とおそらく都合とが融合され、使用するのはまだしも色を理解するにはなかなか面倒であることが容易に想像できるはずです。

 

 

彩度は色の三属性(色相・彩度・明度)の一つである

色は色相・彩度・明度の3つの属性を持っており、その中の一つである彩度は「色の鮮やかさ」を示します

f:id:kenzoi:20200514154054p:plain

引用:Wikipedia

「色が鮮やか」と聞いても人によって認識の違いはそれほどありませんが、そこに「明るさ」が絡んでくると途端に面倒になってくるというのが今回の議題です。

 

主な色空間としてはRGB以外にHSV、HLS(HSL)がある

色空間とは立体的に記述される色の空間です。

カメラ好きであればsRGBとAdobe RGBの色空間の違いを知っていると思います。

以下にxy色度図を示します。

f:id:kenzoi:20200514154634p:plain

引用:Wikipedia

X軸、Y軸が何を意味し、どうしてこんないびつな形であるかは機会があれば説明します。

ちなみに通常のディスプレイで表現できるのは三角形の中の色だけです。

今回の主題はこのRGBではなく、HSV、HLS(HSL)色空間になります

 

HSV、HLS(HSL)色空間の彩度と明度(輝度)の関係

始めにHSV色空間を示します。

f:id:kenzoi:20200516052912p:plain

引用:Wikipedia

回転方向が色相(Hue)、横軸が彩度(Saturation)、縦軸が明度(Value)です。

 

続いてHLS色空間を示します。

f:id:kenzoi:20200516053946p:plain

引用:Wikipedia

回転方向が色相(Hue)、横軸が彩度(Saturation)、縦軸が輝度(Lightness)です。

 

HSVは彩度最大&明度最大の時に色の鮮やかさが最大になるのに対し、HLSは彩度最大&輝度50%の時に色の鮮やかさが最大になります。

 

ここは理系パパのブログですので、RGBの数値で振舞をより具現化します。

色相を赤に設定し、彩度および明度(輝度)を変えた場合の振舞例を示します

なおRGB=(255,0,0)がRGB値において赤の彩度が最大になる値です。

 

明度(輝度)50%において彩度を変えた場合の振舞です。

HSV(図1)

f:id:kenzoi:20200516150040p:plain

↓HLS(図2)

f:id:kenzoi:20200516150054p:plain

明度(輝度)50%では彩度が100%になってもHSVはRGB=(127,0,0)に対し、HSLはRGB=(255,0,0)となり彩度が最大になっています。

 

続いて彩度100%において明度(輝度)を変えた場合の振舞です。
HSV(図3)

f:id:kenzoi:20200516151628p:plain

↓HLS(図4)

f:id:kenzoi:20200516151650p:plain

HSVは赤のみが比例的に上昇し明度100%でちょうど最大値255まで到達するわかりやすい振舞であるのに対し、HLSは赤が比例的に上昇した後最大値でとどまり、続いて緑と青が比例的に最大値まで上昇するという非常にわかりにくい振舞になっています。

 

こんな一見違和感のある振舞を見ると色空間としてはHSVが良いように思えます。しかし写真のカラー調整においてはHSVではなくHLSを採用すべきであり、実際にLightroomはカラー調整においてHLS色空間を採用しています(はずです)。

 

写真のカラー調整はHLS色空間を採用すべき理由

写真の明るさを決めるパラメータは何でしょうか?

もちろん露出ですよね。

露出とは撮影素子に光を曝すことであり、言い換えれば露出を変えることで取り込まれる光の量が変わります。

露出値を極端に小さくすれば真っ黒に、極端に大きくすれば真っ白な写真が出来上がります。

今回はこの当たり前の振舞が重要になります

 

↓露出値小を露出補正マイナスで再現

f:id:kenzoi:20200512154150p:plain

↓露出値大を露出補正プラスで再現

f:id:kenzoi:20200512154249p:plain

 

ではあなたがLightroomの設計者で色を調整する機能を実装する場合、色空間としてはRGBを用いますか? HSVを用いますか? それともHLSですか?

先ほどの写真の性質を考えれば「彩度」の調整はHLS色空間を用いるべきなのです

 

 かなり面倒な話ですので図を用いて示します。

白黒写真では「露出」により黒から白までの明るさを調整可能です(①→②)。

仮にHSV色空間を採用するとなると「明度」だけでは黒から白までの明るさを再現できず、「彩度」まで同時に調整しなければなりません(α→β→γ)。

f:id:kenzoi:20200512144836p:plain

写真から入ったユーザーとしてはこの振舞はたまったものではありません。

これまでは一つのパラメータ調整だけで白黒が再現できていたのに、同時に2つのパラメータを調整しなければならないなんて。

 

一方でHLS色空間であれば「輝度」の調整だけで黒から白までの明るさの調整が可能です(A→B)

f:id:kenzoi:20200512144427p:plain

単純な定義の問題ですが、この振舞の違いは大きい!

果たしてLightroomのカラー調整はHLS色空間を採用している

ここまでは観念を説明してきましたが、実際にLightroomのカラー調整はHLS色空間を採用しています(カラー指定ではなく、カラー調整の話です)。

まずは直接的な説明が可能なカラーミキサーの輝度を見てみましょう。

ここで輝度と記載されていますが、輝度と明度は混同しがちなのでHLS色空間の証拠としては不十分です。

しかし各色相の「輝度」スライダーを見ると右端が白であることから明らかにHLS色空間での調整であることがわかります

f:id:kenzoi:20200512151326p:plain

実際に「輝度」スライダーを調整してもその通りです。

↓輝度-100で暗くなる

f:id:kenzoi:20200512152711p:plain

↓輝度+100で明るくなり、色が薄くなる

f:id:kenzoi:20200512152746p:plain

 

「彩度」スライダーの調整がHLS色空間であることを説明するのは少しクッションが入ります。

↓彩度-50

f:id:kenzoi:20200512152941p:plain

↓彩度+50

f:id:kenzoi:20200512153049p:plain

赤い丸にも関わらず、彩度を変えると大きく赤のヒストグラムが右にスライドしています。

これは図1と図2を比較すればわかる通り、HLS色空間における「彩度」調整時の振舞です。

 

まとめ

今回彩度調整のメカニズムについて調べてみました。

わかったこととしては彩度調整のメカニズムを知らなくてもRAW現像においては何とでもなるということです

理系なので調べずにいられませんでしたが、調べてみて「で?」と自分でも思いました。

とはいえ色の奥深さの一端を垣間見えたので、時間ができたら彩度についてもう少し書いてみたいと思います。

ニッチ過ぎて興味がある方はいないでしょうが。

 

 

↓今回の題材を撮影した機器 

 

 

補足

今回かなり説明を端折ってます。

ちゃんと説明しだすと恐ろしいことになります。

明度/輝度、円柱形/円錐形/、Saturation/Chroma(日本語では同じ彩度!)・・・。