基于 Transformer 的深度学习混合架构用于相位展开

原文:Transformer based deep learning hybrid architecture for phase unwrapping

💡 摘要:提出了一种用于相位展开的深度学习混合架构。混合架构基于卷积神经网络 (CNN) 与视觉变换器的集成。将混合架构/网络在相位展开中的性能与基于 CNN 的标准 UNET 网络进行了比较。结构相似性指数 (SSIM) 和均方根误差 (RMSE) 已被用作性能指标来评估这些深度学习网络在相位展开中的性能。为了训练和测试网络,使用傅里叶平面中随机噪声的高斯滤波生成了具有高平均熵的数据集。在测试数据集上测试了混合架构,发现其性能指标优于 UNET 网络。它们的性能也在具有各种噪声水平的嘈杂环境中进行了测试,混合架构表现出比 UNET 网络更好的抗噪能力。使用定制的数字全息显微镜的实验数据在现实世界场景中成功验证了混合架构。随着新架构和硬件的出现,深度学习网络可以进一步提高解决逆问题的性能。

1. 简介

相位估计是许多领域中非常重要的要求。它通常通过各种技术来计算,例如干涉测量和光学计量中的表面轮廓测量、合成孔径雷达中的表面形貌测量、MRI 中的磁场测量等[ 1-3 ]。相位是定量相位成像技术(如数字全息显微镜)中关注的主要参数[ 4 ] 。通常,由于计算过程中涉及反三角函数,因此计算出的相位范围在[-π,π]内。需要进行相位解缠才能获得范围[0, 2π]或[-π,π]之外的连续相位*。各种可用技术例如质量引导相位解缠、最小范数方法、时间相位解缠、基于深度学习的相位解缠等[ 5,6 ]。空间展开技术(例如最小范数、质量引导方法等)在处理相位不连续和不相交区域方面存在局限性,而时间技术需要多帧或多频率条纹 [ 5 ]。深度学习在显微镜、全息摄影、超分辨率成像、光学图像加密、干涉测量、自然语言处理 (NLP)、面部识别、自动驾驶汽车、医学图像分析、药物发现、疾病诊断、治疗推荐等各个领域越来越受到青睐 [ 7-11 ] 由于图形处理单元 (GPU) 和张量处理单元 (TPU) 等必要硬件的出现,更新、更复杂的架构的出现提高了深度学习在各个领域的性能 [ 12 ]。深度学习中的卷积神经网络 (CNN) 推动了医学图像分割领域的发展。基于 CNN 的 UNET 已成为分割问题的骨干 [ 13 ]。许多变体(例如 UNET++、Attention UNET、Residual UNET、Inception UNET 等)都是为了提高性能而设计的 [ 14 ]。随着 Transformers 的引入,NLP 领域呈指数级增长。聊天生成预训练 Transformer(ChatGPT)和其他此类大型语言模型就是主要例子。受 Transformer 在 NLP 中的成功的启发,Alexey等人*将 Transformer 应用于图像识别问题[ 15 ]。从那时起,Vision Transformers 在图像处理(例如分割)中的应用得到了扩展。

最近,已经提出了各种结合 CNN 和 Transformers 的架构用于图像分割,从而提高了性能  [16]– 18 ]。相位展开问题可以被认为类似于图像处理问题。深度学习 (DL) 已被用于各种相位展开方法。在其中一种方法中,展开被视为语义分割问题,并使用 DL 预测像素的包裹数。上述方法提出了各种架构,如 SegNet、DeepLabv3+、新损失函数以及密集块等 [ 19-22 []](Radware Bot Manager Captcha)。这里,由于分类不准确导致包裹计数不准确,导致 2π 的整数倍误差*。*在另一种方法中,考虑一步相位展开,其中 DL 网络直接将输入包裹相位阵列映射到输出展开的相位阵列 [ 23-25 []](Radware Bot Manager Captcha) 。UNET 或其变体通常被用作一步相位展开的骨干。在上述两种相位展开方法中,通常使用基于 CNN 的架构。尽管 CNN 取得了巨大的成功,但卷积网络也存在局限性。由于卷积运算本质上是局部的,卷积网络在处理长距离或全局关系时处于劣势 [ 16 ]。另一方面,Transformers 已被证明能够成功地对长距离依赖关系或全局上下文进行建模 [ 16 ]。使用 Transformers 和 CNN 的各种混合架构都是可能的。但无缝结合 Transformers 和 CNN 以减轻它们的缺点并提高相位展开的性能本身就是一个挑战。这方面的报道很少。

