透镜像差与容差:球差、彗差的成因与判读
一句话结论:同一焦距下球差波前随孔径四次方增长、彗差随视场线性增长;最佳焦面下球差系数约 1λ 时,PV 才到 λ/4、Strehl 降到 0.8。
一个物点为什么会散成一片
把一颗恒星放在广角照片的角落,放大后它往往不是一个点,而是一小段朝画面中心拖出的光斑;用一片平凸透镜对准远处的路灯,前后移动白纸,最亮的会聚位置和看起来最清楚的位置也常常不重合。这些现象分别指向两类不同的缺陷:彗差和球差。
理想的成像系统在近轴近似下把物点映射成像点:从同一点发出的所有光线经过透镜后重新交于一点,出射波前是一个以像点为中心的球面。真实系统偏离这幅图景有两个独立原因。衍射来自光的波动性,即使透镜完美,点物也会变成一个有限大小的艾里斑;像差来自几何光线偏离近轴路径,用光线追迹就能描述。两者会叠加,但判断问题时必须分开:缩光圈能减小像差,却会让衍射斑变大。
本文用两个量来度量像差。波前像差 $W$ 是实际出射波前相对理想参考球的光程差,单位通常取波长;横向光线误差 $\varepsilon$ 是光线落在像面上的位置相对理想像点的偏移,单位取微米或毫米。前者决定 Strehl 比和像的峰值强度,后者决定光斑的几何范围。很多关于像差的混乱,来自把这两个量当成同一个东西。
像差的根源可以先压缩成一句话:透镜公式里的 $\sin\theta\approx\theta$ 只在小角度下成立,而真实镜片的外缘光线以大角度入射。把 $\sin\theta$ 展开到下一项,理想成像条件就被破坏,剩下的偏差按孔径和视场的高次项出现。下面先把这条因果链走完,再谈怎样从一张光斑图或波前报告里读出是哪一类像差。
近轴近似失效:不同孔径的光线不共点
薄透镜公式来自近轴近似。轴向光线与光轴夹角为 $\theta$ 时,斯涅尔定律要求 $n_1\sin\theta_1=n_2\sin\theta_2$,而近轴计算把 $\sin\theta$ 换成 $\theta$。这个替换在 $\theta$ 很小时误差是 $\theta^3/6$ 量级;视场角、孔径角或两者同时变大,三次项就不再可以忽略。赛德尔(Seidel)在十九世纪把由此产生的单色偏差整理成五类:球差、彗差、像散、场曲和畸变。它们不是五种互不相干的“镜头毛病”,而是同一个三次展开在不同对称性下的五个项。
球差是最容易看清的一项。取一片曲面向物的平凸透镜,焦距 $f=100$ mm,通光口径 $D=25$ mm(F/4),玻璃折射率 $n=1.5168$,中心厚度 6 mm。平行光从左侧入射,用斯涅尔定律逐面追迹,近轴光线交轴于 $z=102.044$ mm,而从边缘 $h=12.5$ mm 入射的光线交轴于 $z=100.319$ mm。边缘焦点比近轴焦点更靠近透镜,两者沿轴的间距
$$\mathrm{LSA}=z_{\text{近轴}}-z_{\text{边缘}}=1.726\ \text{mm}$$
称为轴向球差(longitudinal spherical aberration)。边缘光线偏折得更强,这是球面外缘的斜率相对理想非球面偏大造成的,不是玻璃吸收或装调误差。
同一个球差可以用三种数描述,它们的孔径幂次不同:
- 轴向球差 $\mathrm{LSA}$:焦点沿轴错开的距离,初级像差下 $\mathrm{LSA}\propto h^2$;
- 横向光线误差 $\varepsilon$:边缘光线落在近轴焦面上的高度,$\varepsilon\approx \mathrm{LSA}\cdot u\propto h^3$,其中 $u=h/f$ 是边缘孔径角;
- 波前像差 $W$:出射波前相对参考球的光程差,初级球差写成 $W=W_{040}\rho^4$,$W_{040}\propto h^4$。
三者描述的是同一个波前的不同测量,并不矛盾。把波前对瞳孔坐标求一次导,得到光线角度的偏差;再乘上到焦面的距离,得到横向位移。每求一次导,孔径幂次降一,所以 $h^4$、$h^3$、$h^2$ 会同时出现。工程上如果只报一个“球差 0.2 mm”,必须问清它是 LSA、横向弥散还是波前误差,否则数值无法比较。
对初级球差、小数值孔径和空气中成像,还可以把 LSA 与波前系数连起来。边缘光线的横向误差近似为 $\varepsilon\approx \mathrm{LSA}\cdot u$,而由 $W=W_{040}\rho^4$ 求导可得 $\varepsilon\approx 4W_{040}/u$。两式联立,
$$W_{040}\approx \frac{\mathrm{LSA}\cdot u^2}{4}=\frac{\mathrm{LSA}\cdot \mathrm{NA}^2}{4}.$$
对上面的透镜,$\mathrm{NA}=D/(2f)=0.1225$,代入得 $W_{040}\approx 0.0065$ mm,即约 $11.8\lambda$($\lambda=550$ nm);用波前光程直接拟合得到 $12.6\lambda$,两者相差约 7%。差异来自有限数值孔径下的高阶项,说明这个式子适合做量级判断,不能代替逐面追迹。
球差:把三次方、四次方和一次收光圈分开

