显示设备色彩原理: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的核心差异、子像素排列、色域关系串起来了。我建议你保存下来,做校准方案时对照着看。
色域覆盖率:别被数字骗了
色域覆盖率这个指标,行业内用得很乱。我见过两种算法:
- 面积比——设备色域三角形面积除以标准色域三角形面积。简单直观,但忽略了色域形状的差异。
- 覆盖比——设备色域能覆盖标准色域的百分比。更严格,因为设备色域可能在某些方向超出,在某些方向不足。
举个例子:一台显示器的色域三角形比sRGB大,但形状偏了。面积比可能是120%,但覆盖比只有95%。这意味着有些sRGB颜色它显示不出来。
避坑指南:采购显示器时,如果厂家只标“色域覆盖率120%”,一定要问清楚是面积比还是覆盖比。我曾经吃过这个亏——买了一批标称125% sRGB的显示器,结果覆盖比只有92%,做印刷校样根本不合格。
好了,LCD和OLED的原理、子像素排列、色域这些基础概念,咱们就聊到这儿。这些是后面做Gamma调试和色彩校准的根基。你想想看,如果连设备怎么发光都不清楚,调出来的曲线能靠谱吗?