<aside> 💡 Zhu等人26 ] 提出了一种基于交叉注意变换器 (CAT) 和一种称为高分辨率网络 (HRNet) 的 CNN 的混合模型 'Hformer',用于条纹投影中的相位展开。在该模型中,输入相位被馈送到 HRNet,然后以 CAT 为构建块的编码器解码器网络。该模型预测环绕计数或条纹顺序作为输出。Sun等人27 ] 提出了另一种架构,该架构使用通道交叉融合变换器和 UNET 来进行单次条纹投影轮廓术中的相位展开。Zhao等人28 ] 将 Swin Transformer 与 Zernike 多项式拟合相结合以实现相位展开。这里 Zernike 多项式系数由 Swin Transformer 网络预测。

</aside>

在这篇通讯中,我们提出了一种不同于上述方法的新型混合架构,用于数字全息显微镜中的相位展开。

这项工作的亮点如下。

  • Vision Transformer 包含多个具有多头注意力机制的 Transformer,并通过残差连接集成到 CNN 中。
  • 生成具有高平均熵的合成数据集,用于训练和测试网络。
  • 使用各种信噪比的高斯噪声测试网络的性能,并与 UNET 进行比较。
  • 使用定制的数字全息显微镜的实验数据在真实世界场景中测试了混合网络。

2.材料和方法

2.1. 数据集

数据集由输入相位及其对应的地面真实相位组成。每个输入相位都是一个包裹相位,由大小为 128 × 128 的二维数组表示,范围为 [-π , π ] 。对应的地面真实相位是展开相位,由大小为 128 × 128的二维数组表示。数据集中展开相位/地面真实相位的范围为 [-32, 32] 弧度。数据集包含 4000 个输入相位及其对应的地面真实相位。该数据集分为 80% 作为训练数据集(3200 对),20% 作为测试数据集(800 对)。

上述数据集按照如下步骤生成。首先,生成展开相位/真实相位φ(x, y) ,然后根据下式( 1 )生成相应的展开相位/输入相位ψ(x, y)

生成展开相位/地面真实相位的方法基于 Hu等人29 ] 提出的使用圆形对称滤波器和 FFT 的随机表面生成。在该方法中,生成一个高斯分布随机数的二维数组,并计算其 2d-FFT(二维快速傅里叶变换)。然后计算其与二维圆形对称滤波函数的乘积。计算所得数组的 2d-IFFT(逆二维快速傅里叶变换)以生成随机表面。通过改变滤波器参数和高斯随机数数组,可以生成一系列随机表面。在当前工作中,二维高斯函数被用作滤波函数。生成的随机表面用作展开相位。上述过程由以下方程给出:

其中R(x, y)是大小为 128 × 128的二维高斯随机噪声。Randn ( 128,1 2 8 )是一个二维随机数生成器,它从均值为 0、方差为 1 的高斯分布中生成二维随机数数组,并按M缩放以生成R(x, y)。H (x, y)是标准差为F的二维高斯滤波函数。

通过随机改变滤波器参数F和高斯噪声R(x, y),生成一组展开相位φ(x, y) 。这里fft 2 是 2d 快速傅里叶变换 (2d-FFT);ifft 2 是逆 2d 快速傅里叶变换 (2d-IFFT)。Real *()*函数返回复数的实值。