图 1:理想透镜(上)把所有平行光线聚焦到轴上同一点;球面透镜(下)的边缘光线焦点更靠近透镜,近轴焦点与边缘焦点沿轴分开。为便于观察,图中的偏离做了放大。
图 1 给出球差的几何直觉:理想透镜的出射波前是规则球面,所有光线交于一点;球面透镜的外缘把光线折得更弯,焦点提前。实际镜头不会只用一个球面,但每一片球面镜片都带着这项偏差,设计者用后续镜片、非球面或更小的通光口径把它压回去。
把同一片透镜逐档收小,得到的数字比“球差很大”这种定性说法有用。表 1 的每一行都来自同一套逐面追迹,波长固定为 550 nm;$W_{040}$ 是边缘波前相对近轴参考球的球差系数,PV 和 RMS 是最佳焦面下 $W_{040}(\rho^4-\rho^2)$ 的残余,Strehl 由圆瞳衍射积分算出。
表 1:f=100 mm、n=1.5168 平凸透镜的球差随光圈变化。LSA 为边缘光线相对近轴焦点的轴向差;PV、RMS 为最佳焦面下重新调焦后的波前残余;Strehl 由精确圆瞳积分得到,λ=550 nm。
| 光圈 | 孔径 D/mm | LSA/mm | $W_{040}/\lambda$ | 最佳焦面 PV/λ | RMS/λ | Strehl |
|---|---|---|---|---|---|---|
| F/4 | 25.0 | 1.726 | 12.6 | 3.16 | 0.941 | 0.042 |
| F/5.6 | 17.9 | 0.873 | 3.21 | 0.803 | 0.239 | 0.100 |
| F/8 | 12.5 | 0.426 | 0.761 | 0.190 | 0.0568 | 0.880 |
| F/11 | 9.09 | 0.225 | 0.212 | 0.0530 | 0.0158 | 0.990 |
从 F/4 收到 F/8,孔径减半,$W_{040}$ 从 12.6λ 降到 0.761λ,比值约 16.6,接近 $2^4=16$;Strehl 从 0.042 升到 0.880,跨过 0.8 的衍射极限线。再收到 F/11,$W_{040}$ 只有 0.212λ,连“把 λ/4 直接套在系数上”的严格算法也接近满足。这个例子说明,球差对光圈非常敏感:大光圈下占主导的偏差,收两档就可能退居次要地位。

