低光图像目标检测论文:YOLO in the Dark - Domain Adaptation Method for Merging Multiple Models阅读笔记

论文链接:https://link.springer.com/chapter/10.1007/978-3-030-58589-1_21

来源:ECCV 2020

Abstract

生成模型来处理新的可视化任务需要额外的数据集,这需要花费大量的精力来创建。我们提出了一种域自适应的方法来合并多个模型,比创建一个额外的数据集更省力。该方法将预先训练好的模型与生成模型相结合,在不增加数据集的情况下,将潜在特征反馈给粘合层进行训练。我们还提出了一个生成模型,它是通过从预先训练的模型中提取知识来创建的。这使得数据集能够被重用,以创建用于训练粘合层的潜在特征。我们将此方法应用于弱光环境下的目标检测。YOLO-in-the-Dark模型包括两个模型,Learning-to-See-in-the-
Dark 模型和YOLO。我们提出了一种新的方法,并报告了在短曝光微光图像中检测目标的域自适应结果。YOLO-in-The-Dark模型比其他最新的方法使用更少的计算资源。

1  Introduction

在弱光环境下执行视觉任务是一个困难的问题。短曝光图像没有足够的特征进行视觉处理,图像的亮度增强会产生影响视觉任务的噪声。相比之下,长曝光图像还包含由于运动模糊而影响视觉任务的噪声。

在以前的工作中,处理极弱光图像的图像处理任务已经开发了数据集(SID)[2]。此数据集包含在各种曝光条件下捕获的RAW图像。这种方法是一种创建模型的简单方法,可以在弱光条件下执行视觉任务。然而,创建一个新的数据集需要相当大的努力。特别是,为执行视觉任务而对模型进行的端到端训练需要许多带有注释的图像。

知识蒸馏是重用其他视觉任务训练好的模型的绝佳方法[5]。我们提出了一种新方法来生成用于执行新视觉任务的模型,而无需其他数据集。类似的方法称为无监督领域适应[1,15]已经提出。这些方法对于改变单个模型(例如分类器)的域是有效的。与此相反,我们的研究重点是合并其他在不同领域训练过的模型。

我们将所提出的方法应用于弱光环境下的目标检测。众所周知的对象检测模型YOLO[10,11]使用了公共数据集PASCAL VOC和COCO[4,7],图1显示了它基于See in The Dark(SID)数据集对微光图像的检测结果。图1(a)是长曝光(10 s)图像的结果,这足以获得良好的结果。相反,图1(b)是短曝光(100 ms)图像的结果,该图像已经增强了亮度。 短曝光图像的结果会下降。

我们使用SID模型来处理微光摄影[2]。它改进了短曝光图像的目标检测。图1(c)显示了我们方法的结果;它可以从图1(b)中的图像的raw数据中检测对象。通常,这种目标检测需要使用包含带注释的raw图像的数据集进行端到端的训练。相比之下,我们的方法可以导入预先训练模型的知识,并将其应用到新视觉任务的模型中,以提高性能。在本文的剩余部分,我们给出了使用该方法进行目标检测的结果,并分析了该方法的关键要素,讨论了未来的研究方向。

2  Related Work

研究人员已经讨论了在光线不足的情况下缺少数据集的问题。 在本节中,我们将回顾以前关于弱光数据集的研究。 我们的方法使用知识蒸馏技术,并且在文献中已经广泛研究了与知识蒸馏有关的各种方法。 因此,我们还简要概述了提出的知识蒸馏方法。

Dark Image Dataset.

在介绍了[2]之后,[8]讨论了弱光情况下的数据集。作者创建了Exclusive Darkly(ExDark)数据集,用于研究弱光视觉任务。他们发现,噪声是影响训练的弱光图像中的重要组成部分。他们的结果还表明,去噪可改善对象的边缘特征,但会增加图像中的伪像。作者还比较了Resnet-50在明亮和弱光图像中获得的功能。他们最初认为,训练数据归一化以及通过卷积神经网络(CNN)的各层向高级抽象的数据级进应该将数据归一化,并导致高光和低光数据的亮度被忽略,因为亮度是不是对象分类的关键功能。但是,评估结果表明,高光和低光特征在tSNE嵌入空间中是不同的。该结果表明,应通过适当的数据集训练用于弱光情况的模型。

