CVPR2023:通过实例级背景建模和前景选择的零镜头背景减法

背景建模可以有效的提取前景和背景,背景不变的场景,可以提取出背景消除背景中的误检,极大的改善目标检测误检

论文题目:

ZBS: Zero-shot Background Subtraction via Instance-level Background

Modeling and Foreground Selection

摘要

背景减法(Background subtraction, BGS)的目的是提取视频帧中的所有运动物体,得到二进制前景分割掩码,深度学习在这一领域得到了广泛的应用。与基于监督的BGS方法相比,无监督方法具有更好的泛化能力。然而,之前的无监督深度学习BGS算法在阴影或夜间灯光等复杂场景下表现不佳,无法检测预定义类别之外的物体。在这项工作中,我们提出了一种基于零镜头目标检测的无监督BGS算法,称为零镜头背景减法(ZBS)。该方法充分利用了零镜头目标检测的优点,建立了开放词汇表实例级背景模型。在此基础上,将新帧的检测结果与背景模型进行比较,可以有效提取前景。ZBS对于复杂的场景表现良好,它具有丰富且可扩展的类别。此外,我们的方法可以很容易地推广到其他任务,如在看不见的环境中被遗弃的物体检测。实验表明,在CDnet 2014数据集上,ZBS比最先进的无监督BGS方法高出4.70%,代码发布在https://github.com/CASIA-IVA-Lab/ZBS。

1. 介绍

背景减法(BGS)是计算机视觉应用的基础任务,如自动导航、视觉监控、人类活动识别等。BGS的目标是提取每一帧视频中所有运动物体作为前景,并输出二进制分割。

最直接的BGS算法是直接将当前帧与“静止”背景图像进行比较,然而,这种策略不能处理复杂的场景,如动态背景、照明变化和阴影。因此,在过去的几十年里,人们提出了更复杂的BGS技术。传统的方法可以从两个方面提高性能,首先是设计更健壮的特征表示,包括颜色特征、边缘特征、运动特征和纹理特征。二是设计更合适的背景模型,如高斯混合模型,核密度估计模型,CodeBook, ViBe , SuBSENSE, PAWCS。传统方法由于没有针对特定场景或对象类别进行优化,因而泛化能力相对较强。迄今为止,这些方法只利用手工特征来确定每个像素是否属于前景,我们称这些方法为像素级BGS,因为它们使用基于像素或基于局部像素的背景模型,它们对光线和天气等自然变化很敏感。

近年来,基于深度学习的BGS算法被提出,包括监督BGS和无监督BGS。有监督的BGS算法在CDnet 2014基准测试中取得了令人满意的性能。然而,这些方法通常必须在测试视频的前几帧上进行训练,这将应用限制在未见的场景中。无监督算法克服了这一缺点,大多数算法将语义分割模型结合到传统的BGS算法中。这些算法从150个类别的语义分割模型中预先选择12个类别作为前景,现有的最先进的无监督方法仍然将夜晚的灯光和沉重的阴影作为前景对象,如图1所示,像素级背景模型很难准确区分前景物体的边缘。

为了解决上述问题,我们提出了一种基于零拍目标检测的背景减法框架,零镜头对象检测,也称为开放词汇对象检测,旨在检测预定义类别之外的不可见对象。图2显示了我们的方法的框架,该方法包括全实例检测、实例级后台建模和前景实例选择,在全实例检测阶段,可以使用任何零镜头检测器。

我们使用一个名为Detic的零镜头对象检测模型作为全实例检测器,将原始图像像素转换为结构化的实例表示,包括类别、框和掩码。在背景建模阶段,该方法基于实例的运动信息构建实例级背景模型,如果一个物体是静止的,我们的算法将它添加到背景模型中。在前景实例选择阶段,当新帧到来时,该算法选择全实例检测器的输出。如果实例符合图2 (c)中的规则2,则它是最终二进制掩码中的前景。得益于对实例信息的充分利用,我们的实例级BGS方法在阴影、相机抖动、夜景等复杂场景下表现更好。ZBS很少会错误地将噪声背景检测为前景对象。由于检测器的特点,该方法可以检测到现实世界中的大部分类别,并且可以检测到预定义类别之外的未被发现的前景类别,ZBS的F-Measure比最先进的无监督方法提高了4.70%。

我们的主要贡献如下:

•我们提出了一种新颖的背景减法框架,该框架具有实例级背景模型;

•所提出的框架使用零镜头目标检测模型来获得更通用和广义的基于深度学习的无监督BGS算法;

•我们的方法在CDnet 2014数据集上的所有无监督BGS方法中达到了最先进的水平。

2. 相关工作

2.1. 基于深度学习的监督方法

深度学习方法由于能够从训练数据中学习高级表示而被广泛应用于BGS。Braham等提出了第一个使用深度学习进行背景减法的工作。FgSegNet是一个专注于学习多尺度特征进行前景分割的代表作,CascadeCNN采用级联结构综合基本CNN模型和多尺度CNN模型。

Zhao等提出了一种端到端的两级深度CNN来重建背景,并将前景与背景联合分离。Chen et al和Sakkos et al分别使用ConvLSTM和3DCNN处理时空信息,此外,Siamese神经网络、生成对抗网络(GAN)和自编码器(AE)也被用于BGS。最近,在有限的数据上对未看过的视频进行训练,证明了更好的通用性。然而,这些模型只在包含少数类别和场景的数据集上进行训练,这限制了它们处理更复杂的现实世界检测和分割任务的能力。

2.2. 语义背景减法

SemanticBGS是第一个利用对象级语义来改进背景减法的运动检测框架。通过结合语义分割和背景减法算法,显著降低误报检测,有效识别伪装前景目标。RTSS并行进行前景检测和语义分割,利用像素的语义概率来指导背景模型的构建和更新,该方法实现了语义背景的实时减法。RTSBS采用了类似的方法,提高了性能,实现了每秒25帧的实时语义背景减法算法。

尽管语义背景减法已经取得了很大的进步,但从根本上讲,它仍然是像素级背景模型。所有这些语义BGS方法都需要预先定义的前台类列表,这需要专业知识,并为在各种场景中的实现带来挑战。此外,语义分割网络的类别数量有限(最多150个类别)阻碍了它们在开放词汇表环境中检测移动前景的能力,这在当今环境中变得越来越重要。所提出的ZBS构建了一个实例级后台模型,能够检测大多数真实世界的类别,而不需要预定义的前台类,因此提供了更大的实用性。

2.3. 零镜头物体检测

在深度学习时代,监督学习在许多任务上都取得了出色的表现,但不得不使用太多的训练数据。此外,这些方法不能对训练数据集注释之外的类别对象进行分类或检测。为了解决这个问题,提出了zero-shot learning,希望对训练过程中从未见过的类别图像进行分类,在此基础上开发的零目标检测旨在检测训练词汇表之外的目标。

早期的工作研究了利用属性将类别编码为二进制属性的向量和学习标签嵌入。深度学习的主要解决方案是用类名的语言嵌入取代最后一个分类层(例如GloV e)。Rahman等和Li等通过引入外部文本信息分类器嵌入来改进。ViLD将语言嵌入升级为CLIP,并从CLIP图像特征中提取区域特征。Detic也采用CLIP作为分类器,并使用额外的图像级数据进行联合训练,极大地扩展了检测级任务的类别数量和性能,本文将Detic检测器用于BGS算法。

3.方法

3.1. 概述

ZBS是一种用于实际应用的新型无监督BGS算法,它是基于模型的零镜头目标检测,可以获得实例级背景模型。ZBS包括三个阶段:全实例检测、实例级后台建模和前景实例选择。图2说明了我们的方法的框架,首先,ZBS使用一个全实例检测模型来获取结构化实例表示。然后,通过实例的移动信息建立并维护实例级后台模型,最后,当有新的帧出现时,我们会根据背景模型从检测器输出中选择运动的前景,我们将结果转换为二进制掩码,以便与其他BGS方法进行比较。

3.2. 全实例检测

背景减法的目标是提取每一帧视频中所有运动物体作为前景,传统的无监督BGS方法依赖于像素级背景模型,这很难区分嘈杂的背景和前景对象,为了解决这个问题,我们提出了一个实例级后台模型。它利用实例检测器来定位图像中所有可能类别和所有位置的对象,并将原始图像像素转换为结构化的实例表示。直观地说,大多数现有的训练过的实例分割网络都可以使用,此外,训练数据集的类别适应大多数域适应的目标检测场景,然而,实例分割网络无法检测和分割训练数据集注释之外的类别对象。

近年来,随着自监督训练和基础模型的发展,提出了几种实用的零拍目标检测方法。这些方法可以检测几乎数千种类别的对象,而无需在应用场景上进行训练。因此,为了获得一种更通用、更一般化的深度学习背景建模方法,我们采用零拍目标检测方法Detic作为我们BGS方法的检测器。Detic可以检测21k个类别的对象,并分割对象的掩码。

与实例分割不同,我们称此过程为全实例检测,在全实例检测阶段后,视频帧It由零镜头检测器Z构造为实例表示Rt。该表示Rt包括实例盒bit和分段掩码mit,并带有类别标签cit,其中i是实例的id, t是视频的第t帧。

3.3. 实例级后台建模

基于全实例的检测结果,该算法应该区分哪些物体移动了,哪些物体没有移动。理想的实例级背景模型应该是所有固定对象实例的集合,它是前景实例选择的基础。我们将背景模型M定义为:

实例级背景模型M是静态实例的检测盒集合,bi、bj、bk为id = i、j、k的静态实例,值为该实例过去轨迹中所有盒坐标的平均值。它反映了哪些位置有固定实例,哪些位置是没有实例的背景。如图2 (b)所示,我们的方法利用初始帧获得初始实例级背景模型,并在后续帧中以一定的周期更新背景模型(本文中 T = 100)。具体算法如算法1所示。

实例级后台建模阶段有三个步骤,首先,该方法利用过去帧的检测器Z输出盒位获取每个实例的轨迹(轨迹通过SORT方法获得)。其次,ZBS计算实例对应轨迹内每个边界框的左上角和右下角坐标的平均值,记为bi。然后我们可以得到比特和比特的IoU的最小值,这意味着相对于整个轨迹的平均值,位置之间的最大移动。在我们的实现中,我们对轨迹IoU应用中值滤波器。这有助于减轻由物体遮挡引起的IoU的突变,表2中的实验表明,这种改进是有益的,最后,实例级后台模型的4更新策略如式(2)所示:

其中bit表示第t个图像帧中的第i个实例,Bi表示每个实例的所有框Bi的平均值。τmove是判断实例是否移动的阈值,如果它保持静止,将其放入背景模型M;否则,将其从背景模型M中移除。

实现细节 为了建立更鲁棒的背景模型,在实例级背景建模阶段,我们选择了更小的τconf1,这有助于将更多的平稳实例纳入背景模型M,称为 conf。

3.4. 前景实例选择

前景实例选择的关键是准确判断实例与背景模型相比是否移动了,物体遮挡是一个常见的挑战。当物体被遮挡时,它们后面的物体很容易被误判为移动,为了平衡对目标遮挡的灵敏度和鲁棒性,我们引入IoF (Intersection over Foreground)作为IoU (Intersection over Union)的补充,计算方法如式(3):

其中birec表示最近帧中的实例,bibg表示实例级后台模型M中的第i个实例。图3显示了IoF的工作原理,如果实例没有移动,但被遮挡,IoU会大幅下降,而IoF仍然保持较高的值,通过同时判断这两个指标,可以很好地确定某个实例是否为前景。

如算法1的前景实例选择阶段所示,每一帧当前帧的检测结果与实例级后台模型中包含的对象实例集相匹配。该方法使用IoU和IoF两个指标来确定实例是否可以用作前景,如果IoU和IoF都小于前景选择阈值τfore,则该实例是新的或已移动,应视为前景实例。相反,如果IoU或IoF中有一个大于阈值τ,则该实例不应被视为前景,前景实例选择规则可表示为式(4)。

其中Dt(x)为t帧中的第x个实例是否应为前景,F G为前景,BG为背景。Birec表示最近一帧中第i个实例的盒子,bibg表示实例级后台模型M中前景实例的框。

4. 实验

4.1. 数据集和评估指标

我们在CDnet 2014数据集上评估了所提方法的性能,CDnet 2014数据集是最著名的变化检测基准,包括53个视频序列和11个类别,对应不同的经典应用场景。数据集的主要类别包括恶劣天气、基线、相机抖动、动态背景、间歇物体运动、低帧率、夜间视频、泛倾斜缩放、阴影、热和湍流。手动标注的Ground Truth可用于视频序列中的每一帧,并告诉我们每个像素是属于背景还是前景。具体来说,在Ground Truth中,静态、阴影、非感兴趣区域(Non-ROI)、未知和移动像素分别被分配为灰度值0、50、85、170和255。我们选择召回(Re),精度(Pr)和5 F-measure (F M)来评估CDnet 2014数据集上的性能。我们将Static和Shadow像素作为负样本(背景),Moving像素作为正样本(前景),忽略Non-ROI和Unknown像素以保证指标的公平性。

4.2. 超参数敏感性分析

如前所述,我们的方法在使用前需要设置几个参数:全实例检测的阈值τconf,背景建模的阈值τmove,前景选择的阈值τfore。不同的参数适用于不同的情况,较大的τconf更适合于更直接的情况,大τ移动更适合于快速运动或低帧率场景,小τfore对摄像机抖动情况具有鲁棒性,不同参数设置下的性能如图4所示。在大多数情况下,这两个参数τmove、τfore的灵敏度较低,这两个超参数的变化对F-Measure的影响在 1%以内波动。当τfore = 1时,前景实例选择器将所有新实例都视为前景,因此精度和F-Measure都有较大的下降。τconf决定了零拍探测器的输出,这对后续两个阶段非常重要,不同的场景往往适用于不同的阈值,实验的通用参数为τconf = 0.6, τmove = 0.5, τfore = 0.8。

4.3. 定量结果

表1显示了我们的方法与其他BGS算法的比较,其中F-Measure是观察到的。这些算法可以分为监督算法和无监督算法两部分。大多数有监督算法,如FgSegNet和CascadeCNN,具有近乎完美的F-Measure,因为它们是用测试视频中的一些帧进行训练的。然而,由于这些方法缺乏泛化能力,应用于未见过的视频时,性能明显下降。未见视频中的FgSegNet仅达到0.3715 FMeasure。STPNet和BSUV -Net 2.0是专门为未看视频设计的监督算法,可以实现0.8左右的F-Measure。IUTIS-5是一种特殊的监督算法,它学习如何从数据集中组合各种非监督算法。

剩下的方法是无监督算法,自然可以处理看不见的视频,结果表明,该方法优于所有无监督算法。特别是,ZBS的性能比最先进的RT-SBS-v2高出4.70%。此外,在未见视频BSUV Net 2.0中,ZBS优于监督方法。当考虑每个类别的F-Measure时,我们的方法在11个类别中的7个类别中具有优势,例如摄像机抖动、间歇物体运动和夜间视频。然而,我们的方法不能很好地处理湍流,因为全实例检测模块的检测器在没有经过训练的情况下不能适应湍流场景下不自然的图像分布。

4.4. 消融实验

进行了消融实验,对消融组分进行逐一添加,测定消融效果,结果汇总在表2中,包括精密度、召回率和F-Measure。基线是直接使用全实例检测器的结果作为前景。在实例级背景建模阶段,我们只建立实例级背景模型,而不判断前景是否在运动,算法性能略有提高,优于基线。在前景选择阶段,算法利用背景模型判断前景是否运动,性能大大提高。此外,我们提出了三个模块来增强实例级后台模型。将它们逐个添加到算法中,充分展示了算法的性能较大增益和实例级后台模型的优势。

表2显示了简单的实例级背景和前景捕获了大多数潜在的移动对象,前者具有较高的查全率,但比像素级背景和前景的查全率略低。, conf提高了整体性能对象遮挡影响背景模型并使前景选择复杂化,此问题是实例级表示所特有的。我们提出了“IoU过滤器”和“IoF”来缓解这个问题,这两者都减少了误报,特别是“IoF”。

4.5. 更多的分析

视觉效果 图5显示了不同方法的可视化比较,它包括来自CDnet 2014数据集的六个具有挑战性的场景。在“高速公路”场景中,主要的挑战是汽车的影子和随风移动的树枝。由于采用实例级前景检测,该方法对噪声背景区域具有较强的鲁棒性。在“林荫大道”场景中,受摄像机抖动的影响,其他BGS方法产生了许多假阳性。然而,由于采用实例级背景模型,我们的方法对相机抖动具有鲁棒性。在“船”场景中,由于水波纹,GMM和SuBSENSE产生了许多假阳性,ZBS可以在背景干扰下提取清晰的检测结果。在含有物体间歇运动的“沙发”场景中,该方法在物体轮廓区域具有较好的分割效果,在“peopleInShade”场景中,ZBS在阴影区域表现出色。尽管在“continuousPan”场景中存在挑战,但我们的方法仍然是健壮的,这些结果突出了我们的实例级基于背景的ZBS的优点。

运行时的效率 实现实时性能对BGS算法至关重要,ZBS的主要耗时方面集中在第一阶段,这涉及到对零镜头目标检测模型的预训练。我们已经用c++实现了后面的两个阶段,在一个A100 GPU上,FPS大约是20。在全实例检测阶段,我们采用并行计算,批大小为8,后续阶段依次处理结果,最终,我们在A100 GPU上实现了大约44帧/秒。

此外,采用TensorRT SDK、量化和跳帧可以进一步提高现实应用中的FPS,本文主要研究如何提高BGS (F-Measure)的精度,在未来的研究中,我们计划进一步提高其运行效率。

复杂场景下的性能 为了进一步证明ZBS在复杂场景下的良好性能,我们比较了Shadow类别中不同BGS方法的nbShadowError和FPR-S。FPR-S计算如式(5)所示,从表3可以看出,我们的方法对阴影像素的假阳性率极低。ZBS的性能远远优于所有无监督的BGS方法,并且优于最先进的监督方法FgSegNet。

其中nbShadowError是一个像素在Ground Truth中被标记为阴影但被检测为移动物体的次数,nbShadow是在Ground Truth中为一个视频或类别标记为阴影的像素总数。

5. 结论

本文提出了一种新的背景减法框架ZBS,该框架由三部分组成:全实例检测、实例级背景建模和前景实例选择。在CDnet 2014数据集上的实验验证了该算法的有效性,与其他BGS方法相比,我们的方法在所有无监督BGS方法中达到了最先进的性能,甚至超过了许多监督深度学习算法。ZBS检测大多数真实世界的类别没有预定义的前景类别,产生准确的前景边缘和减少错误检测,我们未来的工作是更有效地利用实例级信息,并压缩全实例检测器以提高效率。

展开阅读全文

页面更新:2024-04-30

标签:减法   实例   前景   背景   检测器   建模   物体   算法   模型   镜头   类别   方法

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top