1. 引言
考虑复合优化问题:
(1)
其中
为可微函数,
可能为不可微函数。这个问题可能出现在图像处理、机器学习、压缩感知等许多应用领域中,通常
表示误差项,
表示正则项。目前,求解该类问题的经典算法有邻近梯度法(PGD)、快速迭代阈值算法(FISTA)、交替方向乘子法(ADMM)等。其中,PGD结合了梯度下降和邻近算子的思想,对光滑部分
使用梯度下降更新,对非光滑部分
使用邻近算子更新,具体过程如算
法1。当
为
时,问题(1)可以转化为传统的压缩感知问题。压缩感知是一种寻找欠定线性
系统的稀疏解的技术,它利用信号的稀疏性,在远低于奈奎斯特采样率的条件下对信号进行采样,并通过优化算法重建出原始信号。其中,采样过程可以表示为:
, (2)
其中
为原始图像,
为测量矩阵,n为测量数据中的噪声,
为采样后的测量值,
(
)为采样率。利用优化算法重建出原始信号实际上是寻找一个解使目标函数(1)最小的过
程。因此,在传统的压缩感知问题中,重建原始信号过程表示为:
, (3)
其中
为数据保真项,用来确保原始图像和重建图像的一致性,
为正则项系数。利用邻近
梯度法求解(3)的迭代公式为:
, (4)
, (5)
其中,
表示梯度下降过程,
为
在
处的梯度,
表示邻近映射过程,
为邻近算子。当
是预定义变换基或稀疏算子时,有许多经典的基于模型的重建方法,包括贪婪算法和迭代阈值算法等。这些算法都是在深入研究图像的自身特征的前提下来进行重建,在大多数情况下都具有较强的可解释性和收敛性。然而,深入研究图像的自身特征通常会带来一些不可避免的较高的计算复杂度且难以确定问题的最优解和最优参数。
随着深度学习的发展,涌现出了一些基于深度网络的压缩感知算法,如ReconNet [1]、DPA-Net [2]等。这些方法通常由一些常见的网络结构堆叠组合而成,利用网络直接学习从测量值到原始图像的逆映射,这大幅度降低了计算复杂度。它的损失函数通常可以被定义为:
, (6)
其中,
代表深度网络,
为网络输出的重建图像。这些方法依赖于卷积核来进行特征的学习,通常是进行黑箱训练。这使得网络缺乏可解释性,难以进一步改进网络结构和提升重建精度。2010年,Gregor等人[3]首次将ISTA算法展开到神经网络中,利用端到端的训练来学习算法中的参数。他们将算法中的每一次迭代更新都映射到网络层中,并将这些层连接起来形成了一个称作LISTA的深度网络。其收敛速度是FISTA的20倍。近几年,有不少学者将传统的优化算法展开到深度网络中,接连提出了ADMM-Net [4]、ISTANet [5]、ISAT-Net+ [5]等深度展开网络。但这些网络中未充分挖掘和利用图像的通道及空间信息的深层学习潜力,在重建精度和成本控制等方面都有待进一步深入探索和改进。因此,本文提出了一种基于邻近梯度算法展开的双域学习网络DDLN,将邻近梯度算法的两步更新迭代分别展开到深度网络中,并加入了对图像通道和空间信息的双域学习过程。大量实验表明,我们的DDLN网络在定量指标和视觉质量方面都达到较为先进的结果。
算法1:邻近梯度算法 |
1) 输入: 、 ,初始点 ,初始化k = 0 2) while达到收敛性准则do: 3) , 4)  5) end while |
2. 基于邻近梯度算法展开的网络模型PGD-DDLN
PGD-DDLN网络由四种模块组成,分别为采样模块、初始化模块、非线性重建模块和路径控制选择模块,具体模型如图1所示。该模型将邻近梯度算法的迭代过程展开到网络中,不仅保留了算法原有的可解释性,还充分发挥了神经网络直接学习并优化模型参数的能力。为了避免将图像向量化从而产生块伪影,我们选择在整个图像上进行采样和重建。
2.1. 采样模块及初始化模块
在采样模块的设计中,我们利用卷积层模拟线性采样过程。通过将测量矩阵A重塑为M个卷积核
,接着用无偏置层卷积模拟线性采样过程。因此(2)改变为:
, (7)
其中,
表示卷积运算,y为测量值。
Figure 1. The overall network structure of PGD-DDLN
图1. PGD-DDLN整体网络结构
在初始化过程中,我们同样将测量矩阵的转置
重塑为N个卷积核,表示为
。我们先将测量值依次输入到无偏置卷积层和像素重组层。像素重组层的功能是将低分辨率的特征图通过像素重组转换为高分辨率的特征图,这对于后续的生成高质量的高分辨率图像至关重要。我们将其表示为PixelShuffle,具体操作是将
扩展成通道数是1特征图
。因此初始化过程表示为:
, (8)
为了更好的捕捉到PGD算法迭代过程中的线性和非线性关系,我们在非线性重建模块中既使用了单通道图像又使用了多通道图像(通道数为C)。因此,我们将
输入到卷积层
中进行特征提取得到通道数为C-1的多通道特征图
,可以表示为:
(9)
接着将
和
在通道维度上进行连接,得到通道数为C的
(如图3)。最终,初始化过程可以表示为:
(10)
其中,concat表示通道连接操作。
2.2. 非线性重建模块
每一个非线性重建模块都包含一个梯度下降模块和一个邻近展开模块,其中梯度下降模块是展开(4)式的过程,邻近展开模块是展开(5)式的过程。
在梯度下降模块中,我们使用单通道图像(如图2)。我们选取
中第一个通道的特征图
作为输入,设剩下的31个通道为
。接着把固定步长ρ设置为可学习参数 ,这使得模型可以根据数据的特征和模式自适应地调整它的取值。因此(4)变为:
, (11)
其中,
表示卷积运算,
为可学习参数。接着,我们在将
和
进行通道连接得到多通道的
,作为邻近展开模块输入。
可表示为:
. (12)
其中,concat表示通道连接操作。
邻近展开模块是对图像各个通道的特征不断地提取和学习的过程,用于生成最终的重建结果
(如图3)。首先,我们依次学习图像的通道和空间特征特征。我们将
作为输入,对其每个通道的特征图分别平均池化Average1和最大池化Max1,并将其依次输入到全连接层Fc1、Relu激活函数层、全连接层Fc2。接着,将两种池化的特征加权和作为输出,使用Sigmoid激活层计算通道权重,并将通道权重应用到特征图
上得到
.在得到
之后,我们继续对空间特征进行学习,即空间维度不变,压缩通道维度。我们将
作为输入分别平均池化Average2和最大池化Max2,然后经过Concat操作对两个特征图进行拼接。接着利用卷积层Conv和Sigmoid激活层生成空间权重,并将空间权重应用到特征图
上得到
。因此,对图像的通道和空间特征学习过程可以表示为:
, (13)
. (14)
Figure 2. Gradient descent module
图2. 梯度下降模块
Figure 3. Proximal unfolding module
图3. 邻近展开模块
接着,我们利用多个卷积层和激活函数深度学习图像特征,并且为了避免信息丢失,利用残差连接来保留之前层的特征。深度学习过程分为三部分,分别表示为函数
、
、
。其中,F中包含三个卷积层、一个激活层和一个跳跃连接,G中包含一个卷积层、一个激活层和一个跳跃连接,M中包含一个卷积层和一个跳跃连接。它们可以表示为:
, (15)
, (16)
. (17)
其中,
、
、
分别为
、
、
的输出。
2.3. 路径控制选择模块
受到DPC-DUN [6]的启发,为了有效控制成本我们只保留贡献力较大梯度下降模块和邻近展开模块。因此,我们在网络中添加了路径控制选择模块。
该模块由两部分组成,分别是路径选择模块和成本控制模块。其中,路径选择模块类似于SE网络结构,它通过预测one-hot向量来动态选择最优路径,对于不同内容的图像,它能够根据输入特征自适应地确定模块的执行数量和位置。在训练过程中,为解决从连续特征输出到离散路径选择的不可微问题,采用 Gumbel Softmax 技巧使离散决策可微,从而能够进行反向传播训练。当其预测值为0时,表示跳过该模块,预测值为1时则执行模块,通过这种方式实现对网络路径的动态选择,以适应不同图像的处理需求,减少不必要的计算。成本控制模块主要作用是引入一个控制参数
来控制路径选择模块的行为,从而实现对计算和内存的控制。通过调整
的值,成本控制模块可以改变路径选择模块的决策,进而影响网络的路径选择和整体性能。例如,当
取较大值时,成本控制模块会调整特征,使得路径选择模块更倾向于跳过一些贡献力较小的模块,以降低计算成本;反之,其选择执行更多模块,以提高重建精度。
因此,路径控制选择模块具体架构如图4所示。我们将引入的控制参数
和
作为成本控制模块的输入来动态调整特征图
。为了将
传递到网络中,我们将其编码为一个one-hot向量
。我们将
分别输入到一个卷积层Conv7及Softplus激活函数层(确保非负)和另一个独立的卷积层Conv8用于生成与
相同维度的缩放因子s和偏置b。最后,将
输入到卷积层Conv6进行特征提取,并利用前面得到的缩放因子和偏置对其进行仿射变换到特征图
。该过程允许网络根据
的值来动态地调整特征图的变换,增强了模型的灵活性和表现力,可以表示为:
(18)
接着,将
作为路径选择模块的输入来生成两个选择向量
和
,来表示执行模块或跳跃模块,进而实现动态地选择网络中的信息流路径。我们通过端到端的学习每个通道的重要程度来得到每个通道相应的权重,在进一步提取有用特征同时抑制对当前任务用处不大的特征。我们将Ok进行全局平均池化对通道特征进行提取得到AveragePool(Ok)。为了获得通道的依赖性我们采用两层全连接层构成的门机制,第一个全连接层负责压缩通道降低计算量,再通过Relu激活函数;第二个全连接层和第三个全连接层为并联结构负责恢复原来的通道数量,分别得到两个特征映射。接着通过Gumbel Softmax激活函数得到两个预测向量,可表示为:
(19)
(20)
其中
,
。因此,(11)和(17)改变为:
, (21)
. (22)
Figure 4. Path-controllable selector module
图4. 路径控制选择模块
2.4. 损失函数
在PGD-DDLN的损失函数设计的过程中,我们不仅考虑了重建过程的损失,也考虑了路径控制选择的损失,因此总的损失函数表示为:
其中,
为控制参数,
为重建损失,
表示训练样本的数量,N表示每个样本的大小,
是图像经过K个阶段训练之后的重建结果,
为路径控制选择损失,即
和
的均值。
3. 实验
本文使用鲁棒性较强的Train400 [7]作为我们的训练集,并采用数据增强技术来增加数据的多样性。另外,使用两个基准数据集Set11 [8]和CBSD68 [9]作为测试集。我们提取训练集中每张图像的亮度分量,并将其裁剪成大小为33 × 33的图像块。对于不同的采样比率
,通过生成一个对应的随机高斯矩阵来构造的测量矩阵
,然后将其行正交化,即
,其中I为单位矩阵。我们使用了Adam优化器对网络进行400轮的训练和重建。另外,为了进一步减少块伪影,我们在400轮之后进一步选择使用99 × 99的图像块作为网络的输入进行10轮的训练。我们使用动量为0.9,权重衰减为0.999,默认批大小为64,默认阶段数K为25,默认特征映射数C为32,可学习参数
初始化为0.5。
控制参数
在平衡重建精度和资源开销方面起着关键作用。较大的
值会使模型计算成本在优化问题中的权重增加,导致重建精度变小,但计算成本和模块数量也会降低。当
时,重建精度变化不明显,但计算成本显著降低。因此,在训练阶段,我们从{0.00001, 0.00005, 0.0001, 0.0005, 0.001, 0.002}的范围内随机选择作为路径控制选择模块的输入
。
3.1. 评价指标
在图像处理领域,峰值信噪比(PSNR)和结构相似度(SSIM)是两种常用的图像质量评价指标。PSNR是基于均方误差(MSE)来衡量图像重建质量的指标,通过计算重建图像与参考图像之间的像素差异,来评估图像的质量,可以表示为:
其中,MAX为原始图像中最大的像素值,MSE是原始图像与重建图像之间的均方误差,可以表示为:
,
其中,h和w分别为图像的高度和宽度,
和
分别是原始图像和重建图像在坐标
处的像素值。它的单位是分贝(dB),数值越大表示图像质量越高,重建图像越接近原始图像。SSIM是综合亮度、对比度和结构三个方面来评估图像的相似性,不仅考虑像素值的差异,还考虑图像的结构信息。对于给定的两幅图像I和C,SSIM可以表示为:
,
其中,
和
分别为两幅图像的像素均值,表示亮度信息;
和
分别为两幅图像的像素方差,表示对比度;
为两幅图像的像素协方差方差,表示结构信息;
和
为两个常数。SSIM的取值范围
,越接近1表示相似度越高。
3.2. 实验结果
本文将提出的PGD-DDLN与最近一些具有代表性的压缩感知重建方法进行了比较,其中包括:ISTA-Net [5]、ISTA-Net+ [5]、MADUN [10]、DPC-DUN [6]方法。我们首先在10%、25%、30%、40%、50%这5种不同采样率下,分别利用Set11和CBSD68数据集进行测试,对不同方法下的平均PSNR、SSIM指标进行了汇总,具体如表1和表2所示。通过分析可得,PGD-DDLN在所有情况下能够超越ISTA-Net、ISTA-Net+。在大部分情况下,能够超越DPC-DUN。与MADUN相比,PGD-DDLN所得到的PSNR和SSIM值是略低的。但是,MADUN网络参数量是我们网络的2倍,并且重建256 × 256大小的图像无法实现实时性。我们的网络能够在与MADUN重建结果相近的情况下,展现出多方面的显著优势。在计算效率方面,我们的网络能够实现实时处理,这对于实际应用场景(如实时图像处理系统、视频监控中的实时压缩感知等)具有至关重要的意义。相比之下,MADUN在处理256 × 256大小的图像时无法满足实时性要求,这在很多对实时性敏感的应用中会成为严重的瓶颈。因此,PGD-DDLN可以在保持高性能的同时节省成本且具有较强的实时性。此外,PGD-DDLN具有更好的可扩展性和可优化性。较低的参数量和灵活的结构为未来进一步改进和优化提供了更大的空间。它可以更容易地探索新的算法改进、与其他技术的融合以及针对特定应用的定制化优化,从而进一步提升性能或降低成本。综上所述,我们的网络在实际应用中具有更广泛的适用性和更高的性价比。
Table 1. Average PSNR and SSIM under different
on the Set11 dataset
表1. 在Set11数据集上不同
下的平均PSNR和SSIM
|
10% |
25% |
30% |
40% |
50% |
PSNR/SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
ISTA-Net |
26.35 |
0.7975 |
29.16 |
0.8663 |
33.12 |
0.9319 |
35.39 |
0.9537 |
37.53 |
0.9678 |
ISTA-Net+ |
26.51 |
0.8048 |
32.34 |
0.9227 |
33.69 |
0.9383 |
35.94 |
0.9578 |
37.99 |
0.9704 |
MADUN |
29.26 |
0.8761 |
34.72 |
0.9479 |
36.00 |
0.9577 |
38.00 |
0.9689 |
39.82 |
0.9769 |
DPC-DUN |
29.12 |
0.8740 |
34.66 |
0.9477 |
35.81 |
0.9569 |
37.91 |
0.9690 |
39.73 |
0.9773 |
PGD-DDLN |
29.13 |
0.8739 |
34.57 |
0.9471 |
35.81 |
0.9565 |
38.03 |
0.9698 |
39.83 |
0.9777 |
Table 2. Average PSNR and SSIM under different
on the CBSD68 dataset
表2. 在CBSD68数据集上不同
下的平均PSNR和SSIM
|
10% |
25% |
30% |
40% |
50% |
PSNR/SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
PSNR |
SSIM |
ISTA-Net |
25.29 |
0.6974 |
27.74 |
0.8086 |
30.09 |
0.8727 |
31.96 |
0.9125 |
33.84 |
0.9399 |
ISTA-Net+ |
25.33 |
0.7006 |
29.27 |
0.8510 |
30.33 |
0.8779 |
32.15 |
0.9155 |
34.01 |
0.9422 |
MADUN |
26.73 |
0.7561 |
30.73 |
0.8834 |
31.82 |
0.9058 |
33.76 |
0.9364 |
35.72 |
0.9576 |
DPC-DUN |
26.75 |
0.7567 |
30.57 |
0.8799 |
31.76 |
0.9053 |
33.66 |
0.9355 |
35.59 |
0.9557 |
PGD-DDLN |
26.62 |
0.7508 |
30.60 |
0.8796 |
31.71 |
0.9033 |
33.67 |
0.9355 |
35.60 |
0.9569 |
4. 总结
本文提出了一种基于邻近梯度算法展开的双域学习网络PGD-DDLN用于压缩感知图像重建,将邻近梯度算法的两步更新迭代分别展开到深度网络架构中,并在网络中加入了对图像通道和空间信息的双域学习过程。同时我们在网络中添加路径控制选择模块,来实现跳过贡献力较小的模块进而控制训练成本的目的。PGD-DDLN能够快速实现对图像的采样和压缩,从有限的采样数据中精准重建图像,在定量指标和视觉质量方面都达到较为先进的结果。