2、成像基础:小孔成像模型、镜头的光学传递函数、CMOS传感器的角度响应特性
各位同学,咱们今天聊点成像的“老底子”。
做镜头阴影校正,说白了就是跟光“打架”。你得先知道光是怎么进来的,怎么被镜头“折腾”的,最后又是怎么被传感器“误解”的。这三件事搞不清楚,后面调参就是瞎蒙。
我个人习惯,每接手一个新项目,第一件事不是看算法,而是先把这三块基础模型在脑子里过一遍。嗯,咱们开始。
2.1 小孔成像模型:理想很丰满
小孔成像,你初中物理就学过。一个暗箱,前面戳个小孔,外面景物就倒着映在底片上。这个模型简单到令人发指,但它是一切成像的“理想国”。
为什么说它理想?因为它没有畸变、没有暗角、没有模糊。光线直来直去,像数学公式一样干净。
数学上怎么描述?很简单:
// 小孔成像模型(理想透视投影)
// 世界坐标点 (X, Y, Z) 映射到像平面 (u, v)
// f 为焦距,cx, cy 为主点偏移
u = f * (X / Z) + cx
v = f * (Y / Z) + cy
这个公式,你写一万遍都不为过。它是所有相机模型的“祖宗”。
但注意了,现实中没有完美的小孔。孔大了,画面模糊;孔小了,光线不够。所以镜头就出现了——用一堆玻璃片,模拟一个大号的、能聚光的“小孔”。
我在项目中遇到过一件事:有个同事死活调不好阴影校正,最后发现他用的模型根本没考虑主点偏移。他把cx、cy直接设成0了。你说这能对吗?
核心要点:小孔成像模型是“基准线”。所有镜头阴影校正,最终目标都是让实际成像尽量逼近这个理想模型。
2.2 镜头的光学传递函数:光是怎么被“欺负”的
镜头不是完美的。光穿过一堆玻璃片,会发生三件事:衰减、散射、畸变。
咱们重点说衰减——也就是阴影校正要对付的“罪魁祸首”。
镜头衰减有个著名的规律,叫“余弦四次方定律”。说白了:
- 画面中心的光线,直直地进来,能量损失最小。
- 画面边缘的光线,斜着进来,路径长、角度偏,能量损失大。
数学上,边缘照度 E(θ) 和中心照度 E₀ 的关系是:
E(θ) = E₀ * cos⁴(θ)
其中 θ 是光线入射角。你想想看,当 θ=30° 时,cos⁴(30°) ≈ 0.56。边缘亮度直接腰斩!
这就是为什么你拍一张纯白墙壁的照片,四角总是发暗。不是墙的问题,是镜头在“偷光”。
避坑指南:我曾经以为这个 cos⁴ 定律是绝对的,后来发现广角镜头更复杂。有些镜头用了非球面镜片,衰减曲线会偏离理论值。所以,别死磕公式,实际标定才是王道。
除了衰减,镜头还有光学传递函数(OTF)。这东西听着玄乎,其实就是描述镜头“传递信息”的能力。它包含两部分:
- 调制传递函数(MTF):描述对比度损失。边缘的细节为什么模糊?MTF 下降了。
- 相位传递函数(PTF):描述相位偏移。边缘的物体为什么感觉“歪了”?PTF 在作怪。
做阴影校正时,我们主要关心照度衰减(即低频成分),但如果你要做得精细,MTF 也得考虑。因为阴影校正不只是提亮边缘,还得防止把噪声也一起放大了。
2.3 CMOS传感器的角度响应特性:最后一公里的“偏见”
光好不容易穿过镜头,打到传感器上。你以为就完事了?
不,传感器也有自己的“脾气”。
CMOS 传感器每个像素上面有个微透镜,用来把光汇聚到光电二极管上。但微透镜有方向性——它只对垂直入射的光最敏感。
斜着来的光,会怎么样?
- 一部分光被微透镜“漏掉”了,没进到光电二极管。
- 一部分光串到了隔壁像素,造成“串扰”。
- 像素的量子效率(QE)随入射角下降。
这就是传感器的角度响应特性。它和镜头的 cos⁴ 衰减叠加在一起,让画面边缘更暗。
我建议你记住一个概念:“主光线角”(CRA)。每个镜头都有自己的 CRA 曲线,每个传感器也有自己的 CRA 曲线。两者必须匹配。
注意:我曾经接手过一个项目,镜头和传感器是不同厂家提供的。镜头 CRA 是 25°,传感器 CRA 是 20°。结果呢?边缘不仅暗,还偏色!因为不同颜色通道的像素对角度响应不一样。最后只能重新选型,教训深刻。
传感器的角度响应,可以用一个简单的模型描述:
// 传感器角度响应模型(简化版)
// S(θ) 为相对响应,θ 为入射角,θ₀ 为峰值角度
S(θ) = cos( (θ - θ₀) * k )
// 其中 k 是衰减系数,由微透镜设计决定
实际项目中,我们通常把镜头衰减和传感器响应合并成一个“综合阴影模型”。标定时拍一张均匀亮度的灰卡,然后拟合出一个二维增益曲面。这个曲面,就是你要补偿的“反函数”。
2.4 三者如何协同?
咱们捋一下:
- 小孔成像模型告诉你“理想情况应该是什么样”。
- 镜头光学传递函数告诉你“镜头把光搞成了什么样”。
- 传感器角度响应告诉你“传感器又添了什么乱”。
阴影校正,就是在这三个模型的基础上,算出一个补偿矩阵。让最终输出的图像,尽量接近小孔成像的“理想国”。
说白了,你是在跟物理规律对着干。但别怕,有模型在手,就有章可循。
总结一句话:没有成像基础,阴影校正就是盲人摸象。把这三个模型吃透了,你再看阴影校正的算法,就像看一张清晰的路线图。
好,这一章就到这儿。下一章咱们聊聊“阴影校正的数学模型”,我会手把手带你推导那个经典的增益公式。到时候你会发现,前面这些基础,全用得上。
课后小作业:找一张你手机拍的纯色墙壁照片(尽量均匀光照),用 Photoshop 或 Python 看它的四角亮度。算一算,实际衰减和 cos⁴ 定律差多少?