数据集的多样性对于深度学习网络的泛化能力至关重要。在对多样化数据集进行训练后,网络将能够更好地推广到未知数据样本。在这方面,香农熵是量化数据集信息丰富度/多样性的非常重要的参数[ 30-32 ]。熵值越高,数据集的多样性就越高。文献中引用的通过随机矩阵扩大、高斯函数叠加、泽尔尼克多项式叠加等各种方法生成的数据集的典型平均熵分别为 4.41、4.24、4.03[ 30 ]。

为了衡量数据多样性,我们计算了当前工作中使用的展开相数据集的熵分布,并绘制了直方图。图1显示了展开相数据集的熵分布直方图。该数据集的熵平均值为 ∼7.077,这很高,表明数据集是多样化的。

2.2. 深度学习混合架构

在所探索的混合架构中,Vision Transformer 和 CNN 被集成在一起,如图2 (a)所示。本质上,网络架构由编码路径和解码路径组成,路径中集成了 Vision Transformer 模块 (VIT)。还有连接编码和解码路径的跳跃连接。网络中的第一个块由 7 × 7 内核的卷积运算以及批量归一化 (BN) 和整流线性单元 (ReLU) 组成。

 

图 2.  (a) 集成 Vision Transformer 和 CNN 的混合架构示意图。(b) 编码器模块 (EN1、EN2、EN3) 示意图。(c) Vision Transformer 模块示意图。(d) VIT 的 Transformer 块中使用的 Transformer 的网络图。(e) 解码器模块 (DE1、DE2、DE3 和 DE4) 示意图。Conv-卷积操作、BN-批量归一化、ReLU-整流线性单元、MLP-多层感知器、VIT-Vision Transformer 模块、C-通道数。

第一个块的输入是大小为(128 × 128 和 1 通道)的输入相位。该块的输出(大小为 64 × 64 和 128 通道)被馈送到编码器模块 1(EN1),并且它也是到解码器模块 3(DE3)的跳过连接。EN1 的输出(大小为 32 × 32 和 256 通道)被馈送到编码器模块 2(EN2),并且它也是到解码器模块 2(DE2)的跳过连接。EN2 的输出(大小为 16 × 16 和 512 通道)被馈送到编码器模块 3(EN3),并且它也是到解码器模块 1(DE1)的跳过连接。EN3 的输出(大小为 8 × 8 和 1024 通道)被馈送到 Vision Transformer 模块。为 VIT 块引入了残差连接,从而将 VIT 的输出与快捷连接(EN3 的输出)相加。将得到的输出(大小为 8 × 8,通道为 1024)输入到由 3 × 3 核的卷积运算以及 BN 和 ReLU 组成的块中。该块的输出(大小为 8 × 8,通道为 512)输入到 DE1。DE1 的输出(大小为 16 × 16,通道为 256)输入到 DE2。DE2 的输出(大小为 32 × 32,通道为 128)输入到 DE3。DE3 的输出(大小为 64 × 64,通道为 64)输入到解码器模块 4(DE4)。从图2 (a)可以看出,解码器模块 DE1、DE2、DE3 接受两个输入;一个来自前一个块,另一个来自跳过连接,而 DE4 没有跳过连接。 DE4 的输出(大小为 128 × 128,16 个通道)被馈送到核大小为 1 × 1 的卷积运算。此运算的输出是展开的相位(大小为 128 × 128)。