图 2:同一片平凸透镜的球差标度。(a) 轴向球差与入射高度平方成正比,拟合 $\mathrm{LSA}=0.0110h^2$ mm,$R^2=0.99996$;(b) 球差系数 $W_{040}$ 随 F 数按四次方下降。虚线为最佳焦面下约 1λ 的容差,点线为未重新调焦时 λ/4 对应的 0.25λ 系数。参数与表 1 相同。
图 2(a) 把“平方”直接画出来:横轴取 $h^2$,数据点落在一条直线上;图 2(b) 把同一组数据换成 F 数,双对数坐标下的斜率约为 -4。两条曲线来自同一套追迹,只是分别看轴向误差和波前误差。
收光圈不是没有代价。衍射斑的直径按 $d_{\text{Airy}}=2.44\lambda F$ 增长:F/4 时约 5.4 µm,F/8 时约 10.7 µm,F/11 时约 14.8 µm。球差减小、衍射斑变大,两者在某个光圈附近相交,这就是“最佳光圈”的物理来源。对这片透镜,F/8 到 F/11 是合理工作区;继续收到 F/16,$W_{040}$ 只剩 0.047λ,像质由衍射和传感器像素决定,球差已不是主要矛盾。
这里需要区分两种“消球差”的目标。一种是把 $W_{040}$ 压到远小于一个波长,让系统接近衍射极限;另一种是让球差与其他像差在特定视场、特定波长下相互抵消,得到可接受的综合性能。前者是单片镜片收光圈能做到的,后者要靠多片设计。下一节的彗差就是多片设计里更难单独对付的一项。
彗差:视场把光束切成不对称的一片
把物点从光轴移到视场边缘,球差那种轴对称性就不存在了。通过光阑中心的主光线仍然决定像点的大致位置,但进入透镜的光锥上下两侧不再对称:靠近光轴的一侧与远离光轴的一侧,经过不同环带后的放大率不同,光线落点偏向一边,光斑从圆点变成一头密、一头散的彗星形。这就是彗差(coma)。
用归一化视场 $H$、光瞳半径 $\rho$ 和方位角 $\varphi$,初级彗差的波前可以写成
$$W=W_{131}H\rho^3\cos\varphi.$$
对 $\rho$ 求导得到横向尾长,它正比于 $H\rho^2$。固定孔径时,尾长随视场一次方增长;固定视场时,尾长随孔径平方增长。这两个幂次是判读彗差最直接的线索:把光圈收小,尾长按平方下降;把画面从中心移到边缘,尾长按一次方上升。初级球差没有这种随视场的一次项,所以“轴上很好、边缘拖尾巴”通常不是球差单独造成的。
彗差与 Abbe 正弦条件的关系也值得记住。理想成像要求不同孔径角的光线满足 $\sin\alpha_o/\sin\alpha_i$ 为常数;薄透镜满足的却是正切条件,两者在角度不大时只差 $\alpha^3$ 量级,这一项正好对应彗差。同时校正球差与彗差的系统称为 aplanatic(等晕)系统,显微镜物镜和望远镜物镜的设计里经常出现这个词。

