如何模拟莫尔条纹

概述

这篇文章简单介绍了莫尔条纹 (Moire Fringing) 的基本原理并讲解了如何在OpticStudio非序列模式下模拟莫尔条纹效应。本文首先使用一个基础系统来展示多像素组成的探测器接收条纹后得到的图案,该系统将具有条纹图案的幻灯片 (Slide) 直接投影在探测器上。此外,本文还展示了更复杂且贴近实际情况的系统,在该系统中条纹图案通过透镜组成像在探测器上。本文使用的示例系统请从以下链接下载:

附件1:

https://customers.zemax.com/ZMXLLC/media/Knowledge-Base/Attachments/Moire_detector_only.zar

附件2:

https://customers.zemax.com/ZMXLLC/media/Knowledge-Base/Attachments/Moire_Non_Sequential.zar


介绍

当空间频率相近的两组条纹相互叠加时就会出现莫尔条纹。我们可以在许多系统中观察到莫尔条纹,并且莫尔条纹也经常出现在我们的日常生活中。举例来说,如果对着您的电脑显示器照一张像,大多数情况下您会看到照片中的屏幕上出现莫尔条纹。这是由于探测器由许多像素组成,这会导致探测器接收到的图像呈现出波浪形的低空间频率的莫尔条纹(黑色或彩色)。这种莫尔条纹的产生是由于屏幕的像素密度、尺寸以及间距与照相机的像素不相等造成的。

试想这样一个简单的例子:现在有两组空间频率相近的条纹图案,如下图所示。其中短条纹的条纹间距是长条纹的1.25倍。当两组条纹重合时,我们可以看到一部分短条纹的间隔被长条纹填充,一部分短条纹和长条纹重合。这就形成了正弦形状的低频黑白莫尔条纹。

在绝大多数光学设计系统中,莫尔条纹是不被接受的。例如摄影师在摄影时往往需要移动到很远的距离来避免莫尔条纹效应。此外,现代相机系统中逐渐减小的像素间隔以及图像防串扰功能也有助于抑制莫尔条纹效应。

这篇文章介绍了如何在OpticStudio中模拟莫尔条纹。首先,本文介绍了非序列系统中的莫尔条纹;其次,本文给出了模拟这类系统的建模要点,建立透镜成像系统,并在该系统中演示莫尔条纹效应。


用探测器接收莫尔条纹

使用OpticStudio的非序列模式可以模拟数字成像系统中像素化的探测器产生的莫尔条纹效应。在最基础的演示系统中,需要设置一个平行光源来照明一个有图案的幻灯片并使用探测器接收。其中幻灯片上的图案和探测器的像素共同作用产生莫尔条纹。在本例中,幻灯片的图案为黑白相间的条纹。举例来说,这就像是从电视上看节目主持人穿的条纹衬衫,条纹越密则莫尔条纹效应越明显。

打开示例文件中的Moire_detector_only.zar文件。在该文件系统配置下运行光线追迹,我们可以在探测器查看器上看到莫尔条纹效应。如下图左侧为Grid_Of_Bar的原始位图图片,右侧为探测器接收到的带有莫尔条纹效应的位图图像。

需要注意的是,虽然探测器接收到的莫尔条纹与原始位图图片中条纹方向相同,但是莫尔条纹的空间频率比原始条纹明显降低很多。其中,幻灯片中每四分之一部分的图片包含50对条纹,也就是在整个宽度中包含100组条纹;探测器的像素数量为125*125个。因此,对于一个40mm*40mm的图像来说,幻灯片中的条纹间隔为40/100 = 0.4mm,探测器像素的空间频率为40/125 = 0.32mm。由于条纹间隔比较相近(在两倍之内),因此我们可以观测到莫尔条纹。在本例中,莫尔条纹的空间频率为0.525线对每毫米。如果将幻灯片或探测器倾斜,您将看到更有趣的结果。


在系统中模拟莫尔条纹

接下来,本文会在上一节的基础上将系统扩展为透镜成像系统。本文将序列模式下的示例系统导入到当前系统中,使光源光线穿过幻灯片并发生散射。这是一个更贴近实际情况的光学系统,它模拟了光线经过物体散射穿过透镜系统后成像在探测器上的点对点成像过程。该过程可以在设计过程中模拟系统的莫尔条纹效应。

首先打开双高斯示例文件,该文件位于Zemax根目录下Samples -> Sequential -> Image Simulation -> Example 2, Double Gauss Experimental.zmx,将该系统转换到非序列模式下,使用OpticStudio中的“转换到非序列 (Convert to NSC)”功能来完成。

然后,系统数据将显示在非序列元件编辑器中,并且在物面位置处自动生成一个幻灯片物体。幻灯片物体位于光源和透镜元件之间。将其散射属性设置为朗伯 (Lambertian) 散射模型,这会使所有穿过幻灯片的光线发生散射。

最后,在幻灯片物体属性的散射路径模型中设置重点采样,它会有效增加散射系统中到达探测器的光线数量。有关重点采样的更多信息请参考我们的往期文章:如何有效的模拟散射。

经过这些设置后非序列元件编辑器应如下图所示(为了显示方便,一些列被折叠隐藏):

您也可以打开本文附件Moire_Non_Sequential.zar文件查看该系统。最后,在光线追迹时开启光线追击控制器中的非序列散射光线 (Scatter NSC Rays),本文会在探测器查看器中看到如下图像:

如上图所示,我们可以看到像面上出现了莫尔条纹。其中幻灯片图案的空间频率为100线对每50毫米,探测器为130像素每50毫米,因此低空间频率的莫尔条纹为39线对像每50毫米。

我们可以通过插入不同幻灯片图案得到不同的莫尔条纹。如下所示,当在相同的系统中插入示例图片Spoke_1024x953.jpg作为散射物体时,探测器查看器如下图所示:

由于幻灯片图案的空间频率随半径的变化而不同,因此幻灯片图案于探测像素的空间频率的差并不相同,所产生的莫尔条纹亦不相同。

我们需要注意在本节提供的示例系统中使用了理想的近轴透镜,使用该透镜只是为了本例展示方便。对于实际系统来说,理想透镜需要由前组透镜代替,前组透镜用来将幻灯片物体上不同物点发出的发散光准直。我们也可以将物体放置在距离透镜系统非常远的位置上,这样物体上各点发出的散射光相对于透镜组来说近似于平行光。然而,这样长距离的设置需要在较小的空间角内追迹数量非常庞大的光线,因此本例中使用理想透镜进行代替,这也是一个非常有效的近似方案。


小结

总的来说,莫尔条纹会对光学系统产生很重要的影响,我们可以在OpticStudio非序列中对其进行模拟。其他位图或物体阵列也可以产生摩尔条纹效应。我们可以在该示例系统中更改OpticStudio可设置的任何幻灯片图案、透镜系统以及探测器像素尺寸和间距。最后,我们可以使用阵列物体和颜色滤波器模拟在像面探测器上的彩色莫尔条纹效应。