Ansys Speos|进行智能手机镜头杂散光分析

2024-05-01 08:52

本文主要是介绍Ansys Speos|进行智能手机镜头杂散光分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图片

本例的目的是研究智能手机Camera系统的杂散光。杂散光是指光向相机传感器不需要的散光光或镜面光,是在光学设计中无意产生的,会降低相机系统的光学性能。

在本例中,光学透镜系统使用Ansys Zemax OpticStudio (ZOS)进行设计,并使用新的“Zemax Importer”工具一键导入镜头系统到Speos中进行系统级杂散光分析。所使用的光学机械参数和透镜边缘可以在CAD平台上进行设计,然后在Ansys Speos中进行修改。这个例子主要涵盖了整个工作流程中的Speos部分,介绍了杂散光分析的概念,并演示了Speos的功能:Zemax Importer工具, light expert (LXP)光线追迹和序列检测杂散光。

操作流程概述

图片

上图是使用Ansys工具分析相机系统杂散光的典型工作流程。工作流程可分为四个部分:1. 使用“Zemax Importer”工具导入ZOS镜头设计到Speos。2. 检测所有可能的关键太阳位置和整个系统的光泄漏。3.相机视场内四个外环境太阳位置的杂散光模拟(可选)。4. 分析杂散光路径序列,对外环境太阳位置的杂散光进行抑制。

第一步:使用“Zemax Importer”工具导入OS镜头设计到Speos

使用“Zemax导入工具”导入ZOS镜头设计到Speos。在这里,使用ZOS设计的高效手机相机镜头系统,通过使用Zemax importer工具可以读取ZOS透镜数据参数,并根据它们的数学表示自动重建每个透镜,作为基于CAD的Speos透镜特性几何数据,并访问所有透镜参数。此外,该工具将ZOS材料转换为Speos材料格式,并将光学特性应用到透镜上。该成像过程使用一个照度传感器。所有几何图形的参考点、原点和照度传感器对应于图像平面的位置。然后将镜头系统添加到光学机械部分(灰色)和镜头边缘(黄色)。

图片

1. 在Speos仿真界面,点击Zemax import工具,然后选择*.ZMX的Zemax镜头设计数据,工具会自动转换Zemax的镜头数据参数、材料和能量接收器信息,并将其转换为Speos功能数据。

图片

2. 为了清晰显示镜头系统,可以以不同的颜色显示不同的镜头数。

图片

3. 定义环境太阳光源入光到镜头系统中,并在direct simulation选择source、geometry、sensor运算仿真,激活light expert为true,并在sensor中勾选LXP选项。

图片

第二步:检测所有可能的关键太阳位置和整个系统的光泄漏

使用光线逆向追踪模拟方法在一个direct模拟中研究所有可能的临界太阳位置。这是一种逆向追迹方法,从成像sensor发送光线通过相机系统到天空。通过这种方法,还可以检测机械系统中的漏光。Speos光线跟踪算法考虑了所有几何形状的所有材料行为。此外,将根据相机视场内外的临界和光线路径对这些区域进行分类。相机视场内的光源可以在镜头表面经历多次二次反光,导致鬼反光,镜头光晕在成像仪上。视场外的光源会对机械和光学零件造成杂散光散光。通过利用Speos LXP功能,可以在强度结果上可视化和导出这些特定区域的光线路径。

对于本例,假设相机系统水平对称。因此,将强度传感器作为半球体放置在系统的顶部。使用LXP功能,可以选择任意区域并显示光线传播路径。

图片

第三步:视场内四个太阳位置的杂散光模拟

在这一步中,运行了一个完整的系统杂散光模拟在相机视场内的四个不同的太阳位置(从0°到15°)。模拟使用Speos GPU运行,得到完整的相机系统在相机成像sensor上的杂散光结果为四个太阳位置分别的成像效果。

图片

图片

第四步:分析杂散光路径序列,对一个太阳位置的杂散光进行抑制

