【LPCDNet】一种基于多层特征压缩和灵敏度引导的网络剪枝的轻量级补丁级变化检测网络(IEEE TGRS收录)

摘要

  • 现有的CD方法通常将大规模的双时态图像对裁减成小的patch,使用像素级别的CD方法处理。但是,由于变化的稀疏性,现有的像素级方法在许多不变区域上存在计算成本和内存资源的浪费,降低了在计算和内存资源极其有限的硬件平台上的处理效率。
  • 为此,提出一种lightweight patch-level CD network (LPCDNet),可以快速去除大规模双时态光学图像中大量不变的的patch对,有助于加速后续的像素级CD进程,降低内存成本。
    • 提出一种sensitivity-guided network pruning method来去除不重要的通道,并在ResNet18网络的基础上构建轻量级主干网络。
    • 设计了具有多尺度最大池化结构的multi-layer feature compression (MLFC) 模块,对图像斑块的多层特征进行了压缩和融合。
    • 最后,将MLFC模块的输出,输入fully-connected decision network生成二进制变化图。
  • 在训练过程中利用加权交叉熵损失来解决变化/不变化的类不平衡问题。在两个CD数据集上的实验表明,我们的LPCDNet在NVIDIA Jetson AGX上,每秒达到超过1000帧,是现有方法的3倍以上,没有明显的性能损失。此外,像素级CD处理阶段的计算成本可以降低60%以上。
  • 论文链接:A Lightweight Patch-Level Change Detection Network Based on Multi-layer Feature Compression and Sensitivity-Guided Network Pruning | IEEE Journals & Magazine | IEEE Xplore

动机

一些轻量级CD方法主要集中在像素级的轻量化处理上。实际上,原始大尺度的遥感图像中的变化区域通常呈现稀疏分布,只占整个图像区域的一小部分,因此,大多数图像patch不包含变化区域,将像素级CD方法应用于所有patch是计算和内存资源的浪费,在设备上只使用像素级CD方法效率较低。

为此,一个策略是在应用像素级CD模型之前,选择可能包含变化区域的图像patch。然后,只需要对选定的图像patch进行像素级CD,这大大减少了处理设备的计算和内存资源的消耗。选取包含变化区域的图像patch和去除不变patch的过程正是patch级CD任务。结合像素级CD和patch级CD,本文使用图1(b)中的框架进行大规模图像CD,以实现更有效的推理和准确的检测结果。

目前patch级的CD方法研究很少,通常采用著名的骨干网络,如VGG来进行特征表示,它们具有相对大量的基本参数。其中的冗余特征通道占总参数和计算操作的很大比例,但对提高检测精度的影响非常有限。此外,现有的方法在提取图像特征时不能同时考虑特征的压缩和多层次特征的融合。特征压缩是实现轻量级CD性能的一种可行方法。

方法