图 3:球差与彗差的对比。(a) 轴上不同高度光线的焦点沿轴分开,边缘焦点比近轴焦点近 1.73 mm;(b) 轴外点在同一像面上的几何光斑,H=0.4、0.7、1.0 三行使用同一比例尺,尾长随视场线性增长。图 (b) 由初级彗差波前的光线追迹得到,不含衍射。
图 3 把两类像差放在一起看:球差的光线沿轴依次交于不同位置,在最佳焦面上形成相对对称的弥散斑;彗差在最佳焦面上也不对称,能量集中在一头,另一头拖长。实际镜头里两者会叠加,轴上以球差为主,视场边缘则可能变成彗差、像散和场曲的混合。判断时先看轴上是否已经模糊,再看边缘的拖尾方向是否随视场翻转,比单看一张模糊照片可靠。
彗差也不能只靠收光圈解决。收小光圈会让尾长按孔径平方下降,但同时损失进光量、放大衍射斑;而且彗差的波前系数本身与光阑位置有关,移动光阑可以改变彗差,却可能把球差或像散推大。常见的做法是用对称式结构让上下光线的彗差相互抵消,或在广角镜头里加入专门的彗差校正组。非球面可以给设计者更多自由度,但每一片非球面的面形误差和装调偏心都会引入新的像差,不能把它当成单独消除彗差的开关。
像散、场曲、畸变与色差:用幂次判读
其余几类像差可以放进同一套“随孔径、随视场”的框架里。它们常被一起讨论,因为在实际镜头中往往同时出现,但判读的线索不同。
像散(astigmatism)发生在轴外。斜入射的光束在子午面(包含光轴和物点的平面)与弧矢面(与子午面垂直的平面)里聚焦位置不同,一个物点先会聚成一条焦线,再变成另一条方向垂直的焦线,中间是最小弥散圆。初级像散的波前含 $H^2\rho^2\cos2\varphi$ 项,横向误差随视场平方、随孔径一次方增长。收光圈能减小弥散,但两条焦线的位置不会因此重合;要真正消除,需要多片设计或非球面。
场曲(field curvature)是不同视场的焦点不落在同一平面上。平面传感器放在理想像面时,中心清楚、边缘离焦;把像面弯成 Petzval 曲面才能全部对上。Petzval 和由各片的光焦度与折射率决定,正负光焦度搭配可以把像面拉平。收光圈能增加景深、让边缘看起来清楚一些,但它改变的是弥散圈,不是像面的曲率。
畸变(distortion)只改变主光线的落点,不改变清晰度。初级畸变的波前含 $H^3\rho\cos\varphi$ 项,像高偏差随视场三次方增长,表现为桶形(直线向外弯)或枕形(直线向内弯)。它与光圈基本无关,所以收光圈不会把弯曲的直线拉直;校正手段是光阑位置、对称结构或软件几何校正。因为畸变是可预测的几何映射,标定后用软件拉直通常很有效,代价是边缘视场被重采样。
色差(chromatic aberration)来自玻璃折射率随波长变化。轴向色差让不同波长的焦点沿轴错开,横向色差让不同波长的放大率不同、在像边缘形成彩边。前者随孔径平方增长,后者随视场增长。消色差双胶合可以让两个波长的焦点重合,但中间波长仍有二级光谱;收光圈只能减小轴向色差造成的弥散,不能把焦点真正并到一起。横向色差由不同波长的放大率差异决定,收光圈不会把它消掉。
表 2:六类像差的主导项与判读线索(初级像差,示意)。表中幂次用于判断趋势,不替代具体系统的逐面追迹;“随孔径/随视场”列给的是波前项的主导幂次,最后一列才是收小光圈时的实际变化。
| 像差 | 波前主导项(示意) | 随孔径(波前) | 随视场(波前) | 典型光斑/像面表现 | 收光圈时的变化 |
|---|---|---|---|---|---|
| 球差 | $W_{040}\rho^4$ | $h^4$ | 无 | 轴上圆斑,边缘焦点更近 | 明显减小 |
| 彗差 | $W_{131}H\rho^3\cos\varphi$ | $h^3$ | $H$ | 彗星状拖尾 | 减小但不消失 |
| 像散 | $W_{222}H^2\rho^2\cos2\varphi$ | $h^2$ | $H^2$ | 两条互相垂直的焦线 | 弥散减小,焦线位置不变 |
| 场曲 | $W_{220}H^2\rho^2$ | $h^2$ | $H^2$ | 中心清楚、边缘离焦 | 景深增大,像面仍弯 |
| 畸变 | $W_{311}H^3\rho\cos\varphi$ | 基本无关 | $H^3$ | 直线弯曲,不模糊 | 几乎不变 |
| 色差 | 轴向 $\propto\Delta n\rho^2$;横向 $\propto H$ | 轴向 $h^2$;横向基本无关 | 横向 $H$ | 彩色弥散或边缘彩边 | 轴向减弱;横向基本不变 |
表 2 可以当成一个排查顺序:先看轴上是否也模糊,若是,优先查球差和轴向色差;若只有轴外变差,再看光斑是拖尾、双线还是整体离焦,分别对应彗差、像散和场曲;如果像很清楚但直线弯了,查畸变;换一个波长或加一片滤光片,彩边明显变化,则是色差。这个顺序不能代替设计软件,但能在拿到一张异常照片或一份波前报告时,先把问题缩小到一两类。
瑞利判据到底在说什么
球差小到什么程度才算“可以接受”?工程上最常引用的两条线是瑞利(Rayleigh)的四分之一波长判据和马雷夏尔(Maréchal)的均方根判据。它们经常被简写成“波前误差小于 λ/4”和“RMS 小于 λ/14”,但两者量的不是同一个对象,直接套用很容易把容差算错四倍。
瑞利判据的原始表述是:出瞳处波前的峰谷差小于 λ/4 时,衍射图样与理想情况差别不大。它针对的是已经接近完善校正、只剩一种特定像差的系统,最初讨论的正是球差。关键在于“峰谷差”是相对最佳焦面的参考球而言的,不是直接把球差系数 $W_{040}$ 拿去和 λ/4 比较。
对初级球差,最佳焦面下的波前可以写成
$$W=W_{040}(\rho^4-\rho^2).$$
这里的 $-\rho^2$ 项代表重新调焦:把像面从近轴焦点移到最佳焦点,相当于在波前上叠加一个离焦项,使残余误差的峰谷差最小。这个函数的极值出现在 $\rho=0$、$\rho=1/\sqrt{2}$ 和 $\rho=1$,计算得
$$\mathrm{PV}=\frac{|W_{040}|}{4},\qquad \mathrm{RMS}=\frac{|W_{040}|}{\sqrt{180}}.$$
令 PV=λ/4,得到 $|W_{040}|=\lambda$。也就是说,最佳焦面下球差系数可以到约一个波长,峰谷差才刚好是 λ/4。若直接把 λ/4 套在 $W_{040}$ 上,会得到 0.25λ,容差被收紧四倍;只有在“不重新调焦、就用近轴焦面”的特定情况下,这个更严的数字才对应 λ/4 的峰谷差。
马雷夏尔判据从 Strehl 比出发。小像差下
$$S\approx e^{-(2\pi\mathrm{RMS}/\lambda)^2}.$$
令 $S=0.8$,解出 $\mathrm{RMS}=\lambda/13.4\approx\lambda/14$;对上面的球差残差,$\mathrm{RMS}=|W_{040}|/\sqrt{180}$,代入得 $|W_{040}|\approx0.96\lambda$。精确的圆瞳衍射积分在 $W_{040}=0.958\lambda$ 时给出 Strehl=0.815,在 $W_{040}=\lambda$ 时给出 0.800;近似式略保守,但两条判据都指向“约一个波长”这个量级。