编码器模块(EN1、EN2 和 EN3)的网络图如图2 (b)所示。此处,输入被馈送到两个路径。一个路径包含下采样块。第二条路径包含 1 × 1 卷积(BN + ReLU),然后是 3 × 3 卷积(BN + ReLU)和 1 × 1 卷积(BN)。两个路径的输出相加并通过 ReLU。编码器模块(EN1、EN2 和 EN3)的目的是从其输入特征图中提取高级特征,从而产生空间大小减小、通道数增加的输出特征图。解码器模块(DE1、DE2、DE3 和 DE4)的网络图如图2 (e) 所示。解码器模块接受两个输入。其中一个输入来自前一个块,另一个输入来自跳过连接。来自前一个块的输入经过上采样,然后与来自跳过连接的输入连接起来。将结果输出通过 3 × 3 卷积(BN + ReLU)后再通过 3 × 3 卷积(BN + ReLU)。解码器模块(DE1、DE2 和 DE3)的目的是对输入特征图进行上采样,然后与跳过连接的低级特征图连接并重建输出特征图,这对于生成最终输出阶段至关重要。解码器模块(DE4)对输入特征图进行上采样,并且在不使用跳过连接的情况下重建输出特征图以匹配最终输出阶段的空间大小。跳过连接的目的是将低级特征图从编码器模块传递到解码器模块。在上面使用的卷积运算中,对于内核大小 7 × 7、3 × 3和 1 × 1,填充值分别为 3、1 和 0。VIT 模块的示意图如图2 (c)所示。在此模块中,输入被重塑,然后线性投影到 Transformer 块上。 Transformer 块由一系列 8 个 Transformer 组成。Transformer 块的输出被重塑以提供输出。Transformer 块中使用的 Transformer 包含多头注意力和 Dropout,带有残差连接,后跟层范数,如图2 (d) 所示。结果输出通过残差连接馈送到多层感知器 (MLP)。结果输出再次通过层范数。

一旦定义了深度学习架构,就可以用数学函数Z δ 表示,该函数取决于网络参数——权重和偏差δ ∈ Δ [ 33 ]。训练过程的目的是求解以下方程 ( 5 ) 并得出一组优化的权重和偏差δ * ∈ Δ,从而得到函数Z δ ,该函数应能准确解开训练数据集和未知数据集。这里δ*表示网络参数,Δ是参数空间。

2.3. 网络实现

本工作的深度学习架构在配备 12 GB RAM 和 15 GB RAM 的计算平台上使用 Python 3.10.12 在 PyTorch 2.1.0 框架中实现。网络在由 3200 对输入阶段及其对应的地面真实阶段组成的训练数据集上进行训练。测试数据集不用于训练网络,因为它将被用作评估网络性能的未知数据集。如图3所示,在训练过程中,输入阶段被输入到深度学习网络中,并使用损失函数将输出阶段与地面真实阶段进行比较。在训练期间的每个时期,网络参数(权重和偏差)都会基于反向传播进行更新,以最小化损失函数。均方误差 (MSE) 损失函数、自适应矩估计 (ADAM) 优化器(学习率为 0.001、批次大小为 16、50 个时期)被用作训练参数。网络在 GPU(由 CUDA 12.2 支持)上进行训练和测试,以实现更快的训练。

3.结果与讨论

为了评估混合架构在相位展开方面的性能,使用均方根误差 (RMSE) 和结构相似性指数 (SSIM) 作为性能指标。SSIM 和 RMSE 均在网络输出相位和地面真实相位之间计算 [ 23 ]。误差图(地面真实值与网络输出之间的差异)也有助于评估网络的性能。SSIM 值范围从 0 到 1。SSIM 值越高,RMSE 值越低,表示深度学习网络的准确度越高,因此网络输出越接近地面真实值。将混合架构的性能与标准 UNET 进行了比较。补充信息的图 S1 中提供了本工作中实现的 UNET 的网络架构。为了进行公平比较,混合架构和 UNET 都使用相同的训练参数和训练数据集进行训练。使用来自测试数据集的四个随机包裹相位/输入相位及其对应的地面真实相位来测试性能。图4 (a)–(d) 是四个随机输入阶段,图4 (e)–(h) 是相应的基本事实阶段。图4 (i)–(l) 分别是与输入阶段 4(a)-4(d) 相对应的混合架构的误差图。图4 (m)–(p) 分别是与输入阶段 4(a)-4(d) 相对应的 UNET 的误差图。

