当前位置:首页>python>Python & MATLAB 仿真实现高速无监督HoloEncoder全息算法

Python & MATLAB 仿真实现高速无监督HoloEncoder全息算法

  • 2026-10-11 08:17:23
Python & MATLAB 仿真实现高速无监督HoloEncoder全息算法
导读

      计算全息(CGH)是实现全息显示(VR)与光场调控的核心技术,但在实际应用中始终面临“速度与质量难以兼顾”的关键瓶颈:传统迭代算法如GS虽然能够获得较好的重建效果,但计算过程耗时、难以满足实时需求;而非迭代方法虽提升了速度,却往往牺牲了图像质量与分辨率。近年来,深度学习为CGH提供了新的解决思路,但大多数方法依赖大量成对标注数据(目标图像与对应全息图),不仅数据获取成本高,而且模型性能受限于训练数据质量。针对这些问题,HoloEncoder全息算法提出了一种全新的解决框架,将自编码器结构与光学衍射传播过程深度融合,在无需标注数据的情况下,实现相位型全息图的无监督学习生成。该方法将全息生成过程视为“编码-解码”问题:编码器利用U-Net结构从目标图像中学习相位分布,而解码器则直接嵌入Fresnel衍射物理模型,实现从相位到重建图像的光学传播过程,从而将物理约束引入网络训练中,显著提升结果的物理一致性与可解释性。同时该方法不仅能够在约0.15秒内生成4K分辨率全息图,而且在重建质量和speckle噪声抑制方面优于传统方法,同时具备良好的泛化能力。
    本期将在此基础上,仿真实现HoloEncoder全息算法,并介绍核心原理、网络结构及工程实现思路,为从事计算全息、超表面设计及AI光学交叉研究的读者提供一条高效且具有前瞻性的技术路径。

一、HoloEncoder全息算法原理
      HoloEncoder 的核心思想可以理解为:把“生成全息图”这件事,建模为一个带有物理约束的自编码过程。具体来说,如图1所示,首先将目标图像输入到编码器(采用 U-Net 结构),网络直接输出对应的相位分布 φ(x, y),也就是相位型全息图;随后,这个相位并不会再经过普通神经网络解码,而是进入一个由物理规律构成的“解码器”——即基于 Fresnel 衍射的光学传播模型,将相位映射为重建图像的强度分布。在训练过程中,通过将重建图像与目标图像之间的误差(如 NPCC + 感知损失)反向传播,借助自动微分机制,将梯度从物理传播模块一路传回编码器,从而不断优化网络参数。这样一来,模型不仅学会了“如何生成相位”,还在训练过程中自然满足光学传播规律,实现了数据驱动与物理模型的融合,最终能够在无需标注数据的情况下,高效生成高质量的相位全息图。
图 1 HoloEncoder全息算法原理
      换一个更直观的角度来看,HoloEncoder其实是在“模拟一个完整的光学成像闭环”:网络前半部分负责“设计光场”(生成相位全息图),后半部分则用真实的物理传播过程来“检验设计是否正确”。也就是说,模型并不是直接去拟合“输入图像→输出全息图”的黑箱映射,而是让生成的相位先经过一次“虚拟光学实验”(Fresnel衍射传播),得到重建结果,再与原始目标图像进行对比。如果重建效果不好,误差就会通过可微的物理模型反向传递,指导前端网络调整相位分布。这样不断迭代训练后,网络逐渐学会生成既符合光学传播规律、又能高质量重建目标图像的相位模式。相比传统方法,这种方式等价于把“求解最优全息图”的过程,转化为一次前向推理,大幅减少计算时间,同时由于引入了物理约束,也避免了纯数据驱动模型可能出现的不合理解。

二、HoloEncoder全息算法流程

🔹 Step 1:输入目标图像

     首先,将目标强度图像 Itarget(x,y)I_{target}(x, y)Itarget(x,y) 输入网     络。这一步不需要任何对应的全息图标签,是典型的无监督输入。

🔹 Step 2:编码器生成相位

     目标图像经过编码器(U-Net)后,被映射为一个二维相位分布:

     输出:ϕ(x,y)∈[−π,π]

🔹 Step 3:构建复振幅场

     将相位转换为复光场:U(x,y)=exp(iϕ(x,y))

🔹 Step 4:物理传播

     将复振幅输入Fresnel衍射模型,进行光场传播

🔹 Step 5:计算损失函数

     将重建图像与目标图像进行对比,计算误差:NPCC(结构一致性)         Perceptual Loss(视觉质量),Phase Regularization(相位平滑)

🔹 Step 6:反向传播

      通过自动微分: 梯度可以穿过“物理传播模块”反向传递,从而更新编        码器参数,使其输出更优相位


三、仿真结果

文献:High-speed computer-generated holography using an autoencoder-based deep neural network

最新文章

随机文章