ExDark弱光数据集比COCO数据集小得多,而且太小,无法为一般的视觉任务创建训练数据。然而,我们参考这项研究,将其与人工使COCO数据集中的每幅图像变暗的方法进行比较。

Inverse Mapping.

逆映射是一种图像到图像的转换方法,其目的是寻找源(A)和目标(B)之间的映射关系。AEGAN[9]是一种众所周知的方法,它使用基于生成对抗网的自动编码器来获得逆生成器。像自动编码器一样,AEGAN包含一个逆生成器(IG)和生成器(G)并生成图像x’从图像域A中的原始图像x经潜在空间向量z‘。G将生成的图像x压缩为潜在空间向量z’,G将z‘重建为新图像x’。AEGAN将生成图像x和重建图像x‘之间的差异最小化。这种结构产生潜在空间向量z’来表示图像到图像的转换。

可逆自动编码器(InvAuto)[14]是图像到图像转换的另一种方法。转换器FAB(A到B)和FBA(B到A)共享InvAuto作为编码器(E)和解码器(D)的一部分。该方法用于在两个不同的图像域(A和B)对应的特征之间进行转换。编码器E实现解码器D的反转(反之亦然),并与解码器D共享参数。这就引出了两位译者之间的强烈关联。

我们使用类似于AEGAN 的概念来创建一个生成模型,如第3.2.节所述。

Hints for Knowledge Distillation.

在教师网络中使用提示信息是知识提炼中的一种众所周知的方法。 FitNet [12]是一种使用提示信息进行模型压缩的流行方法。 该方法选择教师网络中的隐藏层作为提示层,并在学生网络中选择与隐藏层相对应的引导层。 引导层的参数通过损失函数(例如,L2损失)来优化,该损失函数测量提示层和引导层的输出之间的差异。

文[3]中提出的目标检测优化方法也使用了提示信息;该方法选择提示层和引导层,并以L2损耗为优化目标。它还将教师网络的预测结果(对象的分类和包围盒)作为软目标。

我们在训练中使用引导层,如第3.3.节所述。

3  Proposed Model: YOLO in the Dark

3.1  Overview

图2显示了我们的方法的概述,它合并了在不同域(A和B)中训练的两个模型。域A的模型从数据X预测数据Ya。域B的另一个模型从数据Yb预测数据Z。假设数据Ya和Yb是相同的数据类型。例如,模型A从raw图像预测RGB图像,模型B从RGB图像预测对象类别和位置。该方法在对模型A和B进行训练后,提取出具有潜在特征A和B边界的模型片段。新模型由模型A和模型B的碎片组成,它们通过粘合层结合在一起。

该粘合层有助于将每个模型片段中的潜在特征A转换为潜在特征B。SID模型在微光图像上表现良好[2],因此我们将SID模型用于模型A。对于模型B,我们使用了目标检测模型YOLO[10,11]。

3.2  Generative Model for Domain Adaptation

训练粘合层需要域A+B的额外数据;但是,创建数据集需要相当大的工作量。我们的方法定义了一个生成模型,用于使用知识提取来训练粘合层。(注意,生成模型是为粘合层的训练提供域A+B的数据)

图3说明了生成模型的知识提取方案。生成模型从数据Ya(正常光数据集)输出A的潜在特征,如图2所述。SID模型是一种编解码器结构,因此生成模型是解码器的逆函数。在图3中,编码器-解码器G1e-G1d是教师模型,通过从SID数据集和SID模型G1e-G1d馈送raw和RGB图像对来训练学生模型G2e。

此训练使用通过G2e-G1d组合重建的“假”RGB数据和RGB数据之间的损失,表示如下:

训练还使用了G2e的潜在特征LF和G1e的潜在特征之间的另一个损失,如下所示: 

其中i是从每个编码器(G2e或G1e)的输出开始的层的索引号。(这里是为了保证G2e能够从正常光图像中提取出类似于G1e从低光图像中提取出的潜在特征)

这两个损失函数有助于将G2e定义为G1d的逆函数,总损失函数如下:

图4显示了SID编码器潜在特性的粘合层结构(注意不是G2e)。图4(a)是SID网络结构。如[2]所述,SID网络基于U-net[13],U-net由编码器和解码器组成。编码器使用卷积和池化层提取特征。池化层作为空间频率的低通滤波器,因此每个池层的特征包含不同的频率信息。SID编码器有四个级别的特性,分别对应于池化标度1/1、1/2、1/4和1/8。编码器中的每一层将潜在特征馈送到解码器中的相应层。粘合层必须对于后续网络(即,目标检测网络)的频率信息具有足够的表现力。

图5显示了使用SID编码器的潜在特征重建的RGB图像。图5(a)说明了使用所有特征重建的图像。图像的峰值信噪比(PSNR)为31.81,结构相似性(SSIM)为0.752。图5(b)、(c)和(d)是使用较少的特征重建的图像,其去除了高空间频率信息。这些图像的质量比图5(a)的质量差。为了检测物体,必须对物体的详细形状进行识别,所以我们决定使用所有潜在的特征作为粘合层。

图4(b)显示了SID编码器之后的粘合层结构。粘合层由池、连接、卷积和批规范化组成。pooling和concatenate函数有助于收集潜在的特征。卷积和批归一化函数有助于转换域B的新潜在特征。 

如图3所示,根据粘合层的结构提取生成模型中的知识。图6显示了使用提取的知识重建的RGB图像。来自图6(b)中的G2eG1d组合的RGB图像和由图6(a)中的SID模型生成的RGB图像看起来相似。SID模型生成的RGB图像相对于“假”RGB图像具有30.18的PSNR和0.917的SSIM。这些值表明了良好的图像相似性,因此我们得出结论G2e的行为与G1d的逆函数的行为非常相似。

我们还对G2e进行了微调,以改进每个模型片段中潜在特征A到潜在特征B的转换。我们重点研究了YOLO模型中分类器网络的结果来优化生成模型。根据[10],YOLO模型在网络本身的开头包含一个分类器网络。该分类器网络学习特征图以在后续检测网络中进行处理,所以它应该有效地优化与SID数据集相对应的生成模型。我们通过计算使用G2e(LFG2e-cls)在分类器网络的结果)和原始YOLO(LFYOLO−cls)的结果的余弦相似性作为微调损失LG2e−FT如下:

两个向量分别是从分类器网络的特征张量reshape的向量。此外,LFG2e−cls和LFYOLO如图7所示。

3.3  Training Environment

图7显示了提出的YOLO-in-the-Dark模型A+B的训练环境。图7(a)显示了环境的完整视图,虚线边界显示了用于训练新模型的部分。粘合层是训练的目标,它使用的数据是通过编码器G2e生成的。 训练环境使用原始的YOLO模型,该模型使用与G2e相同的RGB数据。 我们使用COCO数据集进行训练。

在训练阶段,根据损失函数对粘合层进行优化。第一个loss函数使用数据集的注释(对象坐标和类),这与原始YOLO方案中的注释相同[11]。

另一个损失函数是基于原始YOLO模型中的一个潜在特征,即YOLO-in-the-dark的潜在特征B与原始YOLO的潜在特征B‘之间的L2损失,表示为:

Lyolo-lf作为正则化项工作,因此总损耗使用第二个损耗,其系数如下:

其中Lyolo与原始YOLO方案中使用的损失函数相同

图7(b)显示了验证期间的数据流。验证使用与训练相同的路径,训练使用RGB数据,并从数据集中评估足够的样本,以确认粘合层的行为是否正确。图7(c)显示预测期间的数据流。预测使用另一路径,使用经由从SID模型传送的编码器G1e的原始数据。这一阶段是评估所提出的YOLO-in-the-Dark模型,该模型将改进短曝光raw图像中的目标检测。

4  Experiments

4.1  Object Detection in RAW Images

图8显示了SID数据集的目标检测结果。图8(a)是原始YOLO模型得到的结果,该模型使用了亮度增强的RGB图像。RGB图像的亮度增强使得原始YOLO模型更容易检测目标。原始的YOLO模型能够很好地检测出a1图像中的物体。然而,该模型不能检测图像a2中的物体。这是因为亮度增强会增加噪声并影响推理。我们提出的YOLO-in-the-Dark模型直接检测原始图像中的物体。检测结果如图b1和b2所示。图像c1和c2是原始YOLO模型使用SID的ground truth(长曝光)图像的基线检测结果。在图b1中,所提出的模型的性能与原始YOLO模型(图a1)相同。此外,该模型还可以检测图像b2中的目标。

