2 · 色彩模型概述
RGB、CMYK、HSV、HSL、Lab、XYZ 等常见色彩模型简介
色彩模型是用数值描述颜色的数学抽象。不同的模型面向不同的应用场景:RGB 用于屏幕显示,CMYK 用于印刷,HSV/HSL 更符合人类直觉,Lab 与 XYZ 则是设备无关的感知均匀空间。本章快速浏览六大核心模型。
📊 常见色彩模型对比
| 模型 | 分量 | 典型范围 | 主要用途 |
|---|---|---|---|
| RGB | 红、绿、蓝 | 0–255 (8bit) | 显示器、相机、Web |
| CMYK | 青、品红、黄、黑 | 0%–100% | 彩色印刷、喷绘 |
| HSV | 色相、饱和度、明度 | H:0–360°, S/V:0–1 | 图像编辑、颜色拾取 |
| HSL | 色相、饱和度、亮度 | H:0–360°, S/L:0–1 | UI设计、数据可视化 |
| Lab | L* (明度), a*, b* | L:0–100, a/b:≈-128~127 | 色彩管理、感知均匀 |
| XYZ | X, Y, Z (三刺激值) | 取决于白点 | 颜色科学、转换枢纽 |
🎨 色域与模型关系
RGB 加色模型 (三角形) 与 CMYK 减色模型 (四边形) 示意
🔍 模型特点速览
- RGB — 加色混合,三原色光叠加产生白色。广泛用于电子显示。
- CMYK — 减色混合,油墨吸收光。理论上 CMY 叠加得黑色,实际加入 K 提升对比。
- HSV — 色相 (H)、饱和度 (S)、明度 (V)。适合人眼调节颜色属性。
- HSL — 与 HSV 类似,但亮度 (L) 更接近感知亮度,常用于 CSS 颜色。
- Lab — 感知均匀,欧氏距离近似色差。设备无关,色彩管理核心。
- XYZ — CIE 1931 标准,所有色彩模型转换的桥梁。Y 分量代表亮度。
🧪 HSV 与 HSL 模型结构
HSV 圆柱模型 (左) 与 HSL 双锥模型 (右) 的几何表示
🌐 设备无关模型:Lab 与 XYZ
XYZ 是 CIE 1931 定义的三刺激值空间,所有可见色都可用正 X、Y、Z 表示。Lab 由 CIE L*a*b* 定义,L 为明度,a 红绿轴,b 黄蓝轴,感知均匀性优秀。
Lab 对立色坐标 (左) 与 XYZ 三刺激值坐标 (右)
🐍 Python 快速查看色彩模型
使用 colour 或 matplotlib.colors 可轻松转换。以下示例将 RGB 转为 HSV 与 Lab:
import numpy as np
import matplotlib.colors as mcolors
rgb = np.array([0.8, 0.2, 0.6]) # 归一化 0~1
hsv = mcolors.rgb_to_hsv(rgb)
print("HSV:", hsv) # [0.889, 0.75, 0.8]
# 使用 colour-science 库 (需安装)
# import colour
# xyz = colour.RGB_to_XYZ(rgb, colour.models.RGB_COLOURSPACE_sRGB)
# lab = colour.XYZ_to_Lab(xyz)
# print("Lab:", lab)