在第4步中,将通过利用Speos LXP和“序列检测”功能,识别最关键的光线路径序列(根据传感器的照度)和导致5°太阳位置的成像仪上杂散光的物体相互作用。此外,将展示如何解决明亮的鬼像。

1. 显示5°太阳位置成像结果,打开xmp,点击measure,选择杂光区域,并显示其数据结果。

图片

图片

2. 在XMP结果中,点击tools工具,sequence detection得到序列分层光线结果,得到序列层以发现从层1到层20的光线路径序列,这些序列是根据能量到达传感器的顺序排列的。

图片

3. 举例分析,序列20的光线沿着从光源发出的直接顺序路径。穿过前四个透镜,直到它们被镜面反光到物体10的正面。单击对象10以突出显示3D视图中的几何图形。

图片

4. 同样的工作流程可以应用于结果中的其他区域,以识别导致杂散光的元素。

图片

5. 一旦对系统进行了分析,就可以与设计和机械团队讨论不同光学元件对杂散光的影响。光学抛光表面的菲涅耳反光和透光率分别为4%和96%。通过改变表面的透光率,可以控制镜面杂散光。AR涂层减少了光学系统中的反光。通过在物体10的正面应用AR涂层作为面光学特性(FOP),可以消除鬼像点。

图片

重要参数设置

meshing网格设置是获得正确仿真结果的关键。它们定义了将被模拟的几何图形的质量。网格可以得到更好的结果,但也需要更长的模拟时间。粗糙的网格会导致较差的结果,特别是对于精密的光学元件。网格设置成与机身尺寸成比例,并在所有光学元件上应用了精细的局部网格。关于网格设置的更多细节可以Speos user guide在meshing中找到。

图片

这篇关于Ansys Speos|进行智能手机镜头杂散光分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/951246

相关文章

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

利用python实现对excel文件进行加密

《利用python实现对excel文件进行加密》由于文件内容的私密性,需要对Excel文件进行加密,保护文件以免给第三方看到,本文将以Python语言为例,和大家讲讲如何对Excel文件进行加密,感兴... 目录前言方法一:使用pywin32库(仅限Windows)方法二:使用msoffcrypto-too

Pandas使用AdaBoost进行分类的实现

《Pandas使用AdaBoost进行分类的实现》Pandas和AdaBoost分类算法,可以高效地进行数据预处理和分类任务,本文主要介绍了Pandas使用AdaBoost进行分类的实现,具有一定的参... 目录什么是 AdaBoost?使用 AdaBoost 的步骤安装必要的库步骤一:数据准备步骤二:模型

使用Pandas进行均值填充的实现

《使用Pandas进行均值填充的实现》缺失数据(NaN值)是一个常见的问题,我们可以通过多种方法来处理缺失数据,其中一种常用的方法是均值填充,本文主要介绍了使用Pandas进行均值填充的实现,感兴趣的... 目录什么是均值填充?为什么选择均值填充?均值填充的步骤实际代码示例总结在数据分析和处理过程中,缺失数

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

QT进行CSV文件初始化与读写操作

《QT进行CSV文件初始化与读写操作》这篇文章主要为大家详细介绍了在QT环境中如何进行CSV文件的初始化、写入和读取操作,本文为大家整理了相关的操作的多种方法,希望对大家有所帮助... 目录前言一、CSV文件初始化二、CSV写入三、CSV读取四、QT 逐行读取csv文件五、Qt如何将数据保存成CSV文件前言

通过Spring层面进行事务回滚的实现

《通过Spring层面进行事务回滚的实现》本文主要介绍了通过Spring层面进行事务回滚的实现,包括声明式事务和编程式事务,具有一定的参考价值,感兴趣的可以了解一下... 目录声明式事务回滚:1. 基础注解配置2. 指定回滚异常类型3. ​不回滚特殊场景编程式事务回滚:1. ​使用 TransactionT

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础