RGB, HSLよりも人の感覚に近しいLCh色空間のほうがよい。
情報源
色空間(表色系)
数値で色を表現する体系にはいくつも種類がある。
色空間 | 元素 | 概要 |
---|---|---|
RGB | 赤、緑、青 | 三原色を加法混色することですべての色をつくる体PCにて色を扱う主な方法。 |
LCh | 明度、彩度、色相 | 心理学的な色の三元素をもとに合成する。 |
人は五感によって情報を得ている。そのうち80%が視覚である。つまり、人はほぼ視覚からの情報に支配されている。
視覚は光を受け取って得る感覚だ。光とは電磁波である。このうち人の目に見える範囲の波長を可視光線という。
色は合成することで他の色をつくることができる。合成方法は2つに大別される。混色系、顕色系だ。混色系はたとえば光の三原色をもちいたものである。顕色系はたとえばマンセル表色系である。
合成 | 強み | 例 |
---|---|---|
混色系 | 計算 | RGB,CMYK,XYZ,Lab,LCh |
顕色系 | 知覚 | マンセル表色系,PCCS |
液晶ディスプレイは光の三原色をもちいた加法混色によって合成している。そのためPCで色を扱うときはRGBが基本になることが多い。
しかしRGBにはつぎの問題もある。
- すべての知覚色をつくれるわけではない
- 知覚に即した色づくりが難しい
そこでXYZ表色系をつかう。さらにLab表色系は、それより知覚的均等性がある。さらにLChはそれをもとにした新しい体系である。
LChは明度、彩度、色相という色の三属性をもとにしているため、知覚的に色づくりできる。顕色系の強みがあり、さらに計算によって合成できる。これにより配色も自動化しやすくなる。
CSSにおいても新しいバージョンではLChが使えるようになる。
なお、以下のようにRGBよりは感覚的な体系もある。だがLChよりも期待したような色にならない。LChの下位互換と思ってよさそう。だから今まであんまり流行らなかったのだろう。
- HSL
- HSB
- HSV
所感
これからはLChを使って色づくりをしたい。
人がLChで色をつくり、RGBに変換してコンピュータへ送る。これにて知覚効果の高い配色をかんたんに実装できるようになりそう。
対象環境
- Raspbierry pi 4 Model B
- Raspberry Pi OS buster 10.0 2020-08-20 ※
- bash 5.0.3(1)-release
$ uname -a Linux raspberrypi 5.4.83-v7l+ #1379 SMP Mon Dec 14 13:11:54 GMT 2020 armv7l GNU/Linux