除了GS算法及其变种,一种非凸优化的全息图算法—NOVO-CGH(Non-Convex Optimization for Volumetric computer-generated holography)也被提出,可用于三维光场的全息图计算[32]。它在计算聚焦的三维光场时将计算分为了两个过程:
1. 通过设置了一个成本函数来评估经相位调制后聚焦体积内光场强度的分布和目标光场强度的差距,将全息图的计算问题转化为了数学里的优化问题;
2. 使用L-BFGS算法(Limited-memory Broyden–Fletcher–Goldfarb–Shanno algorithm)来对成本函数进行优化[37],这是一种总是收敛到一个固定点的准牛顿梯度下降方法[38]。对成本函数进行优化后,最后得到的全息图可以使得聚焦光场的强度分布与目标光场的强度分布相接近。经过比较,NOVO-CGH得到的结果比GS算法得到的结果更好,准确度提高近20%,效率提高近5%。此外,NOVO-CGH算法的一大优势是可以根据实际情况的不同设计不同的成本函数,以满足不同应用需求,例如抑制某些特定位置的光场强度。
3.3 基于深度学习的全息图生成算法随着计算机技术的发展,深度学习技术已经在各个领域得到了广泛的应用,在光学领域也不例外[41,40,39]。传统算法计算全息图时,根据算法的复杂程度及计算机配置,通常需要运算几秒到几百秒,因此在使用全息图时需要提前计算生成,再在激光加工时对全息图进行切换,无法在加工过程中实时地对目标光场的全息图进行生成,降低了使用的灵活性。引入深度学习技术可以很有效地解决全息图生成速度慢的问题。近年来基于深度学习技术生成用于空间传播的全息图算法得到了实现,入射光经过空间光调制器的相位调制后,传播一定距离得到目标光场的强度分布[42]。其基本原理如图3 所示:
图3 基于深度学习计算全息图的原理图[42]
Fig. 3 Diagram illustration of hologram generation algorithm based on deep learning[42]
基于深度学习的全息图生成算法可以分为三步:
1. 制作训练集,生成10万张随机的相位图,利用菲涅尔衍射积分计算出加载了相位图的入射光传播一定距离z之后的光强分布。
2. 构造了一个用于深度学习的神经网络,将10万张随机相位图作为神经网络的输出,传播距离z之后的10万张光强分布图作为网络的输入,对神经网络进行训练。
3. 把训练好的神经网络保存下来,将目标光场强度分布输入到神经网络中,网络的输出即是该算法所计算出的全息图[42]。在全息图生成中引入深度学习技术的最大优势是,训练好的神经模型具有泛化能力,输入目标光场分布后即可直接计算得到全息图,运算速度比传统迭代算法快一到两个数量级。目前这种方法得到的全息图只适用于二维的空间传播光场生成,还不能运用于聚焦光场的全息图计算。因为透镜聚焦是傅里叶变换的过程与空间传播的菲涅尔衍射过程有区别,上述神经网络相当于学习了由特定相位经过空间传播得到特定光场强度分布的逆过程,与之相比透镜聚焦的逆过程更难学习,到目前为止还没有用深度学习技术生成聚焦光场全息图的算法被提出。本课题组正在进行利用深度学习计算聚焦光场全息图的开发探索。计算全息图的算法有多种,除了上述算法外还有MRAF算法[43]、RM算法[44]等,由于篇幅有限,在此不再详述,每个算法有着自己的优势和不足,不同激光加工应用场景需要选择最合适的算法或者对已有算法进行改进。