摘要:
对于城市地区的自动驾驶车辆来说,行人无疑是最安全的道路使用者之一。在本文中,我们解决了行人联合检测和识别32个行人属性的问题。这些包括视觉外观和行为,也包括道路交叉口的预测,这是一个主要的安全问题。为此,我们引入了一个依赖于复合领域框架的多任务学习(MTL)模型,有效地实现了这两个目标。每个字段对行人实例进行空间定位,并对其进行属性预测。这个公式自然地利用了空间上下文,使它非常适合低分辨率的场景,如自动驾驶。通过增加共同学习的属性的数量,我们突出了一个与梯度尺度相关的问题,这在具有大量任务的MTL中出现。我们通过将来自不同目标函数的梯度归一化来解决这个问题,这些函数在向后传递时在网络架构的分叉处连接,称为分叉归一化。在JAAD上进行了实验验证,该数据集为自动驾驶车辆的行人分析提供了大量的属性,并显示了有竞争力的检测和属性识别结果,以及更稳定的MTL训练。
索引术语——自动驾驶汽车,计算机视觉,深度学习,多任务学习,视觉场景理解。
I. INTRODUCTION
尽管自动驾驶汽车已经在[4]、[14]、[31]高速公路上成功地实现了自动驾驶,但城市地区和城市仍然是一个挑战,因为在情况和参与者方面存在着更高程度的多样性。在这种情况下,行人可以说是需要考虑的最重要的类别之一,因为他们比车辆更灵活,更难以预测。作为易受伤害的道路使用者(VRUs)的一部分,他们最近受到社区[2]、[19]、[50]、[54]的更多关注,而这些对道路安全至关重要。
在自动驾驶车辆的背景下,在一些数据集[46]、[47]上有很多关于行人的线索(例如,过马路的意图、与司机的眼神接触、沟通的手势、对行人外观的描述)。人的属性已经被证明是有效的中间特征,可以结合其他任务来改进结果[60],[63],[72]或学习更多的通用表示[12],[16],[33]。它为多任务学习(MTL)[9]开辟了道路[71],利用这些属性之间的共性,并通过共享属性之间的计算资源来满足现实世界自动驾驶汽车严格的时间和内存需求。
而,同时学习大量任务或使用异构注释进行学习是困难的,其中每个示例仅为任务[28]的一个子集标记。之前的大多数研究都是针对自主车辆环境[47],[48],[65],[67]的属性识别,这些研究只学习了有限数量的属性,忽略了MTL的一些好处。此外,它们通常直接使用groundtruth行人边界框作为输入,然后依赖于真实应用程序中先前的行人检测器。假设有一个完美的探测器,这样的结果是乐观的。
在本文中,我们首先提出了一种端到端的MTL方法,基于自底向上复合字段[30],对所有行人进行统一的行人检测和属性识别,如图1所示。现场形式主义已经被证明是有效的城市场景,特别是在低分辨率,这是经常的情况下行人图像从车辆。联合执行检测和属性识别应该比前面工作中隐含的两级管道更具计算效率,并使整个感知步骤的评估更能代表对系统的理解。其次,我们大量增加属性的数量,以获得对行人信息最丰富、最完整的描述,并分析模型在将MTL缩放为大量任务时的行为。在这个场景中,我们强调了一个合并来自不同任务的梯度的问题,并提出了fork-normalization,一个简单而有效的解决方案来处理这个问题,并通过在反向传播期间对梯度进行归一化来改进训练。最后,我们在自动驾驶(JAAD)数据集上实验验证了我们的发现,这是一个在自动驾驶车辆上下文中围绕行人设计的数据集。
2. 相关工作
a)车辆行人分析:了解行人在车辆周围的行为是城市安全的一个重要里程碑[40],[50],[54]。其中一个关键的交互作用是过马路[48],[56],[66],最近几个大型数据集已经被发布,以支持数据驱动的方法[37],[46],[47]。轨迹预测是行人分析的另一个主要目标[1][15][29][46][53][55]。通过寻找短期目标[51]、[52],或者通过估计未来的框架并从它们中预测目标任务[7]、[10]、[22],替代方法共同解决了这两个问题。
b)人的属性:用一组属性[20],[21],[34]来描述人,[62]已经被证明可以产生可以很好地转移到其他任务[12],[33]和数据集[16]的特性。特别是,属性的表示经常用于人的重新识别[32][36][58]对于行人,属性直接影响[49]的检测性能。在自动驾驶车辆的背景下,已经学习了[44]、[47][65],并用于支持其他任务,如预测过马路[6]、[27]、[47]、[57]、[65]、[67]、检测[63]、[72]、分割[60]。特别是位姿[17],[18],[45],[68]。
c)多任务学习:MTL[9]的目标是在多个任务之间共享学习能力,从任务之间的迁移中获益[71],并减少计算需求。它已成功应用于驱动上下文[11]。然而,有大量任务的实验表明,在有足够的任务[28]时,性能的提升并不是系统性的,系统必须针对特定的目标目标进行优化,才能产生最佳的迁移[5]。另一个好处是,MTL可以帮助提供抗敌对攻击[41]的鲁棒性,这是目前自动驾驶汽车的一个重要安全问题。根据影响目标之间相互作用的程度,大多数作品可以分为两类。一些方法通过学习网络结构[39],[43]或任务之间的共享量[38],[42],[64],[69]来优化性能。另一些人使用任何给定的架构,并学习损失权重来平衡任务[13]、[23]、[25],或操纵梯度来减少负转移[61]、[70]。后两种方法与我们的方法特别相关,因为它们都从向量角度或规范的角度研究了梯度操作以确保学习期间的稳定性。直观上,梯度和的范数应该直接受到梯度之间角度的影响
本文主要研究在驱动环境中学习大量的任务,在驱动环境中,标签通常只对任务子集可用,并处理通用MTL体系结构的梯度比例问题。
III. JOINT PEDESTRIAN DETECTION AND ATTRIBUTE RECOGNITION
联合行人检测和属性识别
我们的模型是基于共同的多任务学习(MTL)网络体系结构,包括一个单一的共享中枢,每个任务都有一个单独的预测器。我们依赖于复合字段形式[30],其中model s输出的是一组空间特征图,编码场景中所有行人的位置和属性。在这里,检测和属性识别任务以一种统一的方法组合在一起,很自然地为MTL提供了支持。
我们考虑两种领域。标量字段F编码关于所有单元格的行人的全局属性,而不考虑它们的相对位置(参见图2 (b)的示例)。这些属性可以是二元的(例如,过马路的意图),分类的(例如,年龄类别),或者连续的(例如,身高)。对于分类属性,字段F具有与属性类一样多的通道,并且F(x, y)包含对所有这些类的预测。向量场F~指向相对于行人位置的空间位置~ F = (x F, yf),向量从它们各自的单元格指向所需的位置(举例来说,参见图2 (c))。本文中唯一的矢量属性是实例中心的位置,但该公式可用于任何局部属性,例如姿态关键点
结论:
在这项工作中,我们认为我们需要超越简单的检测,并检测尽可能多的属性。这些属性将有助于更好地预测行人的行为。虽然我们的工作将影响自动驾驶车辆的安全,但它也可以用于任何先进的驾驶辅助系统(ADAS)。及早预测行人是否会过马路可能会挽救许多人的生命。我们希望我们的工作将促进这一领域的更多研究。