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中找到。

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/5481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LangChain入门2 RAG详解

RAG概述 一个典型的RAG应用程序,它有两个主要组件: 索引:从源中获取数据并对其进行索引的管道。这通常在脱机情况下发生。检索和生成:在运行时接受用户查询,并从索引中检索相关数据,然后将其传递给模型。 从原始数据…

机器学习:深入解析SVM的核心概念【一、间隔与支持向量】

直接阅读原始论文可能有点难和复杂,所以导师直接推荐我阅读周志华的《西瓜书》!!然后仔细阅读其中的第六章:支持向量机 间隔与支持向量 **问题一:什么叫法向量?为什么是叫法向量**什么是法向量?…

ChatGPT向付费用户推“记忆”功能,可记住用户喜好 | 最新快讯

4月30日消息,人工智能巨头OpenAI宣布,其开发的聊天机器人ChatGPT将在除欧洲和韩国以外的市场全面上线“记忆”功能。这使得聊天机器人能够“记住”ChatGPT Plus付费订阅用户的详细信息,从而提供更个性化的服务。 OpenAI早在今年2月就已经宣布…

AJAX家政系统 自营+多商家(高级授权)+独立端口 -源码下载

应用介绍 后台:https://service.hnajax.com/hxeJVakAdf.php/index/login AJAX家政系统 自营多商家(高级授权)独立端口 基于FastAdmin和原生微信小程序开发的一款同城预约、上门服务、到店核销家政系统,用户端、服务端(高级授权)、门店端(高级授权)各端…

HTML:认识HTML及基本语法

目录 1. HTML介绍 2. 关于软件选择和安装 3. HTML的基本语法 1. HTML介绍 HyperText Markup Language 简称HTML,意为:超文本标记语言 超文本:是指页面内可以包含的图片,链接,声音,视频等内容 标记&am…

76、堆-数据流的中位数

思路: 这个问题是动态数据流中位数查找问题。在数据流中,数据是逐个到来的,而我们需要在任何时候快速返回已有数据的中位数。中位数是将数据集分成两个等长的子集,一个包含所有较小的元素而另一个包含所有较大的元素。 为了高效解…

升级 Vite 5 出现警告 The CJS build of Vite‘s Node API is deprecated

错误描述 vue3-element-admin 项目将Vite4 升级至 Vite5 后,项目运行出现如下警告: The CJS build of Vites Node API is deprecated. See https://vitejs.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated for more details.图片 问题原因 Vite 官方弃用 C…

WIN10 anaconda 安装 CondaError: Run ‘conda init‘ before ‘conda activate‘

1 下载 https://www.anaconda.com/download/success 2 安装 3 修改环境变量 安装后修改环境变量 4 winrun 进入命令窗口 输入cmd 输入 conda info 5 创建 虚拟环境 conda create -n yolov8 python3.8 -y 6 CondaError: Run ‘conda init’ before ‘conda activate’ c…

在Primavera P6 中维护自定义活动栏

前言 自从 Henry Gantt 在 1910 年左右提出这个想法以来,以图形方式显示项目进度表并沿时间刻度显示条形图一直延续到当今最复杂和流行的项目进度系统中。在本文中,我们将仔细研究 Primavera P6 Professional 中的甘特图,并探索一些自定义其…

【新知实验室 - TRTC 实践】音视频互动 Demo、即时通信 IM 服务搭建

一、TRTC 初识 TRTC 是什么 TRTC(Tencent RTC)腾讯实时音视频,源自于 QQ 音视频团队,是基于 QQ 音视频多年来的音视频技术积累,位于腾讯云的 RTC 云服务。TRTC 支持腾讯会议、企业微信直播、微信视频号、腾讯云课堂、…

一个类实现Mybatis的SQL热更新

引言 平时用SpringBootMybatis开发项目,如果项目比较大启动时间很长的话,每次修改Mybatis在Xml中的SQL就需要重启一次。假设项目重启一次需要5分钟,那修改10次SQL就过去了一个小时,成本有点太高了。关键是每次修改完代码之后再重…

FineBI学习:K线图

效果图 底表结构:日期、股票代码、股票名称、开盘价、收盘价、最高价、最低价 步骤: 横轴:日期 纵轴:开盘价、最低价 选择【自定义图表】,或【瀑布图】 新建字段:价差(收盘-开盘&#xf…

POETIZE个人博客系统源码 | 最美博客

源码介绍 POETIZE个人博客系统源码 | 最美博客 这是一个 SpringBoot Vue2 Vue3 的产物,支持移动端自适应,配有完备的前台和后台管理功能。 网站分两个模块: 博客系统:具有文章,表白墙,图片墙&#xf…

CSS 伪类、伪元素的应用实例:电池充电、高能进度条

一、目的 本文通过 CSS 伪类、伪元素,结合动画 animation 和 Vue 动态样式属性(通过 CSS 变量)的写法,来实现电池充电、高能进度条的效果,如下图所示。 二、基础知识 1、CSS 伪类、伪元素 简单概括成以下 4 点&#x…

谷粒商城实战(020 RabbitMQ-消息确认)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强 总时长 104:45:00 共408P 此文章包含第258p-第p261的内容 消息确认 生产者 publishers 消费者 consumers 设置配置类 调用api 控制台 抵达brocker 代理 新版本ReturnCallbac…

DevEco Studio mac版启动不了【鸿蒙开发Bug已解决】

文章目录 项目场景:问题描述原因分析:解决方案:此Bug解决方案总结Bug解决方案寄语项目场景: 最近也是遇到了这个问题,看到网上也有人在询问这个问题,本文总结了自己和其他人的解决经验,解决了【DevEco Studio mac版启动不了】的问题。 问题描述 报错如下。 -------…

如何判断第三方软件测试公司是否具有资质

在软件开发的过程中,软件测试是确保软件质量、稳定性和用户体验的关键环节。许多企业选择将软件测试工作交给专业的第三方软件测试公司来完成,以确保测试的准确性和公正性。但是,如何判断一个第三方软件测试公司是否具有资质呢?以…

Python urllib 爬虫入门(2)

本文为Python urllib类库爬虫更入门的一些操作和爬虫实例及源码。 目录 模拟浏览器请求 简单模拟 设置随机user-agent 请求超时 HTTP请求类型 Get请求 Post请求 抓取网页动态请求 封装ajax请求 调用 循环调用 抓取小说 封装请求函数 把html写入本地分析 调用 正…

2024年Docker常用操作快速查询手册

目录 一、Linux系统上 Docker安装流程(以ubuntu为例) 一、卸载所有冲突的软件包 二、设置Docker的apt存储库(这里使用的是阿里云软件源) 三、直接安装最新版本的Docker 三、安装指定版本的Docker 四、验证Docker是否安装成功…

Linux 手动部署JDK21 环境

1、下载包(我下载的是tar) https://www.oracle.com/cn/java/technologies/downloads/#java21 完成后进行上传 2、检查已有JDK,并删除(我原有是jdk8) rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps3、清理掉 profile中的j…