TBC-Net: A real-time detector for infrared small
TBC-Net:一种使用语义约束实时检测红外小目标的检测器
论文撰写文献阅读
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- TBC-Net: A real-time detector for infrared small
- 外文文献阅读-1
- 摘要
- 一、引言
- 二、背景
- A.基于CNN的分割
- B.Residual Learning
- C.Semantic Constraint
- 三、提出网络:TBC-NET
- A.网络体系结构
- B.目标提取模块
- C.Semantic Constraint Module(语义约束模块)
- D.分割和检测
- E.存储与计算分析
- 四、损失函数和训练方法
- A.损失函数设计
- B.数据合成与训练
- 五、实验
- A.实验设置
- B.对比研究
- C.使用基准方法进行定性评价
- D.用基准方法进行定量评估
- E.性能评估
- 总结
外文文献阅读-1
摘要
红外小目标检测是红外搜索跟踪系统中的一项关键技术。虽然近年来深度学习在可见光图像的视觉任务中得到了广泛的应用,但由于小目标特征学习困难,在红外小目标检测中应用较少。本文提出了一种用于红外小目标检测的轻量级卷积神经网络TBC-Net。TBC-Net由目标提取模块(TEM)和语义约束模块(SCM)组成,分别用于从红外图像中提取小目标和对训练过程中提取的目标图像进行分类。同时,提出了关节损失函数和训练方法。SCM通过结合高级分类任务对TEM进行语义约束,解决了类不平衡问题导致的特征学习困难问题。在训练过程中,从输入图像中提取目标,然后利用SCM对目标进行分类。在推理过程中,只使用TEM检测小目标。并提出了数据合成的方法来生成训练数据。实验结果表明,与传统方法相比,TBC-Net能更好地减少复杂背景造成的误报,所提出的网络结构和节点丢失对小目标特征学习有显著改善。另外,TBC-Net可以在NVIDIA Jetson AGX Xavier开发板上实现实时检测,适用于配备红外传感器的无人机实地研究等应用。
索引词-卷积神经网络,红外图像,小目标检测,语义特征
一、引言
近红外小目标检测是红外搜索跟踪系统中的关键技术。该技术在科学研究和民用应用方面具有巨大的潜力。随着近年来无人机的兴起和广泛使用,越来越多的无人机携带红外传感器进行野外探测、救援和精确定位(如图1所示)。但是,由于红外传感器的分辨率、大气散射、背景温度噪声等因素的影响,红外图像的成像质量普遍较可见光传感器差。此外,在大多数应用中,红外图像的目标尺寸通常小于10像素。因此,红外小目标检测的应用前景越来越广阔,也面临着越来越多的技术挑战.
为了解决小目标检测的问题,人们提出了许多方法。这些方法一般可以分为两类:单帧检测和多帧检测。由于多帧检测算法通常比单帧检测算法耗时更多,且多帧检测算法一般假设背景为静态,这使得多帧检测算法不适合无人机应用。本文主要研究单帧检测算法。
传统的基于形态学滤波的单帧检测方法考虑小目标属于图像中的高频分量,通过滤波将小目标从背景中分离出来。例如,二维最小均方(TDLMS)自适应滤波,最大均值/最大中值滤波,TopHat滤波就是这样的方法。这些方法容易受到背景中的杂波和噪声的影响,从而影响检测的鲁棒性。
近年来,基于人眼视觉系统(human visual system, HVS)的小目标检测方法主要是通过构建不同的局部对比测度来区分目标和背景。当地的对比测量(LCM),改进LCM (ILCM),小说的局部对比度测量(NLCM),加权新的地方对比测量(WLCM),小说加权图像熵图(NWIE),多尺度patch-based对比测量(MPCM) , high-boostbased多尺度局部对比度测量(HB-MLCM)都是基于HVM的方法。这些方法在局部区域内构造一个内部窗口及其邻近窗口或周边区域,计算内部窗口与邻近窗口或周边区域的对比,增强局部目标特征。通过在整个图像上滑动内部窗口,最后采用自适应阈值分割来实现目标的检测。然而,这些算法也容易受到边缘和噪声等因素的影响。
由于深度神经网络在自然图像处理方面的巨大成功,开始将深度学习,特别是卷积神经网络(convolutional neural networks, CNN)引入红外小目标检测中。然而,大多数CNN算法在学习小目标特征[18]方面表现不佳,需要很长时间进行推理。例如,Mask-RCNN需要1 / 5秒在GPU上执行图像检测。YOLO和SSD等轻量级网络结构紧凑、速度快,但检测效率较低。此外,上述算法在处理小对象时往往表现不佳。在CNN方法在红外小目标检测中的实践中,Fan等[15]利用MNIST数据集训练一个多尺度CNN,提取卷积核增强小目标图像。Lin等人[16]设计了一种通过学习过采样生成的综合数据来检测小目标的七层网络。Wang等.[17]将一个在ILSVRC 2013上预先训练好的CNN转移到小目标数据集中,学习小目标特征。然而,现实世界中的物体通常包含大量的形状、颜色和结构信息,这些信息在小目标中是无法得到的。迁移学习的有效性是有限的。
在无人机的现场应用场景中,背景往往有很多杂乱的东西,如树枝、道路、建筑物等。与天空、云、海面相比,背景的组成更加复杂。直观地看,如果能利用更广泛的图像特征,将有助于抑制这些复杂的干扰,降低传统的基于局部特征的方法难以实现的误报率。
受近年来图像分割网络发展的鼓舞,我们希望能直接从原始图像中分割出目标图像。然而,使用自然的图像分割网络对小目标进行分割会产生一些问题。首先,伪影问题严重降低了分割和检测的性能。其次,小目标在整个图像中所占比例较小,导致训练过程中遇到严重的类不平衡问题。在实际训练中,容易出现如图2所示的收敛曲线,网络收敛速度较快,但无法充分学习目标小特征。
尽管使用一个小的28×28图像可以缓解类不平衡问题,小图片的使用限制了网络学习的干扰特征更广泛的背景,它是不可能充分利用网络的更深层次的接受域抑制背景干扰。
为了解决上述问题,我们提出了一个新的称为TBC-Net的语义分割的卷积神经网络,并设计相应的训练方法。与传统方法和基于HVS的方法相比,该网络具有更好的检测性能。本文的贡献如下:
1)提出了一种轻型红外小目标检测神经网络TBC-Net,该神经网络包括目标提取模块和语义约束模块。
2)针对小目标图像中前景和背景极度不平衡的问题,提出了一种新的训练方法,在训练中加入图像的高级语义约束信息。
3)在NVIDIA Jetson AGX Xavier嵌入式开发板上实现实时检测256×256图像。
本文的其余部分组织如下:在第二节中,我们简要回顾了与TBC-Net相关的技术背景。在第三部分,我们介绍了网络结构和检测方法,并分析了网络的存储和计算复杂度。在第四部分,我们介绍了损失函数的设计和训练方法。在第五部分,我们用真实的红外序列进行实验。最后,我们在第六节中给出本文的结论。
二、背景
在本节中,我们简要介绍了TBC-Net的技术背景,包括基于CNN的图像分割、残差学习、语义约束等,以便读者在后面的章节中更好地理解TBC-Net的设计思路。
A.基于CNN的分割
提出了全卷积神经网络(FCN),将CNN用于图像分割,将全连接层替换为卷积层。然而,FCN使用vgg-net作为特征提取网络,只需要1 / 5秒就可以完成图像分割,难以实现实时性能。Noh等利用反褶积对feature map进行上采样,得到分割掩模。也有很多的作品,比如基于反褶积的来实现图像分割。然而,反褶积也会产生一些伪影。
图像分割也可以看作是一个像素级的分类任务。Chen等人[28]使用了一种称为“扩张卷积”的卷积运算来实现像素级分类。Yu等[29]提出的扩张残余网络 (DRN)来减少由扩张卷积引起的棋盘图伪影。
为了融合多尺度信息,Lin等[30]采用了多尺度图像输入和滑动金字塔池的方法来提高性能。Deeplab[28]使用多尺度输入图像来提取特征。U-Net[31]通过将相同比例尺下采样得到的特征图与上采样得到的特征图拼接在一起,实现了多尺度特征融合。上述算法均针对自然图像;对于10像素内缺乏复杂特征的红外小目标,仍然没有有效的基于深度学习的分割解决方案。
B.Residual Learning
ResNet[32]被提出使用残差连接来增强CNN的学习效果。高速公路网络[33]和DenseNet已经证明了残差连接在改善收敛性和提高网络性能方面是有效的。剩余连接是从早期层到后期层的短路径。这些交叉连接一方面可以解决网络难以收敛的问题,另一方面由于消失梯度等问题降低了推理精度。网络的浅层信息可以直接传输到更深一层,使网络能够更有效地学习浅层所包含的图像特征。DnCNN利用残差学习的思想构建网络进行图像去噪,取得了良好的降噪视觉效果。
C.Semantic Constraint
Liu等人[36]提出了使用高级视觉任务增强去噪神经网络的想法。他们将去噪CNN与各种高级视觉任务级联,并在训练过程中利用联合损失更新去噪CNN的权值,从而提高输出图像的视觉效果。该训练方法结合图像语义约束,对噪声等难以描述的图像特征的学习有明显的改善。
Wang等[37]采用图像去噪作为低级视觉任务,分割图像作为高级视觉任务。然后利用混合损失对联合管道进行训练,以提高去噪效果。
三、提出网络:TBC-NET
一般来说,红外小目标图像可以用[38]公式表示:
其中fD、fT、fB、fNand (x, y)分别为原始红外图像、小目标图像、背景、噪声和像素位置。在下面的部分中,我们省略(x, y)而不会造成混淆。
A.网络体系结构
我们提出的网络如图3所示,包括两个模块:目标提取模块(TEM)和语义约束模块(SCM)。我们将网络命名为TBC-Net,命名的原因将在第四节的开始部分解释。TEM是一种轻量级的图像分割网络,操作紧凑,结构参数灵活,推理效率高。SCM是一个用于实现高级分类任务的多层CNN。
对输入的红外图像进行TEM处理,得到目标图像fT,SCM根据fD中包含的目标数量对目标图像fT进行分类。该高级视觉任务可以在训练阶段向TBC-Net中添加语义约束,提高TEM的性能。在训练TBC-Net时,需要对合成数据进行单片机预训练,然后在训练TEM时,SCM参数保持不变。TEM检测的结果会影响SCM的分类结果,图像语义带来的约束信息会通过反向传播传递给TEM。SCM的存在解决了小目标数据中由于目标与背景不平衡导致难以学习特征的问题,使TEM仍然可以有效地学习小目标特征。为了对网络进行训练,我们提出了一个联合损失函数和相应的训练方法,如第四节所示。
在推理阶段,只有TEM起到提取目标的作用。因此,在实际应用中,网络的推理速度仅取决于TEM的复杂性。下面介绍TEM和SCM的设计思想和细节。
B.目标提取模块
与ImageNet[39]、Pascal VOC[40]、MS COCO[41]等自然图像数据集相比,红外小目标图像不包含色彩信息。同时,由于目标尺寸较小,不包含类别、形状信息。网络用于自然图像的语义和实例分割一般需要学习颜色、形状和类别特征。然而,在红外小目标数据中并不存在这样的问题。因此,为了提高网络推理效率,我们利用红外小目标数据的特点,设计了一个紧凑的TEM模块,网络结构更轻量化。
基于以上分析,我们使用紧凑的操作来实现下采样和上采样模块,形成图像分割领域常用的“编码器-解码器”结构。TEM的结构如图4所示。我们使用二维卷积层和MaxPooling层组成下采样模块(如图5a所示),参照[42]使用最近邻插值和二维卷积层组成上采样模块(如图5b所示)。通过残差连接将上采样特征与相同尺度下采样特征融合。upsampling模块,下采样模块和残差连接一起构成TEM。
利用TEM提取目标图像fT’,形式表达式如下:
红外图像一般是单通道灰度图像。首先使用二维卷积层扩展输入通道的数量。输入层扩展的通道数称为基通道(BC)。下采样操作的数量决定了网络需要融合的规模,因此它也是一个重要的网络结构参数。我们将下采样产生的最大尺度水平命名为L。通过改变BC和L,网络结构可以相应调整。此外,BC和L也会影响算法的参数存储空间和计算量。
值得注意的是,我们没有使用零间隔来避免目标图像的干扰边缘,也没有使用反褶积来避免棋盘图伪影。这两种情况都会影响小目标的检测(如图6所示)。
C.Semantic Constraint Module(语义约束模块)
虽然在边缘分割,血管分割等应用中,已经有了很多方法,如小块训练,使用加权损失函数来解决样本类不平衡问题。但是,如上所述,对小尺寸图像的训练不能使网络学习到复杂的背景干扰信息,也不能有效利用网络的大接受域。同时,损失函数中权重的选择具有任务特殊性,很难对[22]进行优化。
在[36]的激励下,我们认为在训练过程中加入语义信息可以使网络更好地学习小目标的特征。然而,红外小目标往往只有2 - 10个像素点,且在红外成像过程中存在大量的非理想因素,很难用形状、类别等高级语义对其进行描述。根据小目标图像的特点,提出了一种直接的图像语义约束,即对目标图像中小目标的数量进行计数。使用该语义信息的方法如下:
1)利用TEM提取目标图像fT’
2)利用另一种网络预测fT’中包含的目标数量
我们使用一个CNN对fT0进行分类,其结构如表I所示,其中CSCM是全连接层对应的类数。我们将分类网络称为语义约束模块,以说明它在语义层次上对TEM训练的指导作用。这个过程如图3所示。
D.分割和检测
在TEM得到目标图像后,对目标图像采用自适应阈值法得到二值化分割图像。自适应阈值的计算方法定义如下:
式中,T为分割阈值,µ和 σ分别为TEM输出图像的均值和标准差。k为实验的经验参数,取值范围为20 ~ 30。
使用TBC-Net进行小目标检测的完整工作流程如图7所示。
E.存储与计算分析
在算法分析中,一般只分析计算复杂度。但对于红外小目标检测的实际应用场景,检测算法一般运行在存储空间和计算资源有限的硬件设备上,而神经网络的参数存储要求相对较大。因此,除了计算复杂度分析,我们还分析参数存储需求。
1)计算复杂度分析。在计算复杂度分析中,我们不使用O符号,而是使用神经网络设计[43]中常用的OPs(乘加运算的个数)作为衡量计算量的指标。上采样模块中使用的最近邻插值不需要乘法和累加运算,因此在计算OPs时忽略它。二维卷积层的OPs如下:
式中,H和W分别为TBC-Net输入图像的高度和宽度。
计算表明,算法的计算复杂度分别与输入图像的像素个数和最大尺度级别L,与基通道BC的个数平方成正比。
2)参数存储分析:存储需求由两部分组成,feature map存储Mm参数存储Mp。
在TBC-Net的推断阶段,在第一次上采样之前不能丢弃之前的特征图。第一次上采样后,与上采样尺度相对应的下采样特征图可以丢弃。所以在推理过程中,特征图Mm的最大存储需求发生在第一次上采样之前:
对于网络权值,其存储空间主要取决于BC和L。二维卷积层的参数数为k2 c×Cin×Cout,参数存储空间计算如下:
第一部分是下采样和上采样模块所需的权重存储量,第二部分是输入输出层的权重存储。可以看出,参数存储空间近似与BC的平方成正比,并与L呈指数关系,从而得到TBC-Net的总存储需求MTBC:
从表二的配置组合关系可以看出。BC = 16和L = 5时,TBC-Net有300万个参数,最大存储需求为500万个,适用于大多数带有CNN加速器的嵌入式设备进行实时处理。
四、损失函数和训练方法
损失函数和训练方法是TBCNet更好地学习小目标特征能力的核心。我们为TBC-Net设计了一个包含目标提取损失、背景抑制损失和分类损失的联合损失函数,以克服CNN在学习小目标特征方面的不足。这就是为什么我们把这个网络命名为TBC-Net。T, B, C是三个损失函数的首字母缩写。并提出了相应的数据合成和训练方法。
A.损失函数设计
1)目标提取损失:提取目标图像fT‘应该尽可能接近标签fT。相比之下,使用L2norm衡量图像之间的差异,L1norm和结构相似度(SSIM)有更好的影响[44][45],但直接使用L1norm带来光环工件,参考文献[44],我们使用混合L1norm和SSIM的损失,表达式如下:
这里 µx, σxand µy, σy分别为在图像x和y上滑动一个固定大小的窗口计算得到的窗口内的像素均值和标准差。c1, c2是稳定弱分母除法的两个变量。
在实验中,我们设置c1= 0.02, c2= 0.06,以及窗口大小,计算出了模型的尺寸,计算出了模型的尺寸,计算出了模型的尺寸µx, σxand µy, σy是11 × 11。
2)背景抑制损失:TEM得到的图像中只有小目标,而红外图像中小目标往往是稀疏的。因此,我们参照IPI[46]的实践,对目标图像使用稀疏约束进一步抑制背景,得到稀疏结果,其损失可以用fT0的L1norm直接表示为:
3)分类损失:如前所述,语义约束模块本质上是一个对目标图像进行分类的网络,因此我们使用交叉熵损失表示如下:
其中CE为交叉熵损失的缩写,yt为目标图像对应的ground truth分类标签(即其中包含的目标数量)。
4)总的损失:由以上三个损失函数,我们可以得到训练TBC-Net所需的关节损失函数,如下图所示:
5)分析:通过对训练过程的分析,可以说明关节损失函数在小目标特征学习中的有效性。CNN的训练一般采用梯度下降算法,即根据以下公式更新网络权值:
利用链式法则,我们可以将LTBC中心分解为输出图像fT’的四个偏导数,从中我们可以看到共同损失对TEM输出的影响。分解过程如下:
因为这些损失函数是加性关系,所以它们对fT’的影响是独立的。我们可以分别分析它们来解释它们的影响。
在第一部分中,我们着重于它们在目标区域和背景区域的共同作用。在TEM输出图像fT’对应的背景区域,如果fT’大于fT,则∂Ll1∂fT0和∂LB∂fT0同时等于1,从而可以抑制背景以及沿LC梯度方向更新所引起的波动。在目标区域,虽然fT‘大于fT发生同样的抑制现象,但fT0小于fT时,∂Ll1∂fT0 = -1,∂LB∂fT0 = 1,叠加梯度为0。同时,LS的梯度仍然存在,可使输出fT‘ TEM逐渐的综合效应的方法。Ll1and LBcan盾Ll1in造成的梯度更新目标区域,以减少工件的发生(如图9所示),而不失去Ll1on背景地区的良好的抑制效果,而不需要担心被磅平滑的目标特性。定性解释图10所示。在图10中,橙色的线代表TEM输出的灰度,绿色的线代表fT的灰度,灰色区域和浅蓝色区域分别代表两个损失函数在目标区域和背景区域的梯度的联合作用。
同时最小化LS,使fT’和fT在目标区域和背景区域都尽可能接近。
第二部分,分类损失LC对小目标的消失非常敏感。一旦一个图像小目标由TEM来获得一个空白图像处理没有目标,LCloss将增加,这可以改变fT‘和网络可以摆脱当前状态,这意味着SCM生成语义约束的输出TEM和解决问题所造成的数据不平衡的问题。
B.数据合成与训练
根据前面的设计,计算损失函数需要一个原始图像fD,一个目标图像fT,以及一个表示原始图像fD中目标数量的标签yt。这三部分组成了计算损失函数LTBC的训练元组(fD, fT, yT)。我们有大量的背景图像fB,所以关键是合成包含几个小目标的图像fD,并根据目标的数量给标签yt。
1)合成fD:
Kim等人[47]提出了一种基于黑体辐射的目标模型生成红外图像的方法,但我们发现当目标尺寸缩小到10像素以内时,目标本身的形状信息较弱。与利用黑体辐射合成数据相比,[46]更容易将小目标图像与背景融合。具体来说,我们选择一幅目标图像,随机调整亮度,将目标图像缩放到一个随机大小,然后使用[46]中提出的方法将目标融合到背景中。将目标融合到背景中的算法如算法1所示,其中,像素间距是一个用于调整亮度的随机因子。一些融合到背景中的小目标局部结构的例子如图11所示。
2) Label yT:
在合成fD的过程中,根据成功融合到背景中的小目标个数n标记对应的yT= n,保留一些没有融合到任何小目标的背景图像作为负样本,设yT= 0,对应的训练元组为(fB, fB−fB,0)。当将两个或多个目标融合到背景中时,我们首先生成不重叠的目标的位置依次将不同的nt靶点融合到这些位置中,其中ntis是我们在一张图像中需要添加的靶点数量,属于[1,CSCM−1]。该过程如算法2所示,其中M为目标图像集合中包含的图像总数,一些合成数据示例如表III所示。
在实验部分,每幅合成图像上都有1 ~ 3个小目标;即CSCM= 4。合计3个目标主要基于以下两点。一方面,当添加的目标数量过小时,分类网络对图像中是否有小目标比对目标数量更敏感。另一方面,当加入太多小目标时,许多目标靠得太近,导致分类网络难以解决的稠密计数[48][49]问题。因此,根据我们的尝试,在每张图像上添加3到6个小目标可以获得更好的效果。经过训练的分类网络在fT上对目标数量的预测准确率达到97.5%,足以指导TEM训练。
3)训练方法:在训练时,我们以fT作为输入和yT作为输出ground truth label对SCM进行训练。当SCM收敛时,冻结其权值,然后用fD作为TBC-Net的输入,用LTBC对TEM进行训练。完整的TBC-Net训练方法如算法3所示。
五、实验
在Pytorch[50]中编写了TBC-Net程序。在训练阶段,输入图像大小为256×256,批量大小设置为128. 使用Adam[51]作为优化器。初始学习速率被设置为0.005,并在第80和120轮时衰减到以前学习速率的十分之一,总共130个epoch训练。训练是在4个GTX 1080个gpu上完成的,每个网络结构的平均训练时间大约为65分钟。需要注意的是,虽然实验中使用的图像分辨率为256×256,但是由于TBC-Net的TEM对输入图像的分辨率没有任何限制,所以使用的所有层都可以接受任意分辨率的输入。因此,TBC-Net可以应用于任意分辨率的红外小目标图像的检测。
实验中用于训练TBC-Net的综合训练数据的详细信息如表4所示。
A.实验设置
1)数据集:无人机用红外传感器拍摄的六个真实序列被用来验证TBC-Net的有效性。这些数据涵盖了无人机野外应用的常见场景和检测问题,如搜索野生动物和困在树林里的人。关于数据集的细节是表五所述。
2)基准方法:我们选择Top-Hat、Max-Mean、max -中值三种形态滤波方法,以及近年来常用的五种基于HVS的NWIE、MPCM、HB-MLCM、ILCM、WLCM方法作为实验比较的基线方法。由于[17]不公开网络结构,且[15]不使用网络检测小红外目标,所以我们不使用基于深度学习的[17][15]方法进行比较。但是在下一节中,我们将[16]的训练方法与我们提出的训练方法进行比较。这些方法和TBC-Net的参数设置如表VI所示。
3)定量度量:采用接收机工作特征曲线(ROC)、信杂比增益(SCRG)、背景抑制因子(BSF)作为定量评价标准。ROC曲线反映了探测器的检测概率与虚警之间的权衡关系,是衡量探测器质量的重要指标。检测概率和虚警率的定义如下:
根据检测器设定的阈值T,检测概率和虚警率也会随之变化,从而得出检测概率和虚警率之间的关系。
SCRG和BSF的定义如下:
其中SCRout和SCRin表示输出和输入图像的信杂比(SCR)。SCR =|Mt−mb|/σb,Mt表示像素值的目标,和mb和σb分别表示背景区域的平均值和标准偏差的目标。在本文中,我们使用目标周围5个像素的区域作为背景。 σin
and σout,分别表示处理前后图像背景的标准差和处理后的标准差。由于背景抑制后的标准差可能为0,为了避免分母为0,我们参考论文[52],在SCR和BSF计算中加入调整系数“λ”以避免无穷大,本文将“λ”设为0.01。
为了方便,在实验部分,我们将不同算法的检测结果归一化为[0,1]。
B.对比研究
在本节中,我们将比较不同结构和训练方法下的网络检测性能,以展示结构变化对TBCNet性能的影响以及我们提出的训练方法的有效性。
1)结构比较:为了简化探索的过程,我们根据一些实践和经验的原则设置了需要探索的网络超参数。一方面,根据TBC-Net的应用场景,参数的数量应控制在与紧凑神经网络[43][53][54]相似的数量级上;也就是说,参数的最大数量应该在1000万个以内。另一方面,由于小目标大小在2 - 10像素之间,需要融合至少三种尺度的信息才能获得更好的检测结果。基于上述考虑,我们将BC设置为4到16,L设置为2到5。
通过设置不同的BC和L值,我们可以得到不同的TBC-Net变体。通过测试不同结构的TBC-Net变体对真实红外数据的ROC曲线,分析BC和L对网络性能的影响。所有这些TBC-Net变量都使用损失函数LTBC进行训练。
在L不变的情况下,改变BC值得到的ROC曲线见图12a。可以看出,当L = 4和5时,随着BC的增加,TBC-Net的检测性能有所提高,但当L = 4时,网络对BC的变化更加敏感。当L = 5时,BC = 8和BC = 16的差别不明显。
保持BC不变,改变L的值,得到ROC曲线如图12b所示。与图12a相似,当BC = 8时,网络对L的变化更加敏感,当BC = 16时,除L = 2外,L≥3时网络性能非常接近。
结构分析表明,当BC和L中的一个较小时,网络性能对另一个的变化非常敏感。当BC = 16和L = 5时,网络性能已经足够好。
2)训练方法比较:设计了6个损失函数,比较不同损失函数组合下训练的网络的检测性能。这6个损失函数分别是LT, LT+LB, LT+LC, LC, LC+LB and LTBC,其中LT广泛应用于许多自然图像分割和去噪任务中,可以作为一种基准训练方法进行比较。其他的组合被用来证明我们的方法的有效性。设BC = 16, L = 5,减小探索空间。
我们以数据集2中的一幅图像为例来说明在不同的损失函数训练下得到的目标图像的差异,如图13所示。可以看出在背景中有大量杂波和噪声的数据集2上,13b和13c漏检。经过LT and LT+LB训练的网络虽然对背景有较强的抑制作用,但并不能增强目标。在LT+ LC下训练的网络可以学习小目标的特征,但在小目标周围存在晕圈伪影。在LC and LC+ LB下训练的网络可以增强混杂在杂波中的目标,但13e中存在大量的光晕伪影,13f优于13e,但背景中仍存在大量噪声。在LTBC训练下的网络输出13g,不仅能很好地抑制杂波和噪声,而且能提高目标。此外,我们在13e中可以看到,即使只使用LC,网络仍然可以学习到一定的目标特征,这说明在训练阶段,SCM对TEM确实有指导作用。
我们使用1 - 6个数据集的所有图像来测试不同损失函数训练下的网络,绘制ROC曲线如图14所示。可以看出,LTBC训练下的检测性能最好,而其他损失函数训练下得到的网络存在严重的漏检现象。
另外,我们给出了LTBC下训练TBC-Net的训练损失曲线,如图15所示。数字中的全部损失是LTBC, LT, LB,和LC是LTBC的三个部分。在图15中,损耗函数没有像图2中那样迅速衰减到0,而是在连续调整期间接近0。实际上,虽然LTBC并不总是趋近于0,但在几种损失的综合作用下,目标提取和检测要优于背景过拟合得到的网络。我们使用在LT bctc下训练的不同时点的网络参数来测试真实数据,并以数据集3中的一幅图像为例来展示在训练过程中网络检测小目标效果的变化。结果如图16所示。可以看出,在训练开始时,TBC-Net还不能区分小目标的位置,但随着训练的进行,TBC-Net对小目标的特征学习越来越清晰,对杂乱背景的抑制效果也更好。
对损失函数的对比分析表明,该算法解决了目标与背景数据不平衡导致小目标特征难以学习的问题。同时,对背景和伪影有较好的抑制效果。
C.使用基准方法进行定性评价
我们从六组数据中分别选择一幅图像进行定性评价。原始图像和不同算法处理后图像的三维灰度分布分别如图17a ~ 17f所示。红色矩形是目标区域的放大。
在数据集1中,MPCM和TBC-Net对森林中的目标均有显著增强,但MPCM对背景的抑制效果不如TBC-Net,其他方法对建筑的响应强于对目标的响应。在数据集2中,ILCM、NWIE、MPCM、HB-MLCM、TBC-Net均增强了树林中的目标,而TBCNet对背景的抑制更强。对于数据集3,除了MPCM之外,其他方法都能增强目标向树林的跑进,TBC-Net也能很好地抑制树林的干扰。对于数据集4,在道路边缘存在干扰,虽然所有方法都能增强两个目标,但TBC-Net对道路边缘的敏感性低于其他方法。对于数据集5,大多数方法都受到森林边缘噪声和光照的干扰,影响了对目标的检测,而TBC-Net能够更好地抑制背景噪声和增强目标。对于数据集6,所有方法都增强了目标,但NWIE受到了树林的干扰,MPCM在道路两侧产生了较强的响应,TBC-Net能够更好的抑制树木和道路的干扰。
D.用基准方法进行定量评估
图18为不同算法对6个数据集的ROC曲线。可以看出,由于TBC-Net对背景的抑制效果较好,可以在较低的误报率下实现较高的检测概率。特别是在数据集1、2、4、6中,当背景中有很多来自分支、道路、光噪声的干扰时,TBCNet可以明显优于其他检测方法。这还显示从一边TBC-Net训练在大型图像而不是本地特性可以有效地抑制一些复杂的干扰背景比传统方法因为网络不仅可以学习目标的地方特色,但也体现着广泛和高级信息从整个图像。
表VII和表VIII分别给出了不同算法的BSF和SCRG。对于SCRG和BSF,值越高,检测性能越好。
除数据集5外,TBC-Net对其他数据的BSF值最高。在数据集5上,MPCM生成的背景虽然很平,但是BSF比TBC-Net高,但是没有正确地增强背景。
对于SCRG, TBC-Net可以在所有数据集上获得最佳的结果。因此,考虑到综合背景抑制和目标增强的结果,TBC-Net算法的性能明显优于其他算法。
E.性能评估
1)与其他方法的性能比较:NVIDIA Jetson AGX Xavier开发板是一个嵌入式AI加速器,广泛应用于机器人和自动驾驶。除了在CPU和GPU上运行TBC-Net之外,我们还将其部署在Jetson AGX Xavier开发板上,以评估其在移动设备上的性能。
对于基线方法,我们只计算CPU上的执行时间。对于TBC-Net,我们分别计算了它在CPU、GPU和AGX Xavier开发板上的执行时间。测试环境为PC拥有3.6 - ghz Intel i9-9900k CPU, 64.0-GB内存,GPU为NVIDIA RTX 2080Ti,开发板为Jestson AGX Xavier。所有传统的方法都在MATLAB 2018b软件中实现,而TBC-Net使用Pytorch 1.0.1实现。
我们首先将所有图像数据读入内存,只计算从图像输入到处理完成的时间,而忽略了数据准备时间。表IX给出了不同基线算法在CPU上的平均单帧处理时间,以及在所有序列上测试的TBC-Net在CPU/GPU/Jetson AGX Xavier上的平均单帧处理时间,我们使用C、G、B来区分TBC-Net在CPU、GPU、开发板上的执行时间。Jetson AGX Xavier支持10W, 15W, 30W三种电源模式,以适应不同的应用。我们这里使用30W的电源模式。
上述方法的作者没有透露其源代码,因此我们根据原始论文对这些算法进行了复制。有些算法的执行效率可能不满足或与原论文报道的效率不一致。
在CPU运行时间方面,虽然TBC-Net比Top-Hat、HB-MLCM、ILCM和MPCM等算法慢,其检测性能仍然明显优于这些算法。此外,从更实际的角度来看,TBC-Net在具有神经网络加速硬件的嵌入式设备上高效运行,而其他传统算法在嵌入式设备上没有很好的并行优化空间来提高性能。
2)不同功率模式下的性能比较:由于大多数深度学习加速器是为大数据吞吐量操作设计的,批量处理数据要比单帧处理快,因此我们也测试了TBC-Net在不同批处理大小下单帧平均处理时间。批处理的意义在于,在一些嵌入式场景中,加速器可能需要同时处理多个传感器采集的视频图像。测试结果如表x所示。在批帧处理的情况下,TBC-Net在10W、15W和30W功率模式下,帧率分别高达50,91和175,说明它适合于嵌入式低功耗场景下的快速目标检测。
总结
本文提出了一种新的轻量级卷积神经网络TBC-Net,包括红外小目标检测的目标提取模块和语义约束模块。借助语义约束模块、联合损失函数、综合数据以及相应的训练方法,我们解决了在使用CNN学习256×256分辨率图像上的小目标特征时,由于目标和背景极度不平衡所造成的问题。目标提取模块对输入图像进行处理,直接获取目标图像,从而实现端到端的小目标检测。此外,通过存储空间和计算复杂度分析,TBC-Net非常适合部署在支持神经网络加速的嵌入式系统中。实验结果表明,与只使用局部特征的检测算法相比,从大尺寸图像中训练出的TBCNet能够更好地抑制背景中的复杂干扰。TBCNet在NVIDIA Jetson AGX Xavier开发板上实现了实时检测。这些优点使TBC-Net在无人机的红外探测和搜索等应用中具有很大的应用潜力。