深色模式
色彩模型、色彩空间与色域
很多人第一次接触颜色管理时,都会把“RGB”“sRGB”“色域”混在一起说。看起来它们都和颜色有关,但它们并不是同一个层面的概念。
这篇文章只解决一个问题:把色彩模型、色彩空间、色域三者的区别讲清楚,并顺手说明为什么你会在屏幕、设计软件、相机和打印流程里看到 sRGB、Adobe RGB、Display P3、ProPhoto RGB 这些名字。
先说结论
- 色彩模型是描述颜色的方式,比如 RGB、CMYK、HSL。
- 色彩空间是在某种色彩模型之上的具体标准,比如
sRGB、Adobe RGB、Display P3都属于 RGB 色彩空间。 - 色域是一个设备、一个色彩空间或一种输出方式,能够覆盖的颜色范围。
- 同样叫 RGB,不同色彩空间能表示的颜色范围也不一样。
- 色域更大不一定更好,关键要看你的工作场景和输出目标。
如果只想记一句话,可以记成:
“模型”决定怎么描述颜色,“空间”决定这套描述具体长什么样,“色域”决定它到底能覆盖多大范围。
为什么这三个概念容易混淆
一个很好记的类比是:
- 色彩模型像“坐标系的类型”
- 色彩空间像“某个具体坐标系的标准版本”
- 色域像“这个版本实际覆盖到的区域”
比如说,RGB 只是告诉你,颜色可以由红、绿、蓝三个分量来描述。但它并没有说明:
- 红到底有多红
- 绿到底有多绿
- 同样一组 RGB 数值,在不同设备上应该显示成什么颜色
这些问题,需要靠具体的色彩空间来规定。于是就有了 sRGB、Adobe RGB、Display P3 等不同标准。它们都属于 RGB 模型,但覆盖范围不同,适合的场景也不同。
什么是色彩模型
色彩模型是“如何组织和表示颜色”的方法。它关注的是描述方式,而不是某一套精确标准。
RGB
RGB 是最常见的颜色模型,它用红、绿、蓝三个通道来表示颜色。
它属于加色模型,适合发光设备,比如:
- 显示器
- 手机屏幕
- 平板
- 电视
- 投影设备
在 RGB 模型里:
- 三个通道都为
0时接近黑色 - 三个通道都拉满时接近白色
- 不同比例的红、绿、蓝组合出各种颜色
前端常见的 rgb(255, 0, 0)、#ff0000,本质上都是 RGB 模型的表达方式。
CMYK
CMYK 主要用于印刷,它用青、品红、黄、黑四种油墨来描述颜色。
它属于减色模型,适合不发光、靠反射光来呈现颜色的介质,比如纸张、包装、宣传册。
为什么会多一个 K:
- 理论上青、品红、黄混合可以得到接近黑色
- 但实际印刷中,这样得到的黑不够纯,成本也更高
- 所以印刷流程通常单独加入黑色油墨
很多初学者会把 RGB 和 CMYK 理解成“两个可以随便互转的方案”,但实际并不是。屏幕能显示的颜色,并不一定都能被油墨准确印出来,这也是打印时经常发生色偏的原因之一。
HSV 与 HSL
HSV 和 HSL 更适合人直接调颜色时使用,它们不是为了设备输出而生,而是为了让“调颜色”这件事更直观。
它们都包含三个维度:
- H:色相,表示色环上的角度
- S:饱和度,表示颜色有多“纯”
- V 或 L:表示亮暗关系
两者的区别可以简单理解为:
- HSV 更强调“颜色看起来有多亮”
- HSL 更强调“颜色处在黑和白之间的哪个位置”
设计工具、取色器、主题系统里经常能看到 HSV 或 HSL,因为它们比直接改 RGB 数值更符合人的直觉。
Lab
Lab 是一种更强调“人眼感知”的颜色模型。它常用于颜色测量、颜色转换、颜色管理等更专业的场景。
对初学者来说,不需要一开始就深入 Lab。先理解 RGB、CMYK、HSL 的角色分工,已经足够应付大多数日常开发和设计场景。
什么是色彩空间
如果说色彩模型只是“描述颜色的方法”,那色彩空间就是“这套方法的具体实现标准”。
以 RGB 为例,只有说到下面这些名字时,颜色才真正有了明确含义:
sRGBAdobe RGBDisplay P3ProPhoto RGB
它们都是 RGB 色彩空间,但区别在于:
- 三个原色基准点不同
- 白点和伽马定义可能不同
- 最终能覆盖的颜色范围不同
这也意味着,同样写成一组 RGB 数值:
- 在
sRGB里是一种颜色 - 换到
Display P3里,实际对应的颜色可能就不是完全同一个感觉
所以,单说“这是一张 RGB 图片”通常是不够的。更准确的说法应该是“这是一张 sRGB 图片”或者“这是一张 Adobe RGB 图片”。
什么是色域
色域可以简单理解为“能表示出来的颜色范围”。
这个范围可以属于不同对象:
- 一个色彩空间有自己的色域
- 一台显示器有自己的色域
- 一台打印机也有自己的色域
色域越大,理论上能覆盖的颜色越多。但这不代表实际效果一定更好,因为还要看整条链路是否都支持:
- 内容本身是不是更大色域
- 软件有没有做正确的颜色管理
- 显示设备或输出设备能不能真正还原
如果其中任何一环不支持,更大的色域就可能发挥不出来,甚至带来颜色偏差。
常见 RGB 色彩空间对比
下面这几个名字,是最容易在实际工作里遇到的。
| 色彩空间 | 色域特点 | 常见场景 | 适合初学者的理解 |
|---|---|---|---|
sRGB | 相对较小,但最通用 | 网页、普通显示器、绝大多数浏览器和消费级设备 | 默认安全选项 |
Adobe RGB | 绿色区域比 sRGB 更广 | 摄影、修图、部分打印流程 | 更偏向图像和印刷工作流 |
Display P3 | 比 sRGB 更广,尤其在红绿区域更明显 | 苹果设备、部分高端手机和显示器、现代 UI 设计 | 面向现代广色域屏幕 |
ProPhoto RGB | 非常大 | 专业摄影后期、RAW 工作流 | 适合保留更多信息,不适合直接拿来发布 |
sRGB
sRGB 可以看成“最通用的默认标准”。
它最重要的特点不是“最好”,而是“兼容性最好”。如果你做的是:
- 网页图片
- 前端界面颜色
- 通用素材导出
- 面向不确定设备的内容发布
那么优先使用 sRGB 往往最稳妥。
很多颜色问题,本质上不是因为 sRGB 太差,而是因为内容、软件和设备之间没有统一到同一套标准。
Adobe RGB
Adobe RGB 的设计目标之一,是覆盖更多适合印刷和摄影后期处理的颜色,尤其在绿色区域更有优势。
它常见于:
- 相机色彩设置
- 摄影修图软件
- 需要和打印流程配合的图像处理
但它并不适合作为所有场景的默认输出格式。因为如果目标平台对颜色管理支持不好,Adobe RGB 的图片可能会显得发灰、发暗或者饱和度不对。
Display P3
Display P3 是这几年越来越常见的一个名字。你可以把它理解成“更适合现代广色域屏幕的一套 RGB 空间”。
它常见于:
- 苹果生态设备
- 一些高端手机和平板
- 支持广色域显示的设计和媒体场景
如果你的内容主要运行在支持广色域的现代设备上,Display P3 可以比 sRGB 呈现出更鲜艳、更丰富的颜色。
但要注意,前提依然是整条链路都支持它。只靠“屏幕支持 P3”并不能保证内容一定按 P3 正确显示。
ProPhoto RGB
ProPhoto RGB 的色域非常大,经常用于专业摄影后期,目的是尽量保留更多原始图像信息,减少在编辑阶段的损失。
它更像“工作空间”,而不是“发布空间”。
对大多数开发者和普通设计场景来说:
- 你可能会在专业摄影资料里看到它
- 但很少需要直接把最终内容发布成
ProPhoto RGB
因为它太大了,如果工作流和位深控制不当,反而更容易出现问题。
实际场景里应该怎么理解
场景一:做网页和前端界面
优先把 sRGB 当成默认选项。
原因很简单:
- 兼容性最好
- 浏览器和普通显示设备处理它最稳定
- 团队协作时更不容易出现“我这边颜色正常,你那边不正常”
如果没有非常明确的广色域目标,直接用 sRGB 往往是最省心的选择。
场景二:做移动端视觉或面向苹果设备的内容
如果你的目标设备明确支持广色域,Display P3 会比 sRGB 有更大的发挥空间。
但这类项目更依赖完整的颜色管理链路,所以你需要确认:
- 设计稿是不是按
Display P3创建的 - 导出资源是否保留了正确的颜色信息
- 最终渲染环境是否真的支持广色域显示
场景三:做摄影后期或高质量打印
这时你更可能接触到 Adobe RGB 甚至 ProPhoto RGB。
它们的意义通常不是“让屏幕看起来更炫”,而是:
- 在编辑阶段保留更多颜色信息
- 为后续打印或专业输出留出空间
最终输出时,往往还要根据目标设备再转换到合适的色彩空间,甚至配合 ICC 配置文件来管理颜色。
场景四:要拿去印刷
印刷最终通常会落到 CMYK 工作流,而不是直接把 RGB 数值原封不动送去打印。
这时要注意两件事:
- RGB 能表示的颜色,不一定都能被印刷油墨还原
- 不同纸张、油墨和印刷标准,本身也会影响最终结果
所以打印不只是“把 RGB 转成 CMYK”这么简单,它本质上是一次输出目标改变后的颜色映射。
常见误区
误区一:RGB 就是一种固定颜色标准
不是。RGB 只是模型,不是具体标准。
sRGB、Adobe RGB、Display P3 都属于 RGB,但它们不是同一个东西。
误区二:色域越大就一定越好
不是。色域更大,只代表潜在可表示的颜色更多。
如果你的内容最终要发到网页、社交平台、普通设备上,盲目追求更大色域,未必比统一使用 sRGB 更有价值。
误区三:屏幕支持广色域,内容就一定会更鲜艳
也不是。内容、软件、系统、浏览器、设备要一起支持,颜色才能被正确显示。
只要其中一环处理不对,就可能出现偏色、过饱和或者失真。
误区四:CMYK 只是 RGB 的另一个名字
不是。它们面对的是完全不同的输出方式。
- RGB 面向发光设备
- CMYK 面向印刷介质
两者之间可以转换,但转换一定伴随约束和损失,不是简单替换。
怎么快速建立正确认知
如果你是开发者或刚开始接触设计,可以先建立下面这套简单判断:
- 看到 RGB、CMYK、HSL,先把它们当作“描述颜色的方法”
- 看到
sRGB、Adobe RGB、Display P3,把它们当作“具体色彩空间” - 看到“覆盖 100% sRGB”之类的话,把它理解成“设备的色域能力”
这样大多数概念就不会再混成一团。
