显示设备色彩原理:LCD与OLED发光机制

做色彩校准这些年,我接触过上百种屏幕。从手机到专业监视器,从LCD到OLED,每种设备的脾气都不一样。想调好颜色,你得先懂它们是怎么发光的。

说白了,LCD和OLED是两条完全不同的技术路线。一个靠背光,一个自发光。这个区别,决定了后面所有校准策略的走向。

LCD:背光永远亮着

LCD本身不发光。它像一扇百叶窗,背后有个一直亮着的灯箱。这个灯箱就是背光层,通常是LED灯珠阵列。

背光穿过液晶层,液晶分子在电压控制下扭转角度,像调节百叶窗叶片一样控制透光量。再经过彩色滤光片,就变成了你看到的红绿蓝像素。

关键点:LCD的黑色不是真黑。液晶分子无法完全挡住背光,总会有漏光。我测过很多LCD显示器,黑场亮度通常在0.1-0.5 cd/m²之间。这就是为什么LCD的对比度很难超过3000:1。

像素结构上,LCD每个像素由三个子像素组成——红、绿、蓝。每个子像素前面有一块彩色滤光片。背光穿过滤光片后,颜色就定死了。

我在项目中遇到过一个问题:某款LCD显示器在低灰阶下偏蓝。查了半天,发现是液晶分子在低电压下扭转不均匀,导致蓝色子像素的透光率偏高。后来通过Gamma曲线微调才解决。

OLED:每个像素自己发光

OLED完全不同。每个子像素就是一个独立的发光二极管。有机发光材料通电后直接发光,不需要背光,不需要液晶层。

这意味着什么?

  • 黑色是真黑——不发光就是0 cd/m²,对比度理论上无限大
  • 响应速度极快——微秒级,LCD的液晶扭转要几毫秒
  • 视角更宽——没有液晶层的光学限制

但OLED也有短板。有机材料会老化,不同颜色衰减速度不一样。蓝色子像素寿命最短,用久了屏幕会偏黄。我调过一台用了两年的OLED手机,白点偏移量Δu'v'已经超过0.01。

注意:OLED的亮度随使用时间衰减,而且不均匀。做色彩校准前,一定要先做老化补偿。我曾经跳过这一步,结果校准完一个月,屏幕又偏色了。

子像素排列:不只是RGB

你以为所有屏幕都是标准RGB排列?太天真了。

排列方式 典型应用 特点
标准RGB LCD显示器、部分OLED 每个像素3个子像素,清晰度高
PenTile 三星AMOLED 绿色子像素多,红蓝少,等效分辨率降低
RGBW 部分LCD电视 增加白色子像素,亮度高但色域窄
钻石排列 三星最新AMOLED 子像素形状优化,寿命和亮度更均衡

PenTile排列有个坑:显示细线时会出现彩边。因为红蓝子像素数量少,边缘渲染会失真。做色彩校准的时候,如果发现某个颜色通道的MTF(调制传递函数)异常低,先看看是不是PenTile。

色域:能显示多少颜色

色域就是设备能显示的颜色范围。不同标准覆盖的区域不一样。

  • sRGB——最基础的标准,覆盖CIE 1931色度图的约30%
  • DCI-P3——数字影院标准,比sRGB大25%左右,主要在绿色和红色区域扩展
  • Adobe RGB——印刷行业标准,绿色区域比sRGB大很多
  • Rec.2020——超高清电视标准,覆盖约75%的CIE 1931,目前几乎没有设备能完全覆盖

色域覆盖率怎么算?简单说,就是设备色域面积除以标准色域面积,用百分比表示。

// 色域覆盖率计算示例
// 设备色域三角形顶点坐标 (CIE 1931 xy)
device_primaries = {
  red:   {x: 0.680, y: 0.320},
  green: {x: 0.265, y: 0.690},
  blue:  {x: 0.150, y: 0.060}
}

// sRGB 标准色域顶点
srgb_primaries = {
  red:   {x: 0.640, y: 0.330},
  green: {x: 0.300, y: 0.600},
  blue:  {x: 0.150, y: 0.060}
}

// 计算三角形面积(鞋带公式)
function triangleArea(p1, p2, p3) {
  return 0.5 * Math.abs(
    p1.x * (p2.y - p3.y) +
    p2.x * (p3.y - p1.y) +
    p3.x * (p1.y - p2.y)
  )
}

// 覆盖率 = 设备色域面积 / 标准色域面积
coverage = triangleArea(device_primaries) / triangleArea(srgb_primaries)
// 结果约 1.25,即 125% sRGB 覆盖率

实战经验:别只看色域覆盖率数字。覆盖率超过100%不代表颜色准,只代表能显示更饱和的颜色。真正重要的是色域映射的精度。我见过一台标称130% sRGB的显示器,实际色准ΔE平均5.2,因为厂家只扩了饱和度,没做校准。

知识结构图

下面这张图把LCD和OLED的核心差异、子像素排列、色域关系串起来了。我建议你保存下来,做校准方案时对照着看。

显示设备色彩原理知识结构图 显示设备色彩原理知识结构 LCD 液晶显示 OLED 有机发光 背光层 + 液晶层 + 滤光片 黑场漏光,对比度 ≤ 3000:1 响应时间 4-8ms 自发光,无背光 真黑,对比度无限大 响应时间 < 0.1ms 子像素排列:RGB / PenTile / RGBW / 钻石 影响:清晰度、彩边、寿命均衡 色域标准:sRGB / DCI-P3 / Adobe RGB / Rec.2020 色域覆盖率 = 设备色域面积 ÷ 标准色域面积 × 100% 校准前先确认设备类型和子像素排列,再选色域标准

色域覆盖率:别被数字骗了

色域覆盖率这个指标,行业内用得很乱。我见过两种算法:

  1. 面积比——设备色域三角形面积除以标准色域三角形面积。简单直观,但忽略了色域形状的差异。
  2. 覆盖比——设备色域能覆盖标准色域的百分比。更严格,因为设备色域可能在某些方向超出,在某些方向不足。

举个例子:一台显示器的色域三角形比sRGB大,但形状偏了。面积比可能是120%,但覆盖比只有95%。这意味着有些sRGB颜色它显示不出来。

避坑指南:采购显示器时,如果厂家只标“色域覆盖率120%”,一定要问清楚是面积比还是覆盖比。我曾经吃过这个亏——买了一批标称125% sRGB的显示器,结果覆盖比只有92%,做印刷校样根本不合格。

好了,LCD和OLED的原理、子像素排列、色域这些基础概念,咱们就聊到这儿。这些是后面做Gamma调试和色彩校准的根基。你想想看,如果连设备怎么发光都不清楚,调出来的曲线能靠谱吗?