计算全息实验的MatlabGui仿真
2019-04-27成纯富欧艺文方照东陈嘉轩陈泽浩杨张永
成纯富 欧艺文 方照东 陈嘉轩 陈泽浩 杨张永
【摘要】本文介绍了计算全息实验的基本原理,利用Matlab Gui对计算全息实验进行了仿真,分析了通光孔径宽度、随机噪声系数和阈值系数对计算全息再现像质量的影响。
【关键词】计算全息实验 Matlab Gui 迂回相位编码
【中图分类号】O438.1 【文献标识码】A 【文章编号】2095-3089(2019)10-0220-01
一、引言
计算全息是利用計算机控制绘图仪制作全息图及衍射光学元件的技术。由于计算全息只需要提供物波函数,而不需要被记录物体的真实存在,这给计算全息的应用提供了极大的便利性。随着计算全息编码技术和计算机技术的快速发展,计算全息技术已广泛应用于图像识别、光束整形、三维显示、干涉计量等领域。
为了加深对计算全息技术的理解,以便今后能够更加灵活的应用计算全息技术。通常,信息光学实验中会开设计算全息实验,即利用高分辨率的相位调制器实现计算全息图的实时再现,通过该实验,学生可以初步理解计算全息的基本原理,但仍然对实验原理、快速傅里叶变换和编码方法缺乏深入的理解。为此,许多研究小组对计算全息的Matlab仿真进行了系统深入的研究,但由于Matlab缺乏直观性,其效果仍然不佳。针对上述情况,本文将开展基于Matlab Gui的计算全息的仿真,不但实现了直观的效果,还提供了视频介绍,这对计算全息的学习无疑起到了更大的促进作用。
二、计算全息实验的基本原理
计算全息图通常由计算机控制绘图仪,先制作放大图形,然后用精密照相机制作缩小的透明片。由于绘图仪只能识别非负实函数,所以必须对原函数进行编码转换,把原函数(通常为复值函数)转换为非负实函数,以便绘图仪制作。经过几十年的发展,已经出现了多种编码方法,本文中采用罗曼型迂回相位编码,即在全息图每个抽样单元内放置一个矩形通光孔径,通过改变通光孔径的面积来编码复数波面的振幅,改变通光孔径中心与抽样单元中心的位置来编码相位。如果存在模式溢出问题,按照光栅衍射理论,解决的办法是将溢出的部分移至本单元的另一侧进行模式溢出校正[1]。
三、计算全息实验的Matlab Gui仿真
按照计算全息的基本原理,我们利用Matlab Gui对计算全息进行了模拟仿真,仿真界面如图1所示。由图1可以看出:仿真界面主要包括实验原理的介绍视频以及通光孔径宽度、随机噪声系数和阈值系数对再现像质量的影响。视频提供任课实验教师讲解的计算全息实验的基本原理和Matlab Gui编程的主要思路,该视频不但可以加深学生对实验原理的理解,还可以激发学生编程的兴趣。
仿真结果表明:通光孔径宽度越小,再现像越清晰,但再现象的亮度有所下降,由于再现像的亮度会影响再现像的清晰度,故通光孔径也不能太小,其大小设置需满足抽样定理,否则因为亮度太暗而不便观察。当通光孔径宽度固定时,若物光场的随机噪声系数增大,则再现像越清晰,但再现象的亮度有所下降。当通光孔径宽度和随机噪声系数不变时,增大阈值系数(物频谱模的最大值与再现的观察距离之比),再现像也越来越清晰,但再现像的亮度有所下降。
四、结论
本文采用Matlab Gui软件模拟了计算全息图。仿真界面不但友好、直观,而且提供了视频介绍的功能。仿真结果不但验证了计算全息实验的基本现象,而且可激发学生编程以及计算全息理论知识的学习兴趣。
参考文献:
[1]苏显渝,李继陶编著.信息光学[M].北京市:科学出版社, 1999