2025-07-24
1. Zemax非序列追迹
1-1. 在进行0视场追迹的时候,通过路径分析发现到达探测器的光线只有36%,为了解决这个问题,之后又给很多面镀了AR膜,探测器光线确实变多,但是发现这样做没有必要:因为透过率低没有问题,只要不影响成像即可。(没有要求能量随时率低?再查一下) 1-2. 在Zemax非序列模式下删除了所有镜片的镀膜,打开所有椭圆光源进行追迹,通过探测器查看器查看成像质量,找到抑制鬼像的关键面并镀膜,重新使用各个单光源进行杂散该光分析。
2-1. 尝试打开所有光源,考虑镜筒CAD文件进行非序列追迹。发现“能量损耗(错误)”很大,甚至大于“能量损耗(阈值)”,查询Zemax用户手册,发现又多种可能原因: “有时几何误差或舍入误差会导致光线追迹无法继续进行。几何误差通常是由欠定义的实体或不合适的物体嵌套所导致的。当某个表面的迭代失败或者无法计算膜层数据时,有可能造成一些光线的入射点和折射数据计算有误。当光线经过物体的交切点、嵌套层或线段数量达到所设定的最大值时,光线追迹同样会报错并中止。光线追迹控制会将这类错误造成的损耗显示在能量损耗(错误)中。 ”
2-2. 最终暂时放弃解决这个问题,由于:如果我使用加了镜筒的完整模型A与完整缩比模型B来对比的话,我依旧需要SW来设计B的镜筒STEP文件,做到这一步的话,我完全可以通过TracePro来进行杂散光分析,而不是Zemax。 所以简便起见,我暂时搁置加入镜筒导致的追迹错误,决定先用裸镜头组来比较A、B模型,明天缩比序列模型B,随后NSC非序列追迹。
2025-08-07
1. Zemax非序列追迹——探测器查看器
X_IAGT(n,v)
:在物体n上绝对强度大于v值的光线。如果光线不交于物体,则该标志为false。X_IALT(n,v)
:在物体n上绝对强度小于v值的光线。如果光线不交于物体,则该标志为false。 其中 v 的单位需与光线强度单位匹配。 例如:如下图,若光线强度单位是 “瓦特”,且探测器峰辐照度为 48.89 W/cm²(总功率 7.41 W,探测器面积 124mm×124mm≈153.76 cm²,则平均单光线强度≈7.41 W / 4400 条 ≈ 0.0017 W/条)。
此时若设置 X_IAGT(34, 0.0017)
,可筛选出单光线强度仅 > 0.0017 W的像素点,即这些像素点至少被两条光线击中。
一点思考:此时设定的X_IAGT(34, 0.001)
,此阈值下总撞击数刚好为我此次追迹设定的总光线数4400,似乎是刚好过滤掉鬼像等光线。后续尝试(如下图),设定字符串!G0
筛选出非鬼像光线,此时撞击数恰好是4400,证明了X_IAGT(34, 0.001)
确实过滤掉了鬼像。
2. Zemax探测器查看器概念解释
- 1、非相干照度 :随探测器上空间位置变化的单位面积上的非相干辐射通量。是光线辐照度的叠加,不考虑相位因素。与其对应的是,相干辐照度,是光线复振幅相加,考虑相位因素,得到的是相干辐射通量。也就说后者会考虑相干因素;
- 2、峰值辐照度:光束中任意点的单位面积的最大功率;
- 3、总功率:对整个光束辐照度的积分(也就是光束总能量)。这里边辐照度你就可以理解成光功率密度,只是差一个视见函数而已。至于总功率为什么会随之探测器大小变化,我觉得是因为当探测面小时,其实部分光线未被接收所以导致小探测器的功率也小,另外大的探测器面也会接收一些杂散光,只能要把光斑包住,两者应该差距不大;
- 4、非相干辐照度,即每个像素点对应辐照度值。
2025-08-12
1. 像素点功率数据分析遇到问题
- 1、不同强度的杂散光对望远镜成像的影响?(用来划分不同灰度区间的比较权重)
2025-08-14
1. 进度
- 1、梳理之前的结果:方案一:以探测器中心为圆心,逐渐增加圆半径,圆域内相同灰度区间像素个数统计、强度加权统计+差集区域分析,仅使用鬼像数据,结论:平均相似度较高。方案二:统计各强度区间像素点数量、加权值,说明功率相似性(
Code:sta_scrip.m
),同时通过SSIM说明结构相似性(Code: SSIM_UQI.m
),总体说明相似度。 - 2、引入SSIM和UQI指标来比较两系统的相似性和可替换性,具体可参考PSNR、SSIM等图像质量评估指标详解。
Code:"C:\Users\Lyra Alpha\Documents\MATLAB\tools\SSIM_UQI.m"
- 3、根据杂散光评价指标来对比:分别根据两个系统得到的逐像素功率数据进行杂散光评估、比较它们的相似性和可替代性。
Code:stray_light_evaluation.m 和 stray_light_evaluation2.m
2025-09-06
1.进度
总结一下这段时间的进度:
- 1、之前对灰度的理解有误,之前的想法是将得到的150×150功率密度矩阵作为初始数据进行后续的分析,划分不同的功率密度区间,每个区间作为一个灰度来进行统计分析。这样其实不正确,实际情况下,探测器并没有办法得到像面上每个像素点处具体的功率值,这个功能是光功率计的功能,光功率计可以放到系统前探测具体功率,但是不能封装在光学系统内部,在像面上放置的其实是探测器,而它只能探测灰度值,是纯图像信号。
- 2、那么后续的所有分析与统计都要基于实际中可以得到的数据(即灰度值),所有只需要将之前的150×150功率密度矩阵(单位是W/cm2)转换为150×150灰度矩阵即可。 转换基于公式:
Vana=R×Popt+Vdark
。其中 Vana 为输出电压,R 为探测器响应度,V_{dark} 为暗电流电压。随后设定相关参数,量化位数根据区间自动计算(如下设定条件下量化位数 N:16位(灰度范围0~65535)),将电压转换为灰度值。总体路径:功率密度→模拟电压→灰度值。 有一个问题:探测器响应度的计算值不一定能在现实中找到合适的探测器。 - 3、使用灰度数据重新进行分析,考虑两种方法:SSIM、UQI、MSE、相关系数,在设定半视场内相似性极高;圆域+差集分析,在设定视场内外相似性均很高。
- 4、在Soildworks中将原机械结构文件转换为零件后可以进行缩放,缩放后直接得到缩比机械模型。原系统和缩比系统的完整光机系统分别在0°视场进行非序列追迹,得到光功率密度矩阵,存于文件
compare_systems_01ob_8000l_raw_cone.xlsx
,通过上述方案进行分析,结果很好。但是有个问题:Zemax追迹时,由于“错误”而停止追迹的数值很大,需要进一步分析是否为正常现象。