图 4.  (a)–(d) 来自测试数据集的随机包裹相位/输入相位。(e)–(h) 分别对应的地面真实相位/展开相位。(i)–(l) 分别对应于输入相位 4(a)-4(d) 的混合架构误差图。(m)–(p) 分别对应于输入相位 4(a)-4(d) 的 UNET 误差图。顶部的彩条表示弧度相位。

从图4的误差图可以看出,除了图4 (j)的小边缘区域外,混合架构的误差较低且几乎均匀。而对于UNET,误差不均匀且在丘陵和山谷区域相对较高。这表明混合架构预测能够比UNET更准确地跟踪实际相位变化的丘陵和山谷,SSIM和RMSE值也证实了这一点。表1显示了图4对应的混合架构和UNET的SSIM指标和RMSE值。对于图4的四个测试阶段,与UNET相比,混合架构的RMSE较低,SSIM较高。为了评估整体性能,在测试数据集的全部800个未知样本上测试了混合架构和UNET,并计算了两个网络的SSIM和RMSE的平均值。混合架构的 SSIM 和 RMSE 平均值分别为 0.9554 和 0.5946 弧度,而 UNET 的 SSIM 平均值和 RMSE 平均值分别为 0.9313 和 0.7399 弧度。显然,与 UNET 相比,混合架构具有更优的平均性能指标。这种更好的性能可能归因于使用残差连接将具有多头注意力机制的视觉变换器块集成到 CNN 的编码器解码器网络中。

表 1.图4 对应的混合架构与 UNET 的 SSIM 指标和 RMSE 比较。

混合架构大学网络
输入阶段同步同步信号RMSE(弧度)同步同步信号RMSE(弧度)
4(a)。0.99780.13910.98110.4645
4(b)。0.99820.25730.98550.3728
4(c)。0.99750.13960.98010.3758
4(d)。0.99750.13400.97430.4513

混合架构的性能也在噪声环境中进行了评估。在需要相位展开的各个领域,例如条纹投影 3D 成像、全息断层扫描、合成孔径雷达、磁共振成像等,高斯噪声用于评估展开方法的性能和鲁棒性 [ 34 – 37 ]。沿着这个方向,选择高斯噪声来评估混合架构。首先从测试数据集中随机选择一个输入相位/包裹相位和相应的地面真实相位。将各种级别的噪声添加到选定的输入相位,从而生成噪声输入相位。将噪声输入相位输入到网络,并将它们的输出相位与地面真实相位进行比较。

通过下述过程将噪声添加到输入相位。

方程 ( 6 ) 中的*Randn(128,128)生成一个符合均值为 0、方差为 1 的高斯分布的二维随机数数组。该高斯噪声n(x, y)*被放大到所需的 SNR,并根据方程 ( 7 ) 中的公式将其添加到输入相位ψ(x, y)中,以生成噪声输入相位ω(x, y)。|| || 2为 L2 范数。SNR 是所需的信噪比,单位为 dB。

如图5 (a)–(d)所示,生成了具有四个噪声水平(无噪声、5dB、4dB、3dB)的噪声输入相位。图5 (e)–(h) 显示了混合架构的误差图,分别对应于图5 (a)–(d)的噪声输入相位。对于 UNET,图5 (i)–(l)显示了误差图,分别对应于图5 (a)–(d) 的噪声输入相位。从图5 (e)–(h ) 的误差图中可以看出,即使噪声水平增加到 3 dB,混合架构的误差分布仍然几乎均匀且较低。而对于 UNET,对于“无噪声”样本,误差分布较低,但随着噪声水平的增加,它变得不均匀且较大,如图5 (i)–(l) 所示。表2中给出的 RMSE 和 SSIM 值也证实了这些观察结果。表2显示了图5中混合架构和 UNET 在噪声环境中的 SSIM 指数和 RMSE 值。从表2可以看出,随着噪声水平的增加,混合架构的 SSIM 指数从 0.9985 到 0.9795 变化很小。而对于 UNET,随着噪声水平从无噪声增加到 3dB,SSIM 指数从 0.9845 降至 0.6766。根据以上观察,可以得出结论,混合架构在噪声环境下也能很好地工作。