本文提出LPCDNet,在实现轻量级CD的同时保持整体patch级CD性能。结构如下图所示,LPCDNet以一对双时态图像patch作为输入,检测它是否包含变化区域,并输出一个二进制变化图。

  • Siamese encoder based on lightweight network:提取特征。
    • CD领域使用的典型轻量级网络包括MobileNet, GhostNet, ShuffleNet等。通常采用
      group convolutions和depth-wise separable convolutions代替standard spatial convolutions,减少深度网络的参数和每秒浮点运算(FLOPs)。理论上,深度卷积需要更少的计算,但是它的算术强度(FLOPs与内存访问的比率)太低,无法有效地利用硬件。因此,尽管在应用诸如深度可分离卷积等轻量级卷积后,模型的复杂性(通过参数和FLOPs测量)大大降低,但推理过程不能像预期的那样显著加速。
    • 因此本文考虑网络剪枝,基于ResNet18网络改进。针对原始的ResNet18的通道冗余性,提出一种sensitivity-guided network pruning method,自适应的修剪不重要的通道,构建轻量级网络LW-ResNet18。
    • Channel Redundancy
      • 图4显示了ResNet18第一阶段原始和剪枝后(compression ratio set to 1/8)的部分通道特征图。可以观察到,对于图像中的地物,来自不同通道的特征图的可视化结果可能相似,导致通道维度内存存在明显冗余。另外,如图4(d)所示,一些通道的特征图包含有限的地面对象信息(例如,只有部分物体边界),但提取过程需要大量的参数和计算。因此,通过剪枝方法对patch级CD模型进行压缩是可行的。在图4中,通道数从64减少到8个时,输入图像patch中的大部分对象的详细信息仍然可以很好地保留在输出的特征图中。证明,通道剪枝方法对patch级CD中的主干网络压缩后,没有显著的性能损失。
    • Network Pruning Method
      • 针对原ResNet18的信道冗余性,采用灵敏度引导的网络剪枝方法对不重要的信道进行修剪,压缩特征提取网络,硬件友好,易于在资源有限的处理设备上实现。
      • 对于网络剪枝,在大多数情况下,手动确定剪枝通道的数量或剪枝比的值,即为基本模型的每一层分配一个固定的剪枝比率,但是,主干网络的不同层包含不同层次的特征信息,对剪枝操作表现出不同的敏感度。因此,上述方案不是最优的,在本文的剪枝方法中,提出量化层对剪枝操作的敏感性,并利用敏感度来修正初始固定剪枝比,实现更复杂的模型压缩过程。主要步骤如下:
        • 1、训练原始的patch级CD网络(没有MLFC模块),并存储trained filters
        • 2、使用初始修剪比率λ来按顺序修剪四个阶段的filters。选择基于L1-norm的通道剪枝作为剪枝策略。
        • 3、使用步骤2中修剪filters进行初始化,对相应的修剪网络进行再训练。计算与步骤1中的原始模型相比的性能损失li(i = 0, 1, 2, 3)
        • 4、使用灵敏度函数F计算ResNet18中每个阶段的灵敏度值Si(i = 0, 1, 2, 3).
          • S_i=F(l_i)=\frac{0.5}{1+exp(\alpha \cdot \frac{l_{max}+l_{min}-2l_i}{l_{max}-l_{min}})}
          • α是用来控制函数斜率,l_{min}= min\{l_i,i=0,1,2,3\}l_{max}= max\{l_i,i=0,1,2,3\},根据实验经验,设置灵敏度值上限为1/2,以获得更好的剪枝性能。该函数是S型函数的一个变体S_i\in [\frac{0.5}{1+e^{\alpha}},\frac{0.5}{1+e^{-\alpha}}],如果α的值足够大,那么Si的值范围趋于接近[0,1/2]。为了使最大灵敏度值和最小灵敏度值分别接近于1/2和0,将α的值设为5。可以观察到,当性能损失相应较大时,当前阶段的剪枝操作的灵敏度值较高。对于灵敏度值高的阶段,需要适当地降低初始剪枝比,以保持网络的整体性能。
        • 5、得到校正比λi,并根据等式3计算经过修剪后各阶段的通道数C i(i=0,1,2,3),构建修剪后的LW-ResNet18网络,并从头开始进行训练。
          • {C}'_i=[C_i\cdot (1-\lambda _i)]=[C_i\cdot (1-(1-S_i)\cdot \lambda)]
          • 其中,λ和λi分别表示初始剪枝比和校正剪枝比。Ci表示在第i阶段进行修剪之前的通道数,[·]表示将原始数字转换为最接近的整数的舍入操作。
      • 对剪枝敏感的阶段,降低初始剪枝比,以减少性能损失。而对于对剪枝不敏感的阶段,仍然使用接近初始值的剪枝比率。
    • LW-ResNet18:
      • 与ResNet18类似,LW-ResNet18网络包含一个由单个卷积层和三个级联阶段组成的块,每个阶段都包含ResNet18中提出的两个基本块。去掉了原ResNet18模型的最后一阶段,以避免深层高级特征信息的冗余。将网络的总降采样率设置为16个,并通过计算得到每个阶段的通道数.
  • MLFC module:细化和融合多尺度特征图。
    • 变化区域通常有不同的尺度和位置,为了检测具有多尺度变化的patch,提出MLFC生成双时态patch对的全局特征向量。
    • 如图3所示。将LW-ResNet18不同尺寸的特征图输入MLFC,对每个尺度的特征都应用1×1卷积和最大池化操作,分别在通道和空间维度上对特征图进行压缩。然后,将压缩后的特征图展平为一维特征向量,将各阶段的一维向量连接起来形成全局特征向量。经过融合后,得到的全局特征向量包含了图像patch中地面目标的多层特征信息,有助于识别变化/不变的区域。
  • two-layer decision network:预测最终的二进制变化图。
    • 对MLFC模块得到的双时态特征向量,计算它们之间的绝对差值(包含与变化区域相关的不同级别的信息),得到差分向量。将差分向量输入决策网络,生成二进制patch级分类结果。
  • Weighted Cross-entropy Loss
    • 解决patch级CD任务中遇到的严重的类不平衡问题。在交叉熵损失函数中额外引入了权值向量,从而赋予了发生变化的patch更高的权值,权值向量 w=(\frac{N_{change}}{N},1-\frac{N_{change}}{N})的值是根据训练数据中变化的和不变的patch对的数量来确定。

实验

Evaluation Metrics

Performance and Efficiency Comparison

Robustness of the Method

Robustness to Registration Errors:

Robustness to Difference of Viewing Angles:

Ablation Studies

Ablation on MLFC Module:
Ablation on Sensitivity-Guided Network Pruning Method:
Ablation on Patch-Level CD in the Whole CD Process:

Selection of Patch Size

  • 12
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值