paper:2303.02835
GitHub:PengtaoJiang/TSP6K: The official PyTorch code for "Traffic Scene Parsing through the TSP6K Dataset".
目录
摘要
1、介绍
2、相关工作
2.1 场景解析数据集
2.2 场景解析方法
2.3 实例分割方法
2.4 无监督领域自适应方法
3、数据集与分析
3.1 数据收集
3.2 数据标注
3.3 数据划分
3.4 数据分析
4、评估分割方法
4.1 实现细节
4.2 性能分析
5、评估实例分割方法
6、无监督领域适应(UDA)
7、场景解析方法
7.1 整体框架
7.2 区域精炼模块
8、实验
8.1 消融实验
8.2 对比实验
8.3 交通流分析
摘要
交通场景感知是计算机视觉中的一个关键任务,对于实现智能城市至关重要。到目前为止,大多数现有数据集都集中在自动驾驶场景上。我们观察到,在这些驾驶数据集上训练的模型通常在交通监控场景中表现不佳。然而,在提高交通监控场景理解方面的努力较少,主要是由于缺乏专门的数据集。为了填补这一空白,我们引入了一个专门的交通监控数据集,命名为TSP6K,包含来自交通监控场景的图像,并且具有高质量的像素级和实例级注释。TSP6K数据集捕捉了比现有驾驶场景更为拥挤的交通场景,交通参与者数量是现有驾驶场景的几倍。我们对该数据集进行了详细分析,并全面评估了先前流行的场景解析方法、实例分割方法和无监督领域自适应方法。此外,考虑到实例大小差异较大,我们提出了一种细节细化解码器用于场景解析,能够恢复交通场景中不同语义区域的细节,得益于所提出的TSP6K数据集。实验表明,该方法在解析交通监控场景方面具有有效性。
1、介绍
作为计算机视觉中的经典且重要任务,场景解析任务旨在从给定图像中分割出语义物体和物质。如今,随着大规模场景理解数据集的出现,例如ADE20K [101]和COCO-Stuff [5],极大地推动了场景理解算法的发展 [21, 43, 52, 57, 83, 98, 100]。许多应用场景,如机器人导航 [18, 42] 和医学诊断 [62],都受益于先进的场景理解算法。作为场景理解的一个重要案例,交通场景理解侧重于理解城市街道场景,其中最常出现的实例是人类、车辆和交通标志。迄今为止,已经有许多大规模的公开交通场景数据集,如KITTI [25]、Cityscapes [17] 和 BDD100K [87]。得益于这些精细标注的数据集,近年来的场景理解方法 [13, 30, 49, 51, 66, 78, 94, 102] 在分割性能上也得到了显著提升。
这些交通数据集的特点是,它们大多数都是从驾驶平台(如驾驶汽车)收集的,因此更适合自动驾驶场景。然而,对于交通监控场景的关注较少。交通监控场景通常由高挂在街道上的拍摄平台(4.5-6米)捕捉,提供了丰富的交通流量信息 [44, 58]。高挂拍摄平台通常能够观察到比驾驶平台更多的交通参与者,特别是在交叉路口。我们观察到,在这些现有的交通数据集上训练的深度学习模型,在解析交通监控场景时往往表现不佳,可能是因为领域差距的原因。尽管交通监控场景的分析对许多应用(如交通流量分析 [44, 58])具有需求,但根据我们所知,目前并没有可用的交通场景数据集来促进这类研究。
为了促进交通监控场景解析的研究,我们构建了一个特定的交通场景分析数据集,并在本文中提出。具体来说,我们从不同位置的城市道路拍摄平台精心收集了大量交通图像。为了保持数据集的多样性,我们收集了来自不同时间段的数百个交通场景的图像。为了在这个数据集上进行语义分割和实例分割,我们要求标注员对这些图像进行精细的语义和实例级标注。由于标注工作需要大量劳动力,我们最终获得了6,000张精细标注的交通图像。在图1中,我们展示了一些交通图像及其对应的语义级和实例级标签。
利用这些精细标注的标签,我们对交通监控场景进行了全面研究。该数据集的特点总结如下:1)最大的交通监控数据集,2)更为拥挤的场景,3)实例大小的广泛差异,4)驾驶场景和监控场景之间的巨大领域差距。基于所提出的TSP6K数据集,我们评估了几种经典的场景解析方法、实例分割方法和无监督领域自适应方法。我们展示并分析了不同方法在所提出的TSP6K数据集上的表现。
此外,我们还提出了一种细节细化解码器,用于在TSP6K上进行图像分割。该细节细化解码器利用编码器-解码器结构,并通过区域细化模块来细化高分辨率特征。区域细化模块利用注意力机制,计算像素与每个区域标记之间的注意力。该注意力进一步用于细化不同语义区域中像素之间的关系。以SegNeXt [27]的骨干网络为编码器,我们提出的细节细化解码器方法在TSP6K验证集上达到了75.8%的mIoU分数和58.4%的iIoU分数,比最先进的SegNeXt方法分别提高了1.2%和1.1%。总结来说,我们的主要贡献如下:
- 我们提出了一个专门的交通数据集,用于研究交通监控场景解析任务,命名为TSP6K,该数据集收集了来自城市道路拍摄平台的多个场景图像,并提供了语义标签和实例标签的像素级标注。
- 基于TSP6K数据集,我们评估了现有场景解析方法和实例分割方法在交通监控场景中的表现。此外,TSP6K数据集还可以作为评估无监督领域自适应方法在交通监控应用中的额外补充。
- 为了改善交通监控场景解析,我们提出了一种细节细化解码器,学习区域标记以细化高分辨率特征中的不同区域。实验验证了所提出的解码器的有效性。
2、相关工作
2.1 场景解析数据集
场景解析数据集提供了全像素级的注释,用于训练和评估场景解析算法。作为早期的数据集,PASCAL VOC 数据集 [22] 在一个挑战中提出,旨在解析每张图像中的 20 个精心挑选的类。后来,社区提出了更复杂的数据集,涵盖更多类别,如 COCO [54] 和 ADE20K [101]。这些数据集的场景涵盖了广泛的内容。与这些数据集不同,还有一些数据集专注于特定场景,例如交通场景。现在存在许多交通场景解析数据集 [19, 39, 60, 64, 72, 90, 91],如 KITTI [25]、Cityscapes [17]、ACDC [65] 和 BDD100K [87]。这些交通解析数据集对交通场景中最常见的类进行标注,如交通标志、骑行者和车辆等。基于这些精细标注的交通数据集,基于神经网络的方法已经在交通场景解析中取得了巨大的成功。
尽管以上数据集取得了成功,我们发现这些数据集中的交通场景大多来自驾驶平台。由这些数据集训练的模型在交通监控场景上的表现通常较差,而交通监控场景在交通流量分析中起着重要作用。此外,监控场景通常捕获的交通参与者比驾驶场景更多。我们提出的 TSP6K 数据集不同于驾驶数据集,旨在提高场景解析模型在监控场景中的表现,作为现有交通数据集的补充。值得注意的是,Kirillov 等人 [46] 提出了一个大型分割数据集 SA-1B,包含 10 亿个标注。SA-1B 也包含一些监控交通图像。然而,SA-1B 中的分割标注都是类无关的,而我们数据集中的分割标注都是类已知的。
2.2 场景解析方法
卷积神经网络极大促进了场景解析方法的发展。通常,Long 等人 [57] 首先提出了一个全卷积网络(FCN),该网络生成密集的场景解析预测。随后,一些方法,如流行的 DeepLab [9, 10] 和 PSPNet [98],通过更大的感受野和多尺度特征,显著提升了性能。此外,还有一些方法 [3, 12, 13, 52] 利用编码器-解码器结构,通过高分辨率特征细化低分辨率粗略预测。除了简单的卷积操作,研究人员 [36, 41, 89, 99] 发现注意力机制 [29] 能显著提高场景解析网络的表现,因为它们能有效建模长距离的依赖关系。此外,还有一些工作 [79, 85, 86, 95, 97] 探索实时场景解析算法,利用自注意力机制以高效的方式进行处理。
最近,随着 Transformer 在图像识别中的成功引入 [20],研究人员开始尝试将 Transformer 应用于分割任务 [14, 15, 66, 83, 100]。有趣的是,近期的研究 [27, 28, 35] 表明,在场景解析任务中,卷积神经网络的表现优于基于 Transformer 的模型。在我们的数据集中,我们也观察到类似的结果。SegNeXt [27] 在我们的 TSP6K 数据集上表现最佳,并且使用的参数比其他方法更少。本文提出的方法同样采用了 SegNeXt 的骨干网络,但与其不同,我们设计了一个细化解码器,更适合处理高分辨率图像,而不是 SegNeXt 中使用的解码器。
2.3 实例分割方法
实例分割旨在对同一类别中的每个实例进行分割并区分开来。以前的实例分割方法大致可以分为两类:基于框的方法 [4, 7, 23, 31, 40, 55] 和无框方法 [68, 75, 76, 82]。基于框的方法首先检测目标物体的边界框,然后在框内区域执行二值分割。而无框方法直接为每个实例生成实例掩码,并同时对其进行分类。本文选择了每类方法中的几个,并在 TSP6K 数据集上进行了评估。
2.4 无监督领域自适应方法
无监督领域自适应 (UDA) 旨在将训练于一个领域(带有分割标签)的模型自适应到另一个领域(没有分割标签)。近年来,许多 UDA 方法 [33, 70, 73, 84] 为了解决领域间的差异而在场景解析中应运而生。这些方法主要分为两类:基于对抗训练的方法 [33, 34, 70, 71, 73, 74] 和基于自训练的方法 [47, 50, 59, 77, 93, 103, 104]。基于对抗训练的方法试图对齐源领域和目标领域的特征表示或网络预测,而基于自训练的方法则为目标领域生成伪标签以训练分割网络。以前的 UDA 方法通常是通过将合成交通数据集(如 GTA5 [61] 或 SYNTHIA [63])适应到真实交通数据集(如 Cityscapes [17])来进行评估。本文评估了 UDA 方法将合成和真实驾驶场景(SYNTHIA [63]、Cityscapes [17])适应到监控场景(TSP6K)中的效果。
3、数据集与分析
3.1 数据收集
研究交通监控场景时,一个重要的方面是数据。一旦我们为监控场景构建了数据集,研究人员就可以基于这些新颖的数据特征来改进场景解析的结果。为了促进这项研究,我们计划通过从不同街道上的高空拍摄平台收集大量图像,专门为交通监控场景构建一个数据集。为了确保数据的多样性,我们高度考虑了收集地点和天气条件。具体而言,我们从约10个中国省份收集了超过600个场景的交通图像。如图2(b)所示,我们展示了场景和图像的地理分布。由于交叉口和人行横道是交通场景的重要组成部分,且是拥堵和事故的高发区域,因此我们大部分收集的交通场景都包含了交叉口。此外,为了考虑天气的多样性,我们选择了不同天气条件下的交通图像,包括晴天、阴天、雨天、雾霾和雪天。因此,我们最终选择了6,000张交通图像。
3.2 数据标注
在收集数据后,我们开始对交通图像进行标注。完整的标注类别如图2(a)所示。
具体而言,我们标注了21个类别,其中大多数类别与Cityscapes [17] 中的类别定义相同。我们在数据集中移除了未见类别“火车”,并添加了三个新类别。由于道路指示对于理解监控场景至关重要,我们要求标注员为交通标示类别标注三类指示信息,分别为人行道、行驶指示和车道。此外,我们还为每个交通参与者标注了实例掩码。与Cityscapes [17] 的标注策略类似,交通图像的标注也是从背景到前景进行的。为了确保标签质量,我们设计了一个双重检查机制。具体来说,图像被分成30组,每组包含200张图像。当标注员完成标注后,我们会挑选其中30%的200张图像进行检查,查看是否存在类别标注错误。如果这些图像中存在类别标注错误,我们会要求标注员检查该组内的所有图像,直到所有图像的类别标注没有错误。
3.3 数据划分
数据集按照5:2:3的比例划分为训练集、验证集和测试集。从不同场景收集的图像被随机分配到不同的数据集中。最终,训练集、验证集和测试集分别包含2,999张、1,207张和1,794张图像。
3.4 数据分析
我们将 TSP6K 数据集与先前的交通数据集进行了比较,主要从场景类型、实例密度、实例大小的尺度差异和领域差异几个方面进行对比。在表1和表2中,我们列出了不同交通数据集的对比。
TSP6K 的特点可以总结如下:
-
最大的交通监控数据集:据我们所知,大多数流行的交通数据集都集中在驾驶场景上,这些数据集的图像是从驾驶平台收集的。也有一些数据集 [45, 67] 包含交通监控场景,见表1。然而,这些数据集主要关注交通参与者的追踪,并且只提供类别无关的边界框标注。与它们不同,我们关注交通监控场景解析,并提供语义和实例标注。与现有的交通监控数据集相比,TSP6K 包含更多的标注语义类别、支持实例分割、拥有更大的图像分辨率和更多的图像数量。
-
更为拥挤的场景:TSP6K 数据集的一个重要特点是,其图像比驾驶数据集中的图像更拥挤。由于大多数交通场景拍摄自交叉口,路面上的实例密度远高于驾驶场景。表1中可以看出,驾驶数据集中的图像很少包含超过50个实例的场景。相比之下,TSP6K 数据集包含大量超过50个实例的图像,占训练集和验证集图像的约30%。此外,表2显示,TSP6K 中平均每张图像包含10.7个人类和31.3辆车辆,远超其他驾驶数据集的数值。
-
实例大小的广泛变化:对于监控场景,前后实例的尺度差异非常大。如图3(b)所示,TSP6K 的实例大小跨度比 Cityscapes 更广。此外,TSP6K 还包含了比 Cityscapes 更多的小型交通实例。高空平台通常拥有比驾驶平台更广阔的视野,因此它能够捕捉到更多远处的内容。实例大小的巨大差异展示了真实的交通场景。
-
较大的领域差异:TSP6K 与 Cityscapes/BDD100K 存在较大的领域差异。在驾驶数据集上训练的模型在监控场景上的表现通常较差。此外,针对从 SYNTHIA 到 Cityscapes 的 UDA,HRDA [38] 在 Cityscapes 上的 mIoU 分数为65.8%。然而,HRDA 在 TSP6K 上的 mIoU 仅为45.4%,这也表明了驾驶场景与监控场景之间的巨大领域差异。提供一个高质量的人类标注数据集用于分析不同监控场景方法的有效性,将对整个社区具有重要意义。这将帮助研究人员交叉验证分割方法、实例分割方法以及无监督分割方法在交通监控场景中的有效性。
4、评估分割方法
4.1 实现细节
我们基于一个流行的代码库 mmsegmentation[16] 运行所有的场景解析方法。所有模型都在8块 NVIDIA A100 GPU 的节点上进行训练。对于基于 CNN 的方法,输入尺寸设置为 769×769;对于基于 Transformer 的方法,输入尺寸设置为 1024×1024。我们训练所有方法 160,000 次迭代,批处理大小为 16。由于 SETR[100] 占用较大的 GPU 内存,输入尺寸设置为 769×769,批处理大小设置为 8。此外,我们使用 mmsegmentation[16] 中的默认数据增强。我们使用 mIoU[57] 指标来评估场景解析方法的性能。正如 [17] 中所提到的,mIoU 指标对较大物体的实例有偏向。然而,监控交通场景中充满了小型交通参与者。为了更好地评估交通参与者的实例,我们采用了覆盖所有包含实例的类别的 iIoU 指标,参考了 [17] 中的做法。
4.2 性能分析
不同方法的评估结果可以在表 3 中找到。场景解析方法大致可以分为几组。以下是我们主要讨论使用编码器-解码器结构、自注意力机制和 Transformer 结构的方法。
-
编码器-解码器结构: 基于编码器-解码器结构的方法利用高分辨率的低级特征来细化分割图的细节。UperNet[80] 和 DeepLabv3+[12] 都将编码器-解码器结构应用于分割网络。与 DeepLabv3[11] 相比,DeepLabv3+[12] 使用高分辨率特征,能够将分割结果提高超过 0.6% 的 mIoU 和 1% 的 iIoU。我们观察到编码器-解码器结构对于小物体分割非常有效,iIoU 分数提高了很大幅度。
-
自注意力机制: 自注意力机制广泛应用于场景解析方法。在评估的这些方法中,EncNet[92]、DANet[24]、EMANet[48] 和 CCNet[41] 都使用了不同种类的自注意力机制。大多数方法都能获得更强大的解码器,这能够进一步提高 SegNeXt 的性能,后者比 Hamburger 解码器[26] 更为优秀。
5、评估实例分割方法
我们为 TSP6K 中的每张交通图像提供了额外的实例注释,可以用于评估实例分割方法在分割和分类交通参与者(如人类和车辆)方面的性能。交通参与者的类别如下:行人、骑行者、汽车、卡车、公交车、摩托车和自行车。我们评估了几种经典的实例分割方法,包括 YOLACT[4]、Mask RCNN[31]、SOLO[75]、SOLOv2[76]、QueryInst[23] 和 Mask2Former[14]。所有上述方法都是基于公开可用的代码库 mmdetection[8] 进行的。表 4 中报告了平均精度(AP)指标。
性能分析: 在评估的方法中,QueryInst[23] 的性能优于其他方法,达到了最佳的 7.4% AP 分数。较差的性能表明现有的方法在小实例分割方面仍然存在困难。此外,我们观察到基于 ResNet-50 的 Mask-RCNN 在 Cityscapes 数据集上达到了 40.9% 的框 AP 和 36.4% 的掩模 AP,这超过了在 TSP6K 上训练的模型 10% 以上的 AP。性能差异表明,在 TSP6K 上进行实例分割仍然是一个巨大的挑战。我们希望额外的实例注释能够帮助社区改进实例分割方法,在监控场景中更好地分割交通参与者。
6、无监督领域适应(UDA)
近年来,场景解析的无监督领域适应(UDA)方法得到了广泛研究。然而,大多数 UDA 方法都集中于将合成驾驶场景适应到真实驾驶场景。得益于所提出的 TSP6K 数据集,我们可以研究将驾驶场景适应到交通监控场景的 UDA 方法。具体来说,我们进行了将 SYNTHIA [63] 和 Cityscapes [17] 数据集分别适应到 TSP6K 数据集的 UDA 实验。我们选择了几种经典的 UDA 方法进行评估,包括 ADVENT [73]、DA-SAC[2]、SePiCo [81]、DAFormer [37] 和 HRDA [38]。实验结果见表 5。需要注意的是,我们只统计并平均源领域和目标领域中公共类别的结果。
性能分析: 我们建立了一个基准模型,该模型在源领域上训练 DeepLab-v2 [10],并直接在目标领域进行推理。与基准模型相比,所有评估的 UDA 方法都大幅度超越了基准。我们可以观察到,最近的基于 Transformer 的 UDA 方法相比于基于 CNN 的 UDA 方法表现更好。尽管如此,UDA 方法的最佳表现仍然远逊于完全监督的方法(54.1% 对比 72.4%)。此外,从 Cityscapes 到 TSP6K 的 UDA 方法比从 SYNTHIA 到 TSP6K 的 UDA 方法表现要好得多。这个事实表明,现有的驾驶数据集能够促进交通监控场景的理解。我们希望所提出的数据集能促进 UDA 方法在交通监控场景解析任务中的发展。
7、场景解析方法
交通监控场景通常捕捉到比驾驶场景更多的交通内容,而且不同语义区域的尺度和形状差异更大。此外,小物体和背景物体占据了很大比例。这些情况使得准确解析场景具有挑战性。为了适应交通监控场景,我们提出了一种细节精炼解码器(Detail Refining Decoder, DRD)。我们解码器的设计原则有两个方面。
首先,由于来自骨干网络的最后特征的空间分辨率非常低,基于低分辨率特征构建解码器通常会生成粗糙的解析结果,因此会严重影响小物体的解析。正如一些先前的工作[53, 68, 75]所验证的那样,低级的高分辨率特征对于分割小物体非常有帮助。因此,我们采用了编码器-解码器结构,将低分辨率和高分辨率特征融合,以提高小物体的解析能力。其次,自注意力机制是编码场景解析空间信息的高效方法。然而,直接将自注意力机制应用于高分辨率特征会消耗大量计算资源,尤其是在处理高分辨率的交通场景图像时。受[14]的启发,我们提出引入多个区域 token ,并在每个区域token 和高分辨率特征的每个 token 之间建立成对的相关性。
7.1 整体框架
我们基于第4节总结的宝贵经验,构建了适用于交通监控场景的场景解析网络。首先,我们采用在SegNeXt [27]中提出的强大编码器,利用其在TSP6K数据集上的低计算成本和良好效果。然后,我们在该编码器上构建了一个细节精炼解码器(DRD)。细节精炼解码器的框架如图4所示,包含两个部分。
低级特征(8x下采样)被输入到ASPP。
ASPP的输出被分为两部分:一部分进入交叉注意力模块,另一部分进入矩阵乘法模块。
在交叉注意力模块中,使用
、
和
进行注意力操作。
从交叉注意力模块输出的特征通过FFN处理。
处理过的特征与矩阵乘法模块的特征结合,进行乘法操作。
最终的特征被输入到分割头,生成分割图。
第一部分,我们遵循DeepLabv3+ [12] 的解码器设计,生成精细级别的特征图。ASPP模块直接添加到编码器中。需要注意的是,我们没有使用第二阶段的×4下采样特征,而是采用了第三阶段的×8下采样特征,正如[27]所建议的那样。第二部分是区域精炼模块。
7.2 区域精炼模块
区域精炼模块旨在精炼交通图像中的不同语义区域。形式上,设 表示解码器第一部分的平展特征,其中 H、W 和 C 分别表示高度、宽度和通道数。设
表示 N 个可学习的区域 token,每个 token 是一个 C 维向量。将平展特征 F 和可学习的区域 token R 分别传入三个线性层,以生成查询、键和值,如下所示:
其中 是线性层,
,
,
。
然后,我们计算 F 和 R 之间的多头交叉注意力,公式如下:
其中 是结果的区域嵌入。然后,区域嵌入将传递到前馈网络,公式如下:
其中 是前馈网络的输出。这里,按照[69],只有区域令牌
被传送到前馈块以提高效率。
接下来, 和 F 会被传送到两个线性层,以生成一组新的查询和键,如下所示:
我们通过矩阵乘法计算 和
之间的注意力图:
其中 表示 N 个注意力图,每个注意力图与一个语义区域相关联。得到区域注意力图后,我们通过广播乘法将 A和 F结合,公式如下:
其中 是输出。最后,S 被转置并重塑为
,然后传递给卷积层以生成最终的分割图。
8、实验
8.1 消融实验
区域token和头的数量。首先,我们研究了token和头的数量对性能的影响。如表6所示,使用5个区域token而不是1个区域token可以提高0.6%的mIoU得分和1.2%的iIoU得分。这一事实表明,区域token的数量在解析交通参与者,特别是小物体的解析上起到了重要作用。当进一步增加区域token的数量时,我们几乎没有观察到性能提升,这表明5个区域token已经足够用于语义区域的精细化。除此之外,我们还尝试增加注意力头的数量。可以看出,增加更多的头并不会带来性能提升。为了让读者更好地理解区域token,我们将不同token的注意力图进行了可视化,如图5所示。可以看到,不同的token负责不同的语义区域。
区域token与类别token的对比。在细节精细解码器的设计中,我们使用区域token来精细化特定的语义区域。在这里,有人可能会提出一个问题:“如果我们像原始Transformer那样使用类别token,性能会如何?”我们进行了一项实验,学习了21个类别token,每个类别token对应一个类别。最终,连接后的特征被送入一个具有21个组的深度卷积层中。当使用类别token时,我们在验证集上可以得到75.2%的mIoU得分和57.1%的iIoU得分。与类别token相比,使用5个区域token的解码器可以获得75.8%的mIoU得分和58.4%的iIoU得分,效果更好。此外,当数据集中的类别数量较多时,类别token会消耗较高的计算成本。相比之下,使用区域token更加灵活,因为当类别数量增加时,不需要调整区域token的数量。
编码器-解码器结构的重要性。在论文的第4.2节中,我们分析了编码器-解码器结构对于小物体解析的重要性。因此,我们将编码器-解码器结构应用到我们的分割网络中,以利用高分辨率的低级特征。如果没有编码器-解码器结构,即直接将区域精细化模块连接到编码器,mIoU和iIoU得分分别下降了0.7%和1.3%。这一实验表明,高分辨率的低级特征有助于交通参与者的解析。因此,编码器-解码器结构对场景解析至关重要。
8.2 对比实验
在对细节精细解码器进行基本检查后,我们将所提方法与其他方法在TSP6K数据集上的结果进行了比较。表3列出了不同方法的性能。可以看出,我们的方法优于所有之前的方法,在两个指标上都达到了最佳结果。评估结果证明了所提解码器在解析交通场景方面的有效性。此外,我们还提供了一些定性结果,如图6所示进行视觉比较。我们可以看到,我们的方法生成的结果比CCNet [41]和SegNeXt [27]更为清晰。
8.3 交通流分析
监控场景解析模型的一个潜在应用场景是分析交通流量。一旦我们从经过良好训练的模型中获得场景解析结果,我们就尝试利用这些结果来计算交通流量。我们的解决方案非常简单。我们首先计算交通参与者(人类和车辆)的面积 和道路的面积
。然后,可以通过
来大致计算人群密度。如图7所示,展示了TSP6K验证集中不同交通图像的拥堵率。拥堵率越高,交通流量越大。未来的交通参与者可以根据当前的拥堵率来安排出行计划。