图 5.  (a)–(d) 具有不同噪声水平的测试数据集的包裹相位/输入相位。(e)–(h) 分别对应于噪声输入相位 5(a)-5(d) 的混合架构误差图。(il) 分别对应于噪声输入相位 5(a)-5(d) 的 UNET 误差图。彩条表示弧度相位。

为了确保混合架构在现实场景中的适用性,还对网络进行了实际实验相位数据测试。图6 (g) 中所示的定制数字全息显微镜 (DHM) 用于对人类上皮颊细胞进行成像,以生成实验包裹相。该 DHM 是使用 Goud等人4 ] 描述的病理显微镜定制的,它使用参考共轭全息图方法 [ 38 ] 从干涉图案计算相位图。

图 6.  (a) 使用 DHM 拍摄的上皮颊细胞的白光图像。(b)使用 DHM 捕获的与图6 (a) 对应的颊细胞的干涉图案。(c) 使用图6 (b) 的干涉图案获得的颊细胞的相位图。(d) 对应于图 6 (c) 颊细胞输入相位的混合架构的输出相位 (e) 使用传统相位展开算法对图6 (c) 的输入相位获得的颊细胞的地面真实相位图。(f) 颊细胞的混合架构输出和地面真实相位之间的误差图。(g) 本实验中使用的定制 DHM 的图像。SA-光纤耦合器的样品臂,RA-光纤耦合器的参考臂,LD-激光二极管,FC-2 × 2 光纤耦合器,CMOS-CMOS 传感器。底部的彩条表示弧度相位。

在玻璃载玻片上制备了来自健康个体口腔的颊上皮细胞涂片。用甲醇固定细胞,然后用 DHM 对其进行成像。图6(a)是人类颊上皮细胞的白光图像,图6 (b)是用 DHM 捕获的相应干涉图案。根据干涉图案计算出颊细胞的相位图,然后将其缩小到大小(128,128),如图6 (c)所示。从图6(c)中可以看出,实验获得的颊细胞相位图处于包裹状态。该包裹相位作为混合架构的输入,输出解缠相位如图6 (d)所示。图6 (e)所示的真实解缠相位图是 Herráez等人 [39 ] 使用传统相位解缠算法对图6 (c)的包裹相位获得的。混合架构输出与真实值之间的误差图如图6 (f) 所示,RMSE 值为 0.1629 弧度,SSIM 值为 0.9956,误差较低。因此,混合架构的输出与传统算法非常吻合,验证了其在实验数据上的性能。

4. 结论

基于 Transformer 的混合架构已被提出用于数字全息显微镜中的相位展开。在此架构中,包含多个具有多头注意力机制的 Transformer 块的视觉变压器与 CNN 中的残差连接集成在一起。

以 SSIM 和 RMSE 作为性能指标,评估了混合架构的相位展开性能。将混合架构与标准 UNET 架构进行了比较。从测试数据集中随机选择了四个输入相位来比较它们的性能。为了评估整体性能,在测试数据集的整个 800 个未知样本上测试了网络,并计算了两个网络的性能指标的平均值。发现与 UNET 相比,混合架构具有更优的平均性能指标。还评估了这些网络在噪声环境下的性能,噪声水平各不相同 - 无噪声、5dB、4dB 和 3dB。发现对于混合架构,SSIM 和 RMSE 值随着噪声水平的增加几乎保持不变,而对于 UNET,性能急剧下降,证明了混合架构的抗噪能力。还使用定制数字全息显微镜的实验数据在现实世界场景中测试并成功验证了混合架构。随着新架构和硬件的出现,深度学习可以进一步提高解决逆问题的性能。

  • 13
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知新_ROL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值