之前我们介绍了RGB。这次我们介绍两个看起来比较相似的单位——HSL 和 HSV。HSL 全称是 Hue, Saturation, Lightness/Luminance,即色相、饱和度和明度;HSV 是指 Hue, Saturation, Value,即色相、饱和度、明度。这两个既相关又有些不同。
HSL 和 HSV 的本质区别
两种从名字上差了一个字母,核心是对颜色明暗定义不同。在 HSL 和 HSV 的三大分量定义如下:
在 HSL 中表示颜色种类,使用 0° 到 360° 表示。与 HSV 中的 H 一致。
表示颜色的鲜艳程度。当数值为 0%,表示纯灰色;当数值为 100%,表示当前色相最鲜艳的颜色。
而在 HSV 中,S 表示颜色的纯净程度:数值为 0% 表示纯黑色,100% 表示当前色相最纯净的颜色。
在 HSL 中表示色彩的明暗程度:0% 表示纯黑,100% 表示纯白,50% 表示此色相的纯色调。
HSV 中的 V:0% 为纯黑,100% 表示该色相的最亮的状态。
为什么会有 HSV 和 HSL 两种模型?
由于 RGB 模型是数字设备的编码,不符合人类对颜色的认知。例如人类对同一个红色,可能有鲜艳的红和明亮的红。RGB 的三个数值体现不了颜色的鲜艳和明亮。所以有两位学者提出了 HSV 和 HSL。
艺术家会先选择颜料,然后通过添加黑或白调整明暗和鲜艳。HSV 的提出核心目标就是为了符合这种工作方式。
明度应该覆盖从纯黑到纯白的过程。HSL 的提出目标是符合人类对明暗的认知,让 L 分量从黑直接过渡到白。
怎么选?看场景
需要控制颜色的明暗层次,可以选择 HSL。
需要先选择颜色,再增加黑白调整,可以选择 HSV。
HSL 与 HSV 之间的转换
HSL 或 HSV 可以通过中间值 RGB 进行转换。即 HSL 想要转换为 HSV,首先可以将 HSL 转换为 RGB,然后再将 RGB 转换为 HSV;反之也一样。
如果需要进行 HSL 与 HSV 之间的转换,可以使用颜色单位转换工具。