简介这是一份聚焦光学中光度学与色度学的章节文档面向高校光学、物理及相关专业学生也适合自学读者用来梳理概念、备考复习或为后续课程打基础。文档以单个doc文件打包大小约543KB结构围绕光的本质、光的产生、光度学、色度学和光学常数五大模块展开除文字讲解外还包含波长划分、视见函数数值、三原色理论及吸收系数等关键公式与单位说明便于按需定位知识点。官方下载页显示已有226人学习内容既有理论逻辑又有可用于计算的参数表格和公式适合配合教材精读、考前突击或课件补充。整体而言这份资料能帮助读者快速建立从光的电磁波本质到颜色计量与材料光学常数的基础框架是光学入门与复习时较实用的参考文档。1. 为什么“光度学和色度学”的第一章才是计量实验室最不该跳过的部分从事光学计量或者光电产品的品控提起“光度学和色度学”这个词很多人觉得它不过是把光谱仪、积分球、色度计接起来读个数而已。真上了生产线才发现同一个白色背光模组两台滤光片色度计可以测出差 600 K 的色温同一块屏幕两个工程师用不同视场条件测出来的亮度能差 8%。问题往往不是仪器坏了而是第一章里的基本概念没有吃透——光度学和色度学的边界、单位换算的前提、观察者条件的选择这些决定了你后面每一次测量的可信度。这一章要解决的是把“光被人眼感知的亮度”和“颜色被量化出来的坐标”这两条链路在工程上完整接通从瓦特、流明、坎德拉、勒克斯这类单位的换算逻辑到 CIE 色匹配函数的积分计算再到标定一台设备需要哪些步骤和参数。适合三类人刚接手光学测量设备的技术员、做显示面板和照明产品的质量工程师以及在实验室里想复现别人测量结论的研究人员。读完后你至少能判断手上的光谱数据应该用什么公式去处理也能知道设备测出的 x、y 色度坐标背后究竟藏着哪些风险边界。2. 先分清两条标尺辐射度量、光度量与人眼视觉模型2.1 辐射度和光度不是一回事瓦特到流明之间有一条 V(λ) 曲线光度学里最容易翻车的起点就是把“光功率”和“亮度”混为一谈。光源向空间发出的辐射功率以瓦特为单位是辐通量但人眼对不同波长的敏感度完全不同一条 380 nm 的近紫外光谱再强肉眼也看不见。所以光度学定义了一个标准加权函数 V(λ)它是暗视觉和明视觉条件下人的光谱光视效率曲线明视觉峰值在 555 nm 附近。常用的换算公式是这样L_v K_m * ∫ L_e(λ) * V(λ) dλ其中 L_e(λ) 是光谱辐亮度单位 W/(sr·m²·nm)K_m 是最大光谱光视效能标准取值 683.002 lm/W。也就是说只有把整个波长范围内的辐亮度按 V(λ) 加权积分才能得到人眼感知的亮度 L_v单位 cd/m²。这个积分不是可做可不做的它是把“物理辐射”和“人体感知”连接起来的关键操作。实际工程里我见过很多人在验证一个照明空间时直接用辐照度计读数然后宣称“照度多少勒克斯”这是错的。辐照度计给出的单位是 W/m²要想得到勒克斯必须经过同样的 V(λ) 加权E_v K_m * ∫ E_e(λ) * V(λ) dλ所以测量 LED、激光这类窄带光源时连所用的 V(λ) 曲线版本和波长间距都要写清楚。间距从二十纳米缩短到一纳米积分结果可以相差百分之几这在做灯具能效等级判定时是致命的。2.2 颜色不是光的固有属性而是色匹配函数作用的结果说清楚亮度之后颜色就好理解了。一束 650 nm 的光本身没有“红色”这回事颜色是三种视锥细胞响应经过大脑处理后的结果。CIE 在 1931 年做了一次大规模配色实验让观察者调节红绿蓝三原色去匹配单色光谱最终得到三条色匹配函数 x̄(λ)、ȳ(λ)、z̄(λ)。有了这三条函数就能把任意光谱功率分布 S(λ) 转成三个数也就是三刺激值 XYZ。工程上在计算时通常这样写X ∫ S(λ) * x̄(λ) dλ Y ∫ S(λ) * ȳ(λ) dλ Z ∫ S(λ) * z̄(λ) dλ对自发光器件S(λ) 用光谱辐亮度对反射物体S(λ) 替换为照射光源光谱与物体反射率曲线的乘积。色度坐标 x、y 只是把 XYZ 归一化x X / (X Y Z) y Y / (X Y Z)这里最需要留心的是那三条色匹配函数本身有版本和观察视场区分。我们做显示测量常用 CIE 1931 2° 视场它假定观察者用眼睛的中心凹注视小尺寸色块而 CIE 1964 10° 视场适用的是大于 4° 视角的大面积颜色评估。两个系统对同一块屏幕测出来的 x、y 会有可见差异这在做产品色域宣称时尤其明显。2.3 标准照明体 D65、A 光源与白平衡目标的关系色度计算里还有一个隐藏前提你默认的光源是什么。D65 代表平均日光相关色温约 6504 K是显示行业白点校准默认标准A 光源则是相关色温约 2856 K 的钨丝灯常用于传统光度基准和材料测试。色度计校准时厂家往往用 A 光源或者特定 LED 组合来模拟 D65但因为光谱形状与真实 D65 不同滤光片色度计测量窄带光源时会引入明显偏差。我在实验室配光谱辐射计时遇到最多的情况是对方强调“我只要一个色温读数”然后拿来一台简易色度计对准 OLED 屏幕。OLED 红光波段又窄又尖滤光片式色度计的分光带宽通常有 20 nm 甚至更宽色匹配函数被强行平滑算出来的 x、y 自然就偏移了。对这种窄带光谱要么用光谱仪实测后积分要么明确接受滤光片式设备带来的误差范围。下表可以帮你快速定位你面临的测量对象更适合哪类设备和单位测量对象关键物理量常用单位推荐设备类型自发光显示器亮度亮度cd/m²光谱辐射计/成像亮度计照明现场被照面照度勒克斯余弦校正照度计反射样品颜色三刺激值/色差ΔE分光光度计含积分球光源发光效率光通量流明积分球 光谱仪户外大气光学辐亮度W/(sr·m²)光谱辐射计按辐亮度标定3. 搭一套能复现的光度和色度测量链路仪器选型与校准3.1 探测器与光学系统的选型权衡设备选型是复现结果的第一步。常见做法是实验室做精密测量用光谱辐射计它可以同时给出绝对辐亮度和色度坐标产线快速抽检用滤光片色度计它直接输出 x、y、Y 等参数速度快、成本低但频谱选择性依赖硬件滤光片与标准的逼近程度。光谱辐射计的核心是把入射光经分光元件色散后用阵列探测器同时采集各波长信号。光谱分辨率决定了它对窄带光谱的还原能力。很多闭口不谈的坑在这一台带宽 5 nm 的便携设备测传统荧光灯没问题测激光背光就会把光功率摊薄到邻近波长最终色坐标偏得像另一块屏幕。如果你要测的样品半峰宽小于设备带宽的三倍结果基本不可信。成像亮度计是另一个方向。它通过 CCD/CMOS 阵列配合镜头给每个像素赋一个亮度值适合评价显示屏 mura、背光均匀度这类空间分布问题。但成像系统的 V(λ) 滤光片往往不如高精度光谱仪干净色度绝对精度低只能用于测量亮度分布不能直接用它的像素级色坐标做产品判定。我在搭建设备链路时会先定义清楚三个问题被测对象是自发光还是反射体需要空间分辨还是面平均判定依据是亮度、色度还是两者都要。答案落到表格里选型就不会被销售话术带偏。3.2 校准链路从标准灯到工作标准任何光度色度设备都逃不过溯源校准。国内实验室的标准做法是从中国计量科学研究院或同级机构取得标准灯再在本地建立二级工作标准。标准灯通常是钨丝灯标定值包括特定距离下的光谱辐照度或光强。你用同样的几何条件照亮光谱仪的积分球入口把设备响应系数标定出来之后测其他光源时才敢把 ADC 原始值当物理量用。校准中最容易被忽略的是波长轴。光谱仪的分光元件受温度影响会发生微小位移波长偏移零点几个纳米对窄带光源的色度计算扰动非常明显。所以每次开机校准我会先用汞氩灯或校准光源查一遍波长峰值位置偏差超过半个纳米就重新做波长定标再做辐射强度定标。顺序不能反否则强度定标和波长误差相互纠缠很难排查。探头到光源的距离也需要严格控制。光强和照度都随着距离按平方反比变化I 类光源标准灯标定时探头位置要固定到毫米级。如果你手上的标准灯证书写的是距离 500 mm 处照度值那么现场也必须严格还原这个距离支架和激光测距仪一并上别用尺子估算。3.3 最小可复现测量流程暗电流、积分时间和视场以下是一套我经常在实验室使用的测量协议测量对象是自发光平板显示器的一个 5 cm 方形区域目标输出亮度 Y 与色坐标 x、y第一步预热设备至少 30 分钟让探测器和前置放大器温度稳定第二步盖住或遮挡入射口用与正式测量相同的积分时间采集暗信号这一步叫暗电流扣除设备的底噪必须从最终读数中减掉第三步把光谱辐射计或成像亮度计的光轴垂直对准屏幕中心使用镜头焦距让被测区域正好填满视场避免把边缘像素和边框一起收进来第四步正式采集并保存原始光谱或原始图像第五步测量后再次盖上入射口采集一次暗信号这样能检查测量过程中探测器是否发生漂移。积分时间的选择非常影响信噪比。OLED 在低灰阶下亮度可能只有 0.01 cd/m²积分时间太短则信号淹没在噪声里。我会把积分时间从最短开始试观察信噪比达到可接受水平再固定下来。对脉冲调光或 PWM 调光的显示器件积分时间还必须覆盖一个完整调光周期否则亮度读数会随采样相位来回跳这是很容易被忽略的坑。视场条件也要写进报告中。2° 视场下你测量的是一个点10° 视场下是一个平均区域。同一块屏的不同位置亮度可能差 5%如果把视场扩到整个屏结果就变成全屏平均值这跟显示行业常规的中心点测量完全不是一个口径。4. 从原始信号到色度坐标核心计算、参数设置与边界4.1 用 Python 把光谱转成 XYZ 与 xy 坐标拿到一条干净的绝对辐亮度光谱后剩下的就是积分。下面这个例子演示了从光谱辐亮度 L_e(λ) 计算三刺激值和色度坐标的完整过程。这里假设数据已经完成暗电流扣除和波长对齐。import numpy as np from scipy.interpolate import interp1d # 1. 读入测量的光谱辐亮度数据单位 W/(sr·m2·nm) wave_nm, L_e np.loadtxt(measured_spectrum.csv, delimiter,).T # 2. 读出 CIE 1931 2° 色匹配函数插值到测量波长网格 cmf np.loadtxt(cie_1931_2deg_1nm.csv, delimiter,) cmf_wl, xbar, ybar, zbar cmf[:, 0], cmf[:, 1], cmf[:, 2], cmf[:, 3] xbar_i interp1d(cmf_wl, xbar, bounds_errorFalse, fill_value0.0)(wave_nm) ybar_i interp1d(cmf_wl, ybar, bounds_errorFalse, fill_value0.0)(wave_nm) zbar_i interp1d(cmf_wl, zbar, bounds_errorFalse, fill_value0.0)(wave_nm) # 3. 绝对三刺激值归一化系数为最大光谱光视效能 683 lm/W Km 683.002 X Km * np.trapezoid(L_e * xbar_i, wave_nm) Y Km * np.trapezoid(L_e * ybar_i, wave_nm) Z Km * np.trapezoid(L_e * zbar_i, wave_nm) # 4. 色度坐标 xy sum_xyz X Y Z x X / sum_xyz y Y / sum_xyz print(fXYZ ({X:.3f}, {Y:.3f}, {Z:.3f})) print(fxy ({x:.5f}, {y:.5f}))这段代码里最关键的两个参数是色匹配函数文件的波长间距和插值方式。我在处理设备原始数据时通常用线性插值如果测量光谱步长是 5 nm而色匹配函数是 1 nm线性插值不会带来明显误差但如果测量步长达到 20 nm必须先对原始光谱做更保守的重采样否则窄带尖峰会丢失结果不可逆。np.trapezoid 用的是梯形积分对平滑函数足够对带锯齿噪声的原始数据我会先做 3 nm 滑动平均再积分。特别注意这里的 Y 值并非直接等于人类视觉亮度因为 ȳ(λ) 与标准光度曲线 V(λ) 形状不完全相同二者差异通常在 1% 以内。显示行业很多设备直接打印 Y 作为 cd/m²这在多数场景下可以接受但如果你要溯源到光度基准需要单独用 V(λ) 做一次积分得到 L_v。4.2 从色度坐标推算相关色温与 Duv计算相关色温最常用的近似公式是 McCamy 公式它根据 CIE 1931 色度坐标 x、y 直接给出近似 CCT公式如下n (x - 0.3320) / (0.1858 - y) CCT 449·n³ 3525·n² 6823.3·n 5520.33这个公式在靠近黑体轨迹的色坐标上误差较小用在显示器白点评估基本够用。但到了 LED 混光照明或高饱和光源单靠 CCT 会掩盖真实表现。两个光源色温同为 5000 K一个偏绿一个偏品红McCamy 根本区分不了。此时必须引入 Duv即色度点到黑体轨迹的最短距离单位为负值或正值代表偏绿或偏品红。很多专业色温表会同时显示 CCT 和 Duv屏幕上只写一个 CCT 的往往不是严格的度量。我在报告 CCT 时总是附上色度坐标原始值。CCT 是衍生量不同公式之间差几十 K 很正常贴坐标是最没有争议的做法。4.3 反射样品、透射样品与自发光样品计算差异上面代码处理的是自发光样品。如果是反射物体入射光来自一个照明光源你的探测器看到是光源与物体的乘积。正确做法是先测照明光源的光谱 I(λ)再测物体的光谱反射率 R(λ)用二者的乘积 I(λ)·R(λ) 替换代码里的 L_e其余计算不变。透射样品同理把反射率替换为透射率 T(λ)。这个替代背后有一个大前提照明光源和探测器几何条件必须固定。分光光度计的积分球测量中常见的是 d/8° 几何也就是漫射照明、8° 接收包含镜面反射分量与否由是否开启光泽陷阱决定。许多实验室的“同一个样品两次测量颜色不一样”问题源头就是一次开了 SCI一次开了 SCE明明测的是同一块塑料板两组色坐标却有肉眼可见差别。如果你用的是便携式分光光度计设备默认几何大多也是 d/8°但不同品牌对光泽陷阱的控制不一致。跨设备比对时必须先确认几何和包含/排除镜面反射的设置再谈数据。4.4 色差评估中必须明确的观察者条件色差是质量部门最关心的判定量也是误用最多的量。计算色差前要把 XYZ 转换到 CIELAB 空间转换时必须要参考白点即 Xn、Yn、Zn。做显示类产品常用 D65 白点做印刷品和包装常用 D50 白点。参考白点选错ΔE 会整体偏移同一条产线换一个参考白点良率结论都可能反转。转换到 Lab 后ΔE 又可以分成 ΔE76、ΔE94、ΔE2000 等不同算式。ΔE94 和 ΔE2000 加入了明度、饱和度和色相的加权修正更接近人眼感知。发布数据时如果不写明用哪个公式基本相当于没写。例如同样两组颜色按下式计算ΔE76 可能给出 1.8ΔE2000 给出 0.9判定标准跨过去又跨回来。def xyz_to_lab(XYZ, Xn, Yn, Zn): def f(t): delta 6.0 / 29.0 if t delta ** 3: return t ** (1.0 / 3.0) return t / (3.0 * delta ** 2) 4.0 / 29.0 X, Y, Z XYZ fx, fy, fz f(X / Xn), f(Y / Yn), f(Z / Zn) L 116.0 * fy - 16.0 a 500.0 * (fx - fy) b 200.0 * (fy - fz) return L, a, b这段转换函数中t 的阈值选的是 6/29这是 CIE 标准里从立方根过渡到线性的拐点低于这个亮度值直接用立方根会放大噪声。在生产线上测深灰色样品时这里的处理尤其关键否则同一块样品测五次L 值跳动都超过 1线下复测必然翻车。5. 避坑光度和色度测量中最常见的 5 个翻车现场5.1 同一块屏幕两台色度计测出的白点色温不一致现象一台测出来 6500 K另一台测出来 6120 K双方都做完校准且都自称合格。原因滤光片色度计依靠硬件滤光片模拟 CIE 色匹配函数模拟精度有限制。面对窄带 LED 或量子点背光模拟器的带外泄漏让积分结果失真两个品牌的设计差异被光谱形态差异放大了。解决对窄带光源改用光谱辐射计如果必须用滤光片式色度计先与光谱辐射计做交叉验证确定该设备在目标光谱下的修正系数并将修正系数写入作业指导书。5.2 亮度读数随时间缓慢向下漂移现象同一台设备测同一块恒定亮度的面板每隔半小时读数下降 0.3 cd/m²一小时后累计下降近 1 cd/m²。原因探测器周围温度变化造成暗电流变化或者光路里的衰减片、积分球涂层在强光照射下温度升高响应率微漂。解决开机预热到热平衡再测量测量过程中每隔十分钟用挡板采集暗信号并检查稳定性如果设备内部有温度传感器设定超过 0.5°C 漂移即自动警告后补一次暗电流扣除。5.3 把照度和亮度混为一谈照度计直对屏幕读数现象有人拿照度计贴近手机屏幕读出一个数然后当作亮度写进报告。原因照度计测量的是入射到探头表面的单位面积光通量单位勒克斯屏幕亮度是单位面积向指定方向发出的光强单位 cd/m²。把照度计贴在屏幕上读数是光源与距离共同作用的结果不是屏幕亮度。解决测亮度就用亮度计或光谱辐射计如果手头只有照度计可以配合标准漫反射白板换算但条件苛刻不推荐作为常规手段。报告里必须区分单位cd/m² 和 lux 写错一个整个验收结论全会失去意义。5.4 PWM 调光屏幕的亮度读数来回跳动现象同一块屏幕每帧亮度随测量时间波动峰值最高能差 20%。原因LED 驱动采用脉冲宽度调制实际光输出是一个个脉冲。光谱辐射计的积分时间如果只覆盖了脉冲周期的一部分取样相位不同积分结果就不同。解决查找驱动频率把积分时间设置为完整周期的整数倍或者在设备触发端口接入同步信号让采样与 PWM 周期锁定。很多成像亮度计有闪烁测量模式会在一个周期内做多次采样并输出平均值用它替代单次长积分会稳定得多。5.5 同一样品在不同日期测色的结果差异现象同一天上午和下午测同一块反射样品色差 ΔE76 从 0.5 漂到 2.0。原因环境照明没有固定太阳光随着时间变化改变了照射样品的光谱功率分布或者样品环境温度变化使材料颜色微变常见于温变色材料。解决用积分球内置光源照明样品完全不依赖外界光线测量前让样品在 23°C 恒温箱中平衡 30 分钟测试报告写明温湿度条件日常对比数据使用同一套温控条件否则大量测量差异都归结为“玄学”生产排期会被这种不明所以的差异拖垮。6. 用校准和重复性验证留下“后悔药”最后说一个我踩了两次才改过来的习惯每次测量前先测一块稳定的内部参考样品。我会固定一块用于反射测量的陶瓷白板、一台稳定发光的面板以及一个标准 LED 光源三样东西专门用来做每日开机校验。前一天记录的色坐标和亮度值与今天相差超过 0.003色坐标或 0.5%亮度时检查设备状态再开始正式测试。这比任何昂贵仪器自带的“自检通过”都真实。验证重复性还有个土办法连续测量十次不要移动探头保持条件不变。算出亮度与色坐标的标准差。如果色坐标 x 的标准差大于 0.0005说明设备噪声或光源稳定性有问题先用延长积分时间和稳定光源解决。这东西看起来简单但真能在产线判定边缘案例时给你留一条后路。我在报告上一定会写三行字测量仪器型号与序列号、校准证书编号与有效期、测量几何和积分时间。缺少任何一行数据在三个月后基本没法复现等于给自己埋雷。也希望这些经验能帮到你少走我当年走过的弯路。本文还有配套的精品资源点击获取