照度 (E) 与亮度 (L) 的关系

在光学设计中,我们经常遇到这样的场景:

已知探测器接收到的照度是 EEE (Lux),想推算出光源看起来有多亮 LLL (Nits)。

很多工程师直接套用公式 E=πLE = \pi LE=πL。

但你有没有想过:立体角明明是 2π2\pi2π(半球),为什么系数却是 π\piπ?

本文将从微分几何的角度,硬核推导两者的转化关系。


01. 两个定义的再回顾

照度 (Illuminance, EEE)

E=dΦdA E = \frac{d\Phi}{dA} E=dAdΦ

  • 物理含义 :光通量在面积上的密度。
  • 几何直观 :不管光是从哪个角度射进来的,只要落在这个面元 dAdAdA 上,都算一份能量。它是"不挑食"的接收者。

亮度 (Luminance, LLL)

L=d2ΦdA⋅cos⁡θ⋅dΩ L = \frac{d^2\Phi}{dA \cdot \cos\theta \cdot d\Omega} L=dA⋅cosθ⋅dΩd2Φ

  • 物理含义 :光通量在投影面积立体角上的双重密度。
  • 几何直观 :它不仅要求光落在 dAdAdA 上,还严格限制了光的入射/出射角度。它是"极其挑剔"的描述者。

02. 关键连接点:朗伯体 (Lambertian Surface)

要建立 EEE 和 LLL 的简单关系,必须引入一个理想模型:朗伯体(如理想的漫反射白板、纸张、墙壁)。

定义 :一个表面向各个方向反射(或发射)的光的亮度 LLL 是常数 ,不随观察角度 θ\thetaθ 变化。

L(θ)=L0=Constant L(\theta) = L_0 = \text{Constant} L(θ)=L0=Constant

注意 :虽然亮度 LLL 不变,但发光强度 III 却遵循余弦定律

I(θ)=I0cos⁡θ I(\theta) = I_0 \cos\theta I(θ)=I0cosθ

(这就是为什么你侧着看纸张,觉得亮度没变,但实际上侧面发出的总能量变少了,只是因为你的投影面积也按 cos⁡θ\cos\thetacosθ 变小了,两者抵消。)

Image of Lambertian cosine law diagram


03. 核心推导:π\piπ 是怎么来的?

假设我们有一个朗伯发光面 dAdAdA,亮度为 LLL。我们要计算它向半球空间辐射的总光出射度(也可以理解为对外的照度贡献)MMM。

根据定义,光通量是亮度在立体角上的积分:

dΦ=∫ΩL⋅dAcos⁡θ⋅dΩ d\Phi = \int_{\Omega} L \cdot dA \cos\theta \cdot d\Omega dΦ=∫ΩL⋅dAcosθ⋅dΩ

我们要对半球空间 (Hemisphere) 进行积分。

在球坐标系下,立体角微元 dΩd\OmegadΩ 的表达式为:

dΩ=sin⁡θdθdϕ d\Omega = \sin\theta d\theta d\phi dΩ=sinθdθdϕ

(其中 θ\thetaθ 是天顶角 0→π/20 \to \pi/20→π/2,ϕ\phiϕ 是方位角 0→2π0 \to 2\pi0→2π)

代入积分公式:

M=dΦdA=∫02πdϕ∫0π2L⋅cos⁡θ⋅sin⁡θdθ M = \frac{d\Phi}{dA} = \int_{0}^{2\pi} d\phi \int_{0}^{\frac{\pi}{2}} L \cdot \cos\theta \cdot \sin\theta d\theta M=dAdΦ=∫02πdϕ∫02πL⋅cosθ⋅sinθdθ

因为是朗伯体,LLL 是常数,可以提到积分号外面:

M=L∫02πdϕ∫0π2cos⁡θsin⁡θdθ M = L \int_{0}^{2\pi} d\phi \int_{0}^{\frac{\pi}{2}} \cos\theta \sin\theta d\theta M=L∫02πdϕ∫02πcosθsinθdθ

第一步:积方位角 ϕ\phiϕ

∫02πdϕ=2π \int_{0}^{2\pi} d\phi = 2\pi ∫02πdϕ=2π

第二步:积天顶角 θ\thetaθ

利用三角恒等式 sin⁡θcos⁡θ=12sin⁡(2θ)\sin\theta \cos\theta = \frac{1}{2}\sin(2\theta)sinθcosθ=21sin(2θ):

