基于卷积法的数字全息计算机模拟系统
项目介绍
本项目是一个用于数字全息仿真的MATLAB软件系统,基于卷积衍射算法核心,通过计算机模拟光学干涉与衍射过程。系统能够模拟物体光波与参考光波的干涉生成数字全息图,并利用快速傅里叶变换(FFT)和复数波前重构技术重建物体的三维波前信息。项目为全息成像理论研究、算法优化及教学演示提供了可定制、可参数化的计算平台。
功能特性
- 全息图模拟生成:支持输入自定义物体(二维/三维振幅分布),结合可调参数的参考光(平面波/球面波),精确模拟干涉过程生成全息图。
- 卷积衍射计算:采用基于角谱理论的卷积法进行衍射传播计算,精度高,适用于大角度衍射情况。
- 波前重建与可视化:从全息图重建物体的复振幅分布,分别输出振幅和相位图像,支持三维体数据在不同深度层面的聚焦显示与动画生成。
- 参数灵活可调:用户可设置光波波长、传播距离、CCD采样参数等关键光学参数,以优化仿真效果。
- 误差定量分析:计算重建结果与原始物体的均方误差(MSE),为算法性能评估提供量化指标。
使用方法
- 准备输入数据:准备一个代表物体透射或反射率的灰度图像矩阵作为物体振幅分布。
- 设置仿真参数:在代码中修改或通过函数接口设置以下参数:
- 光学参数:波长(μm)、物光与全息面之间的传播距离(mm)。
- 参考光参数:类型(平面波/球面波)、振幅、相位(如倾斜角)。
- 采样参数:CCD像素尺寸(μm)、像素阵列规模(如1024×1024)。
- 运行主程序:执行主程序,系统将依次完成全息图生成、衍射传播计算和波前重建。
- 查看与分析结果:程序将输出:
- 模拟全息图(强度图像)。
- 重建的振幅图像和相位图像。
- 重建误差的数值结果。
- (可选)三维重建结果的多平面动画。
系统要求
- 操作系统:Windows / Linux / macOS
- 软件环境:MATLAB R2016a 或更高版本
- 必备工具箱:Image Processing Toolbox
文件说明
主程序文件集成了系统的核心工作流程,其主要功能包括:读取用户定义的物体图像和各项光学参数;根据设置生成参考光波,并使其与携带物体信息的物光波干涉,形成全息图;运用卷积衍射算法模拟光波从物体平面到全息平面的传播;执行重建算法,从全息图中恢复出物体的振幅和相位信息;最终对重建结果进行量化评估并生成相应的可视化图形输出。