图 4:最佳焦面下球差的容差。(a) 峰谷差 PV 与均方根 RMS 都随 $W_{040}$ 线性增长,λ/4 线与 λ/14 线分别落在 1.0λ 和 0.96λ;(b) 精确圆瞳衍射积分得到的 Strehl 比,在 $W_{040}\approx\lambda$ 时降到 0.8。阴影区为 Strehl>0.8 的衍射极限区。
图 4 把两条判据放在同一张图上:λ/4 是峰谷差,λ/14 是均方根,二者对同一个球差残差给出略有差异的阈值,但都不是“球差系数必须小于 λ/4”。这也解释了为什么表 1 中 F/8 的 $W_{040}=0.761\lambda$ 仍能给出 Strehl=0.880:它的 PV 只有 0.190λ,RMS 只有 0.0568λ,已经在衍射极限区内。
容差不是固定常数。同样的 $W_{040}$,在目视望远镜、手机摄影和光刻投影物镜里的可接受程度不同:目视系统可能允许接近 λ 的残余;手机摄影还要把传感器像素、衍射和算法锐化一起算进去;光刻投影物镜的波前预算通常更紧,面形、装调和热变形都要分配进去。引用 λ/4 或 λ/14 时,至少要同时说清三件事:量的是 PV 还是 RMS、参考面是不是最佳焦面、系统里还有没有其他像差。缺了这三条,一个“小于 λ/4”的结论无法复核。
镜头设计怎样校正和容忍这些像差
镜头设计的第一件事不是找一种“消像差镜片”,而是决定在哪个孔径、视场和波段内把误差分配到什么程度。球差、彗差、像散、场曲、畸变和色差对镜片参数的反应不同,改动一个曲率或间隔,往往同时改变好几项。设计软件用逐面光线追迹和优化算法处理这些耦合,设计者的工作则是给出合理的目标和约束。
可用自由度大致有几类。改变镜片弯曲(bending)可以在不改变光焦度的前提下调整球差和彗差;移动光阑改变主光线路径,主要影响彗差、像散和畸变;换玻璃利用阿贝数和折射率差,处理色差和 Petzval 和;非球面给面形增加高次项,用一片镜片压掉球面镜片压不下的球差和彗差;多片组合则把偏折分散到更多面,让每一面承担的角度小一些。库克三片式(Cooke triplet,正—负—正)之所以经典,是因为它在最少片数下同时校正了五类赛德尔像差和色差,后面的复杂结构大多可以看成它的推广。
校正和容忍是两件事。校正是在设计阶段把像差压到目标值;容忍是承认加工和装调会带来偏差,预先分配误差预算。镜片曲率半径、中心厚度、折射率、偏心、倾斜、间隔都有公差,装配后还会出现镜片间空气间隔不均和传感器倾斜。高精度镜头要在设计阶段做蒙特卡洛公差分析,把每个公差对波前 RMS 的贡献加起来,再决定哪些面要磨得更准、哪些可以用调整环补偿。手机镜头大量使用非球面,除了校正像差,也是为了在很小的体积内减少片数;代价是非球面的面形误差和偏心更敏感,检测和装配要求更高。
回到球差和彗差这两个例子。球差主要靠面形、玻璃和孔径控制:缩小光圈最直接,但会牺牲进光量和衍射极限;非球面可以把边缘光线的偏折调到接近理想;多片组合则让每片承担较小的偏折。彗差主要靠光阑位置和结构对称性控制:把光阑放在合适位置,让上下光线的放大率差相互抵消;对称式镜头天然比非对称结构更容易压彗差。广角镜头还要同时处理畸变和场曲,长焦镜头更关注二级光谱和彗差,显微物镜则要在高 NA 下同时压球差、彗差和色差。没有一套参数能通吃所有场合。
实际判断一支镜头时,可以按下面的顺序做几次观察:排除对焦错误后,最大光圈下看画面中心,如果中心仍然发虚,球差或轴向色差可能占主导;把光圈收两档,若中心明显变实、边缘拖尾减轻,说明球差和彗差在起作用;再看画面边缘的光点,是朝一个方向拖尾(彗差)、拉成椭圆(像散)、整体离焦(场曲),还是只有彩边(横向色差);最后拍一张方格或直线,若线条弯曲但细节清楚,查畸变。这个顺序不需要光学设计软件,但能把“镜头不够锐”拆成可验证的几项,也能解释为什么同一支镜头在不同光圈、不同视场下的表现会差这么多。
参考资料
- Wikipedia. Spherical aberration.
- Wikipedia. Coma (optics).
- Wikipedia. Strehl ratio.
- Addiego G. Investigation of a Focused-Image Lens-Hologram Projection System for Microlithography. Memorandum No. UCB/ERL M90/89, Electronics Research Laboratory, University of California, Berkeley, 1990, §5.3.4, pp.144–145.
- Paschotta R. Optical Aberrations. RP Photonics Encyclopedia.
- Wikipedia. Optical aberration.
- Wikipedia. Abbe sine condition.
- Ling S. J., Sanny J., Moebs W. Thin Lenses. University Physics Volume 3, §2.4, OpenStax, Rice University.
- Wikipedia. Petzval field curvature.
- Wikimedia Commons. File:Spherical aberration 2.svg. 作者 Mglg,公有领域;图 1 由此图渲染并裁去白边。
- 时间帧平台. 图 2–4 为平台原创物理仿真(CC BY 4.0),绘图代码与追迹数据见素材包
assets/make_figures.py与assets/raytrace_results.json。