SID数据集[2]包含室内和室外图像,室内场景中相机的照度介于0.03勒克斯和0.3勒克斯之间。因此,图像b2的结果表明,在黑暗中的YOLO模型可以处理照明小于1勒克斯的场景。

如第1节所述。YOLO in the Dark模型使用前端SID中的编码器来处理RAW图像。新模型使用SID编码器创建一个潜在特征,该编码器处理弱光图像,并通过粘合层将结果输出到YOLO模型的后端。这提高了弱光情况下的目标检测性能。 

我们还评估了SID数据集中的其他图像。图9显示了使用按边界框大小分类的SID数据集的预测结果(F-measure)。我们通过使用原始YOLO模型从参考图像中检测对象来创建用于此评估的注释数据。参考图像是在长时间曝光下拍摄的,因此原始YOLO可以很容易地检测到物体。我们使用这些检测结果作为评估的基本事实。

图9显示了原始YOLO模型的结果,该模型在亮度增强的RGB图像中检测到对象。图9还显示了由暗COCO数据集训练的YOLO模型,其中亮度被缩放以模拟弱光情况。这个经过训练的YOLO模型的性能比原来的YOLO模型差。以前的工作[8]已经发现噪声是微光图像中一个显著的组成部分,因此它会影响训练。研究[8]还发现,去噪改善了对象的边缘特征,但增加了伪影。因此,SID[2]应该是解决这个问题的好方法。此外,图9显示了YOLO-in-the-dark模型的结果。与前两种模型相比,F-measure更适用于所有尺寸的边界盒。mAP(在超过联合(IOU)阈值50%的交叉口)提高了2.1倍(0.26→ 0.55)。3.2节定义的潜在特征似乎足以探测到任何大小的物体,而生成模型对知识的提炼是成功的。 

最后,图9显示了SID+YOLO模型的结果,它是SID和YOLO的简单组合(新颖的方法)。像YOLO-in-the-Dark模型一样,naive方法使用raw图像,但它使用SID生成RGB图像。YOLO-in-The-Dark模型重用SID和YOLO的参数,因此理想情况下,它应该实现与SID+YOLO模型相同的性能。相反,图9表明,YOLO-in-the-Dark模型的性能接近但不等于SID+YOLO模型的性能。我们对粘合层和生成模型进行了微调,以改进每个模型片段中潜在特征A到潜在特征B的转换。图9还显示了没有微调的YOLO-in-the-Dark模型的结果。我们在4.2.节中讨论这一点。

我们还评估了在弱光条件下的检测性能。SID数据集不包括不同级别的照度,因此我们收集了包含对象(例如汽车、水果和动物)的其他室内图像。每个图像都是使用相同的相机设置(f/5.6和ISO-6400)拍摄的。原始的YOLO模型和提出的YOLO-in-the-dark模型都能检测到照度为0.055lux,曝光时间相似的物体(情况(a))。相比之下,当照度为0.013lux时,原始YOLO模型需要更长的曝光时间(810ms)(情况(b))。YOLO-in-the-dark即使在曝光时间较短的情况下也仍然检测物体(810→ 333毫秒)。最小曝光时间表示在弱光条件下的灵敏度。根据案例(b)的结果,YOLO-in-the-dark模型可以减少曝光时间0.4倍;这意味着与使用亮度增强的RGB图像的原始YOLO模型相比,灵敏度提高了2.4倍。

4.2  Ablation Study

如第3.2和3.3节所述,YOLO-in-the-dark模型的训练环境使用COCO数据集和SID数据集训练的生成模型。我们的方法假设编码器G2e从COCO数据集中输出潜在特征A,模拟SID数据集中一对raw和RGB图像之间的关系。在本节中,我们将描述一系列对照实验,以评估训练环境中不同元素的效果。

Input Images.

图10(a)显示了COCO和SID数据集中平均图像的直方图。SID数据集中的图像往往像素级别较低;这是因为光线很暗。COCO数据集中图像的像素级分布不同于SID数据集的像素级分布,这种差异可能会影响编码器G2e。

我们评估了不同预处理参数(gamma校正)对输入图像的训练效果。图10(b)显示了COCO数据集中伽马校正平均图像的直方图。较大的gamma会导致较低的像素级别,如在SID数据集中。图11报告了0.67、1.25和1.5的不同伽马校正级别的结果。

预处理COCO数据集的直方图显示,gamma校正值为1.25或1.5时,直方图与SID数据集的直方图接近。因此,对训练图像进行gamma校正可以改善模型的结果。当gamma为0.67时,图11显示mAP略微降低(0.37→ 0.36). 当gamma为1.25时,mAP将提高(0.37)→ 0.40),当为1.5时,mAP不会更改。 

 这些结果表明,伽马校正可以减轻由于数据集的差异造成的影响。然而,该模型对gamma值非常敏感,这会导致副作用。我们的评估表明,gamma校正需要与数据集中像素级别的直方图相对应的精细调整。

Data Augmentation.

数据扩充是提高模型泛化能力的有效途径[6]。我们还评估了数据增强以及输入图像gamma校正的效果。

表1报告了通过改变亮度和对比度来增加数据的情况。这种方法随机改变亮度和对比度10%的最大像素水平在每个图像。mAP略有下降(0.37→ 0.35)与默认条件(无增加)相比。根据之前的报道,发现结果对gamma值比较敏感,数据扩充可能会对这种训练产生负面影响。该方法重用了预先训练好的模型,具有良好的通用性。因此,它只需要对粘合层进行泛化。因此,数据扩充对于这种方法似乎并不有效。

Finetuning the Generative Model. 

如第3.2节所述。对生成模型进行了微调,改进了胶层的训练。我们使用通过G2e(LFG2e-cls)在分类器网络的结果)和原始YOLO(LFYOLO−cls)的结果微调损失函数LG2e−FT,如图7所述。这个微调优化了G2e的两个特性LFG2e−CLS和LFYOLO−cls,结果表明,优化后的G2e可以输出更好的潜在特征A。这有助于优化胶层。表2报告了LG2e−FT和 mAP,对应于图9中的(c)和(e)情况。结果表明,对生成模型进行微调可以以一个较小的余弦相似度显著提高mAP。

Computing Resources.

这种方法的另一个贡献是减少了所需的计算资源量。表3比较了所提出的方法和SID+YOLO模型(MAC操作)用于处理832×832从原始raw图像(4240×2,832)重新采样创建的raw图像). 我们的方法可以通过潜在特征合并模型来省略SID编码器。SID解码器的计算代价很高(192.63gmacs),因此粘合层减少了所需的计算资源总量。

5  Conclusion 

我们提出了一种域自适应的方法来合并多个模型,这比创建一个额外的数据集要省力。该方法将在不同领域预先训练好的模型与生成模型相结合,不需要额外的数据集就可以输出潜在的特征来训练粘合层。我们还提出了一个生成模型,它是由预先训练的模型中的知识提炼而成的。它还允许重用数据集,以创建用于训练粘合层的潜在特征。

本文提出的YOLO-in-The-Dark模型是YOLO模型和SID模型的结合,能够在弱光条件下检测目标。我们的评估结果表明,在yolo-in-the-dark模型可以工作在场景照明不足1lux。该模型在0.013lux下的灵敏度是原YOLO模型的2.4倍。简单地结合SID和YOLO(朴素的方法)也可以改进弱光环境下的目标检测,这种朴素的方法展示了YOLO在黑暗中模型的理想性能。我们的模型的性能仍然需要改进,所以它更接近这个理想。我们还提出了在各种条件下对YOLO暗模型的评价。对训练输入图像进行预处理,对生成模型进行微调,可以有效地提高粘合层的优化效果。

这种方法的另一个贡献是减少了计算资源。与朴素的方法相比,我们的方法可以通过潜在特征合并模型来省略SID解码器。SID解码器的计算代价很高(192.63gmacs),因此粘合层可以减少所需的计算资源总量。

在未来的工作中,我们计划将此方法应用于其他任务,包括多模态任务。我们希望这种方法可以应用于使用公共数据集的各种模型。它将更有效地扩展模型的功能。

版权声明:本文为CSDN博主「import_torch_as_tf」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xspyzm/article/details/116380310

import_torch_as_tf

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

使用 YOLO 进行目标检测

点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达自从世界了解人工智能以来,有一个特别的用例已经被讨论了很多。它们是自动驾驶汽车。我们经常在科幻电影中听到、读到甚至看到这些。有人说&