∫0π2cos⁡θsin⁡θdθ=[−12cos⁡2θ]0π/2=−12(0−1)=12 \int_{0}^{\frac{\pi}{2}} \cos\theta \sin\theta d\theta = \left[ -\frac{1}{2} \cos^2\theta \right]_0^{\pi/2} = -\frac{1}{2}(0 - 1) = \frac{1}{2} ∫02πcosθsinθdθ=[−21cos2θ]0π/2=−21(0−1)=21

第三步:合并结果

M=L⋅(2π)⋅(12) M = L \cdot (2\pi) \cdot (\frac{1}{2}) M=L⋅(2π)⋅(21)

M=πL M = \pi L M=πL

结论

对于朗伯体,光出射度(或等效照度)与亮度的关系是:

E=πL \mathbf{E = \pi L} E=πL

这就是为什么系数是 π\piπ 而不是 2π2\pi2π。那个丢失的 1/21/21/2 来自于 cos⁡θ\cos\thetacosθ (投影面积修正) 在积分过程中的衰减作用。


04. 现实世界的复杂性:BRDF

如果表面不是朗伯体(比如镜子、金属、有光泽的塑料),LLL 就不是常数,而是角度 θ\thetaθ 的函数。

这时候,简单的 π\piπ 就不管用了,我们需要引入 BRDF (双向反射分布函数)

fr(ωi,ωo)=dLo(ωo)dEi(ωi) f_r(\omega_i, \omega_o) = \frac{dL_o(\omega_o)}{dE_i(\omega_i)} fr(ωi,ωo)=dEi(ωi)dLo(ωo)

  • 反射亮度 = 入射照度 ×\times× BRDF

Lout=∫Ωfr⋅Lincos⁡θidωi L_{out} = \int_{\Omega} f_r \cdot L_{in} \cos\theta_i d\omega_i Lout=∫Ωfr⋅Lincosθidωi

在 Zemax 或 TracePro 等光学软件中,当你定义一个表面属性时,实际上就是在定义这个 frf_rfr 函数(是 Gaussian 散射,还是 Lambertian 散射,还是 ABg 散射模型)。


05. 总结

  1. 公式记忆

    • 一般情况:LLL 是 EEE 在角度上的微分。
    • 朗伯体特例 :E=πLE = \pi LE=πL。
  2. 单位换算

    • 如果你看到单位 Lambert (L) ,它等于 1/π cd/cm21/\pi \ cd/cm^21/π cd/cm2。
    • 如果你看到单位 Foot-Lambert (fL) ,它等于 1/π cd/ft21/\pi \ cd/ft^21/π cd/ft2。
    • 这些古老的单位里包含 π\piπ,就是为了让 EEE 和 LLL 的数值在朗伯体下相等(为了偷懒)。但在现代 SI 单位(Lux 和 Nit)中,你必须手动乘除这个 π\piπ。
  3. 应用场景

    • 屏幕校色 :色度仪测的是 LLL (nits),但计算屏幕总辐射功率时,如果假设屏幕是朗伯体,可以乘以 π\piπ 估算总光通量密度。
    • 环境光传感器 :手机上的光感测的是 EEE (lux),它无法分辨光是集中来自一个灯泡,还是来自均匀的天花板。

复制代码
相关推荐
HL_风神1 天前
设计原则之单一职责原则
c++·学习·设计模式·单一职责原则
CS创新实验室1 天前
正态分布的深入学习:从数学发现到自然法则的演变
学习·数据挖掘·数据分析·统计学·正态分布
半夏知半秋1 天前
rust学习-Option与Result
开发语言·笔记·后端·学习·rust
王夏奇1 天前
Python库学习-标准库
学习
wenxin-1 天前
NS3学习-Packet数据包结构
网络·学习·ns3·ns3内核
Century_Dragon1 天前
特斯拉Model3智能网联汽车自动驾驶虚拟教学实训软件
学习
wdfk_prog1 天前
[Linux]学习笔记系列 -- [fs]read_write
linux·笔记·学习
风送雨1 天前
Go 语言进阶学习:第 2 周 —— 接口、反射与错误处理进阶
开发语言·学习·golang
蓝程序1 天前
Spring AI学习 程序接入大模型(框架接入)
人工智能·学习·spring