本周为大家带来的是
如何设计折反混合全景探测系统
概述
这篇文章介绍了如何在OpticStudio中设计折反混合全景探测系统 (Catadioptric Omnidirectional Sensor) 并讲解了基本的设计思路和设计技巧。
介绍
全景探测系统(或全景相机)是一个能提供360°水平方向视野的成像系统,其视野范围为球形或半球形。这类系统常用于广角成像,例如应用于监控系统、全景摄影或无人驾驶的自动导航系统中。
全景探测系统通常使用折反混合光学系统。这类系统同时包含反射和透射元件来实现全景成像。如下图所示,折反混合系统可以在水平参考平面上实现360°的视场角,在竖直方向上实现从θ到θ`的视场角(其中θ根据不同应用需求而不同)。
系统设计:技术指标
在进行设计之前,我们必须首先明确系统的总体指标要求。这包括系统的物理限制,例如最大封装尺寸,透镜直径以及玻璃种类等等。除此之外更重要的是系统的光学参数:视场角 (FOV),各个视场下的光斑大小,F数,入瞳直径 (EPD) 以及工作波长等。如果需要更加详细的描述,还可以列出系统的有效焦距 (EFL)。但是有效焦距可以通过F数和入瞳直径计算得到,因此该参数可以忽略。对于本系统来说,技术指标如下所示:
设计者需要时刻注意,这些指标是基于系统的实际应用而提出来得。例如对于MTF的指标要求是根据商用CMOS传感器的像素尺寸决定的奈奎斯特频率 (Nyquist frequency) 确定的。
系统设计:设计思路
上图所示为系统最终设计结果的实体模型图。可以看到系统主要由两个子部分组成:前组两片反射镜组成的反射系统用来收集广角光线,后组三片透镜组成的折射(透射)系统用来把收集到的光线汇聚成像。为了简化设计流程,我们将分别完成两个子系统的设计。
系统设计: 反射系统
如上一节布局图所示,反射系统主要由两片反射镜组成,其中一片为平面,另一片为曲面(平面反射镜的曲率在优化过程中会被改变)。从物理空间上来看,平面反射镜放置在曲面镜的左侧,但是在光线追迹中光线首先会入射曲面上。从第一个反射镜反射后,光线才会入射到平面反射镜上并发生反射。经过二次反射的光线与原光线的大方向相同,并穿过曲面镜中间定义的圆孔。上文给出的实体模型图中使用箭头标记了光线的传播方向。
OpticStudio可以非常方便的对上述系统进行建模。在输入其他参数前我们需要首先设置三个系统参数:孔径、视场和波长。在“孔径 (Aperture)”选项卡下,孔径类型应设置为“入瞳直径 (Entrance Pupil Diameter)”并根据设计指标设置为0.25mm。在“视场 (Field)”选项卡中,竖直方向上-15°到53°的视场范围在本模型中应分别设置为105°和37°。这是因为在OpticStudio中,视场角的定义都是参考于光轴的(Z轴)。如果系统是在光轴的竖直方向上建模的,则视场角需要进行相应的调整。为了保证视场采样充分,本系统还设置了60°和85°的中间视场。最后,由于系统在可见光的光谱范围内工作,因此设置系统工作波长为F, d, C光。
下一步设计步骤就是决定第一面反射镜的曲率以及第一、二面反射镜的间距。需要注意的是,平面反射镜的曲率半径为无穷大,并且不提供任何光焦度。平面反射镜的作用主要用来改变入射光方向。但是系统中任何弯曲的表面都会引入光焦度。第一片弯曲的镜面在改变光方向的同时会引入一定光焦度。
对于本系统来说镜面的曲率和两镜面的间隔并不唯一。所有结构参数可由单透镜公式 (Lensmaker`s Equation) 和球面镜光焦度的近似公式求解得到。其中单透镜公式如下所示:
其中n和n`为光线与界面交点前后的介质折射率,f`为表面的焦距,z和z`为物距和像距。球面精度光焦度可由下式近似表示:
由于两组公式的解有无穷多个,因此我们假设镜面的曲率半径为21.5mm,其中镜面的中间有一个直径为4mm的圆形通孔。我们将该元件放置在平面反射镜右侧18.5mm处。此外,我们需要在起始面前添加一个虚拟面来完整显示光线进入整个系统。
通过在曲面镜(表面2)上定义一个半径为2mm的“光阑 (Aperture)”来定义曲面中间的通孔。您可以参考示例文件中Mirror System.ZAR文件的相关设置。
在进行设置前需要注意以下几点:首先,OpticStudio会自动调整反射镜的尺寸以使所有光线通过反射镜反射,我们可以验证在镜头数据编辑器中的“半直径 (Semi-Diameter)”参数。您可以直接编辑这些半径参数或使用自动调整功能。其次,我们可以看到在镜头数据编辑器中的“材料 (Materials)”已经更改为“Mirror(镜面)”,该设置将告诉OpticStudio我们需要光线在该表面发生反射而不是透射。最后,需要设置曲面镜和平面镜的间距18.5mm为负值,这将使平面反射镜(表面3)放置在曲面镜的左侧。需要注意的是,如果在本例中为了将间距设为正值而翻转反射镜的顺序的做法是错误的,这会使入射光线先打到平面镜而不是曲面镜上。
此时系统的布局图如下所示:
系统设计:折射系统
我们需要新建一个文档来设计折射系统。反射镜系统主要用来收集光束,而折射系统则主要用来将光成像到探测器上。由于反射系统会引入一定的像差,因此折射系统的主要作用就是用来矫正像差。并且折射系统需要在之前反射系统的基础上进行设计。
为了确保前一个系统的光正确耦合到下一个系统中,我们需要确认所有视场下(105°视场角)的光线都进入了折射系统。为此我们需要明确光线从反射系统出射的角度,并将该角度设为折射系统的视场角,其中每个视场的视场角由当前视场的主光线决定。在OpticStudio中有很多方法可以得到一条光线的角度信息。我们可以选择追迹实际光线,但在本例中我们使用优化操作数RAID来读取任意光线在任意面的入射角度。操作数设置如下所示:
由于我们只想读取主光线的入射角而不进行任何优化,因此我们无需在操作数上设置任何目标值和权重。刷新优化编辑器后可以看到边缘视场的主光线在表面4的入射角约为16.898°,由于表面4为没有任何光焦度的平面,因此该角度就是边缘视场进入折射系统的视场角。本里中我们不仅需要将折射系统的视场角匹配从反射系统出射的光线角度,还要使反射系统出瞳的位置和尺寸与折射系统入瞳的位置和尺寸相匹配。我们可以在反射系统的系统数据报告中读取出瞳的位置和尺寸:
因此我们需要折射系统视场角全角达到40°以及入瞳直径达到2mm(为了确保折射系统可以正常工作,这里设置两个参数比反射系统稍大一些),也就是说满足这一指标的折射系统都可以用在本例中。下图所示为示例文件中的“Cooke 40 degree field.zmx”,该系统的视场角和入瞳直径符合本例的需求(如入瞳直径不匹配可以进行缩放以调整至目标值)。
已经设计好两个系统时,我们只需要将两系统耦合即可:将折射系统的数据编辑器中的数据复 制粘贴到反射系统的数据编辑器中(反之亦然),并适当调整两系统之间的厚度以使反射系统出瞳和折射系统入瞳匹配(系统数据报告中给出的入瞳位置是入瞳参考于第一个表面的距离,出瞳位置是出瞳参考于最后一个表面的距离)。需要注意的是,系统需要开启光线瞄准功能以正确追迹光线,并且该距离为初始结构,在后期的优化中会被改变。
折射系统的优化过程需要尽可能的平衡像差,并使点列图中的光斑尺寸小于指标要求中给出的35μm。然而我们需要注意无论系统优化到何种程度,系统中都会保留有一定的畸变。畸变是光学系统的放大率随视场角的变化而变化造成的。对于广角系统来说,大视场角对应的像高远大于探测器的尺寸,因此广角系统的畸变是不可避免的。并且,将系统优化到较小的像差有利于使空间频率90lp/mm处的MTF大于20%。当MTF大于这一指标时,系统的公差就相对宽松了。
本文使用以下优化策略对系统进行优化:
1、 优化RMS光斑半径
A、使用默认评价函数
B、使用高斯求积法对光瞳进行采样,采样密度为3环6臂
2、 优化RMS波前
A、使用默认评价函数
B、使用高斯求积法对光瞳进行采样,采样密度为3环6臂
C、重复第1、2步并逐渐增加采样密度(增加环数和臂数)
D、当RMS波前差逐渐接近零时,MTF逐渐贴近衍射极限
3、使用特定空间频率的MTF优化操作数MTFS/MTFT做最后的调整
在优化过程中需要注意的是,我们需要添加额外的约束操作数以保证各元件的厚度和曲率半径有效以及元件的空间位置不重叠。
本文提供的最终设计结果使用了5片镜结构来配合反射系统。系统指标参数对比、镜头数据编辑器数据、布局图以及成像结果如下所示:
由于畸变在广角系统中是不可避免的,因此在最终设计中保留了一定量的畸变属于正常情况。为了得到系统畸变的直观印象,我们可以使用OpticStudio中的几何图像分析 (Geometric Image Analysis) 工具来进行分析。与像模拟 (Image Simulation) 不同的是,几何图像分析只追迹几何光线并查看光线在像面上的位置,在计算过程中不使用快速傅里叶或任何卷积算法。该工具位于上方导航栏中的分析选项卡 (Analyze Tab) > 扩展图像分析 (Extended Scene Analysis) > 几何图像分析 (Geometric Image Analysis)。这里我们选择追迹形状为“F”的光线,可以看到成像结果存在较大的畸变: