实时运行,使用单NVIDIARTX2080TIGPU可以实现高清60fps和4K30fps的速度,这“让全世界“成为你的绿屏”抠图方法BackgroundMatting发布2.0版本,为用户提供更自然、更快速的实时背景替换效果。背景替换是电影特效的关键部分,广泛应用于视频会议Zoom、GoogleMeet、MicrosoftTeams等工具,除了增加娱乐性之外,背景更换还能加强隐私保护,尤其是当用户在视频会议中不愿意与他人分享自己的位置和周围环境等细节时。主要挑战:视频会议工具的用户通常无法访问绿屏或其他用于电影特效背景替换的物理条件.为了方便用户更换背景,研究人员相继开发了一系列的抠图方法。今年4月,华盛顿大学的研究人员提出了背景抠图方法,无需在绿屏前拍摄,即可完美变换视频背景,让整个世界成为你的绿屏。然而,这项研究不能实时运行,只能处理低分辨率(512×512)和低帧率的背景替换,还有很多需要改进的地方。八个月后,研究人员推出了背景抠图的2.0版,他们称这是一种全自动、实时的高分辨率抠图方法,可在4k(3840×2160)和60fps下以30fps进行处理。帧率在高清(1920×1080)图像上达到了SOTA结果。先来看一些效果展示场景:非常自然流畅的背景替换。这个小家伙用雪景代替了他凌乱房间的背景。不过这种方法也有“rollover”,下图替换背景有明显的尖锐阴影(sharpshadow)。背景抠图2.0版有哪些改进?背景抠图2.0相比1.0有哪些技术改进?我们都知道,为高分辨率人类视频的实时抠图设计神经网络极具挑战性,尤其是当头发等细粒度细节尤为重要时。1.0版本只能在8fps的512×512分辨率下实现背景替换。在4K和高清等高分辨率图像上训练深度网络非常慢,并且需要大量内存。此外,它还需要大量具有高质量前景蒙版(alphamatte)的图像来实现泛化,但公开可用的数据集也很有限。收集具有大量手动制作的前景掩码的高质量数据集很困难,因此本研究希望在一系列具有不同特征的数据集上训练网络。为此,他们创建了两个数据集,VideoMatte240K和PhotoMatte13K/85,均包含高分辨率前景蒙版和使用色度键软件提取的前景层。研究人员首先在这些包含明显不同的人体姿势的更大的前景掩码数据集上训练网络,以学习稳健的先验知识,然后继续在手动制作的公开可用数据集上进行训练,以学习细粒度的细节。此外,为了设计一个能够实时处理高分辨率图像的网络,研究人员观察到图像中需要细粒度细化的区域相对较少。因此他们提出了一个基础网络来预测低分辨率下的前景掩膜和前景层,并得到一个误差预测图(以确定哪些图像区域需要高分辨率细化)。然后,细化网络将低分辨率结果和原始图像作为输入,并在选定区域产生高分辨率输出。结果表明,BackgroundMatting2.0在具有挑战性的真实视频和人物图像场景中实现了最先进的实时背景抠图结果。研究人员还将发布VideoMatte240K和PhotoMatte85数据集和模型实现代码。论文地址:https://arxiv.org/pdf/2012.07810.pdf项目主页:https://grail.cs.washington.edu/projects/background-matting-v2/dataset本研究使用多个数据集,包括新颖的和公开的研究人员创建的数据集。公共数据集Adob??eImageMatting(AIM)数据集提供了269个人类训练样本和11个测试样本,平均分辨率约为1000×1000。该研究还使用了Distinctions646数据集的一个仅包含人类的子集,包含362个训练样本和11个测试样本,平均分辨率约为1700×2000。这些数据集中的掩码都是手动创建的,因此质量很高。但由于训练样本数量少,无法学习多样化的人体姿势和高分辨率图像的精细细节,因此研究人员创建了两个新数据集。新数据集VideoMatte240K和PhotoMatte13K/85VideoMatte240K数据集:研究人员收集了484个高分辨率绿屏视频(384个4K分辨率视频,100个高清分辨率视频)并使用色度键工具Adob??eAfterEffects生成了240709个不同的前景蒙版和前景帧。PhotoMatte13K/85数据集:研究人员收集了13,665张在绿屏前使用工作室质量的照明和摄像机拍摄的图像,并通过色度键算法提取遮罩,并进行手动调整和错误修复。下图显示了这两个数据集的示例:方法给定图像I和捕获的背景B,所提出的方法能够预测前景蒙版α和前景F。'=αF+(1?α)B'(B'是新背景)。该方法不直接求解前景,而是求解前景残差F^R=F?I。然后通过将F^R与输入图像I相加来恢复F:F=max(min(F^R+I,1),0).研究人员发现,该公式改进了学习,并允许通过上采样将低分辨率前景残差应用于高分辨率输入图像。使用深度网络直接导致大量的计算和内存消耗,使得高分辨率图像抠图极具挑战性。如图4所示,人体掩码通常非常稀疏,其中大像素区域属于背景(α=0)或前景(α=1),只有少数区域包含更精细的细节(例如头发、眼镜、人轮廓)。因此,本研究并没有设计直接在高分辨率图像上运行的网络,而是提出了两个网络:一个在低分辨率图像上运行,另一个根据之前网络的误差预测图来选择图像块。在这些图块上以原始分辨率运行。该架构由基础网络G_base和细化网络G_refine组成。给定原始图像I和捕获的背景图像B,该方法首先通过因子c对图像I和B进行下采样,以获得I_c和B_c。然后基础网络G_base以I_c和B_c为输入预测粗粒度前景maskα_c、前景残差F^R_c、误差预测图E_c和隐藏特征H_c。然后细化网络G_refine在预测误差E_c较大的区域使用H_c、I和B对α_c和F^R_c进行细化,得到原始分辨率maskα和前景残差F^R。该模型是一个全卷积模型,可以处理任何尺寸和纵横比的图像。架构图。BaseNetwork该方法的基础网络是受DeepLabV3和DeepLabV3+启发的全卷积编解码器网络,由骨干网、ASPP和解码器三个主要模块组成。研究人员采用ResNet-50作为编码器骨干网络,可以用ResNet-101和MobileNetV2替代,以实现速度和质量之间的权衡。与DeepLabV3方法一样,该方法在骨干网络之后使用了一个ASPP(AtrousSpatialPyramidPooling)模块,其中包含多个空洞卷积滤波器,空洞率分别为3、6和9。解码器网络在每一步都使用双线性上采样,结合来自主干网络的残差连接(跳跃连接),并使用3×3卷积、批量归一化和ReLU激活函数(最后一层除外)。解码器网络输出粗粒度前景掩码α_c、前景残差F^R_c、误差预测图E_c和32通道隐藏特征H_c。H_c中包含的全局上下文将用于细化网络。细化网络细化网络的目标是减少冗余计算并恢复高分辨率抠图细节。基础网络对整个图像进行操作,而细化网络仅对基于误差预测图E_c选择的图像块进行操作。细化网络包括两个阶段:首先以原始分辨率的1/2进行细化,然后以全分辨率进行细化。在推理过程中,该方法改进了k个图像块,其中k可以预先设置或基于权衡图像质量和计算时间的阈值。实验本研究将该方法与两种基于三图的方法深度图像抠图、FBA抠图(FBA)和基于背景图像的方法背景抠图(BGM)进行比较。EvaluationResultsonSyntheticDatasets下面的表1展示了这些方法在不同数据集上的定量评估结果。可以看出,本研究提出的方法在所有数据集上都优于基于背景的BGM方法,但略逊于目前最优的trimap方法FBA。FBA需要手动仔细标记trimap,并且比所提出的方法更快。方法很慢。真实数据的评估结果该研究还比较了这些方法在真实数据上的性能。如下图所示,这种研究方法生成的结果在毛发和边缘方面更清晰、更详细。该研究邀请了40名参与者来评估这种方法和BGM生成的效果,结果如下表2所示。可以看出,这种方法相对于BGM有明显的提升。59%的参与者认为算法更好,而只有23%的参与者认为BGM更好。在4K和更高分辨率的样本中,75%的参与者认为这种方法更好。下面表3和表4的性能比较表明,这种方法比BGM更小但更快。该方法的参数数量仅为BGM的55.7%。但它可以通过单个NvidiaRTX2080TIGPU以1的批量大小实现HD60fps和4K30fps速度,可用于许多实时应用程序。相比之下,BGM只能以7.8fps的速度处理512×512分辨率的图像。用MobileNetV2替换该方法的骨干网后,其性能进一步提升,实现了HD100fps和4K45fps。实际使用研究人员将这种方法应用于两个场景,Zoom视频会议和抠图。在Zoom实现中,研究人员构建了一个Zoom插件,拦截摄像头输入,收集无人的背景图像,然后进行实时视频抠图和合成,并在Zoom会议中展示结果。研究人员使用720p网络摄像头在Linux中对其进行了测试,效果非常好。另外,研究人员将这种方法的效果与绿幕色度抠图进行了对比,发现在光线不均匀的环境下,这种方法的效果要好于为绿屏设计的效果,如下图所示:
