2080Ti 也能跑起来,Transtreaming 用于实时流感知的自适应延迟感知Transformer !

科技   2024-10-20 09:00   上海  

点击下方卡片,关注「集智书童」公众号

点击加入👉「集智书童」交流群




想要了解更多:

前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF

行业技术方案👉AI安防、AI医疗、AI自动驾驶
AI模型部署落地实战👉「CUDA、TensorRT、NCNN、OpenVINO、MNN、ONNXRuntime以及地平线框架」

欢迎扫描上方二维码,加入「集智书童-知识星球」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!

免责声明
凡本公众号注明“来源:XXX(非集智书童)”的作品,均转载自其它媒体,版权归原作者所有,如有侵权请联系我们删除,谢谢。

实时目标检测对于许多实际应用的决策过程至关重要,例如自动驾驶中的碰撞避免和路径规划。本工作提出了一种创新的实时 streaming 感知方法 Transstreaming,旨在解决具有动态计算延迟的实时目标检测挑战。

Transstreaming 方法的核心创新在于其自适应延迟感知的 Transformer ,可同时预测多个未来帧,并选择与实际世界当前时间最匹配的输出,以补偿任何系统引起的计算延迟。

proposed 模型通过利用 Transformer 基础的方法,在单帧检测场景下超越了现有的最先进方法,实现了在各种设备上的高性能。它从强大的 V100 到简朴的 2080Ti 设备上都表现出了可靠的性能,在各平台上实现了感知准确度的最高水平。

与大多数在较弱设备上难以在单帧内完成计算的现有最先进方法不同,Transstreaming 满足了各种设备上严格的实时处理要求。实验结果强调了系统的适应性以及可能显著改进许多实际系统中安全性和可靠性的潜力,例如自动驾驶。

https://anonymous.4open.science/r/Transtreaming-7333

Introduction

现有的目标检测方法已经实现了在低延迟下的高性能。大多数研究关注于1)提高检测准确性[2, 14],或2)在性能和延迟之间进行权衡[1, 1]。近年来,尽管实时应用,如自动驾驶系统需要实时检测结果进行准确决策,研究行人开始关注实时目标检测。这一领域也被称为流式感知,因为它有可能改变作者实时互动和理解环境的方式。

对于实时目标检测,研究行人最初致力于提高非实时检测器的速度,以满足严格的实时要求,例如实现每秒60帧的帧率。然而,正如[23]指出的,无论检测器有多快,在实时在线场景中,当检测器处理最新观察时,周围移动车辆的世界状态已经改变。因此,检测结果始终比最新观察晚至少一帧。

为此,几项最近的研究通过包括预测能力改进了检测器模型。这些模型被训练来预测物体的未来位置,比如一帧或两帧 ahead,并在一个框内完成计算[23]。例如,假设视频流速一致,如30FPS,这表示计算必须在0.03秒内完成。为了模拟不同的车载速度,这些模型在不同视频流速下进行训练。例如,如果车辆以30km/h(或60km/h)行驶,视频流速调整为与速度匹配,分别设置为正常速度的1倍(或2倍)。尽管取得了这些进展,但上述文献存在几个限制:

  1. 检测器必须在受限于的时间范围内完成计算,这要求大多数模型(尤其是高性能模型)必须在具有强大GPU(如V100)的设备上运行。这限制了实时检测系统在具有大量计算资源的设备上的应用。
  2. 现有模型通常只能预测固定的一帧在未来,如一帧或两帧 ahead。然而,作者观察到由于工作负载的波动,计算延迟随着时间的推移可以显著变化。如图1所示,相同的检测器在不同的工作负载下处理不同帧时具有不同的计算延迟,范围从15ms到31ms。这种变化意味着模型可能在处理突发工作负载期间无法满足固定的实时约束,可能导致实时检测的显著失败。

为了解决上述限制,本工作提出了一种新颖的实时流式感知方法Transtreaming,该方法解决实时目标检测与动态计算延迟的挑战。本工作的贡献如下。

  • 这项工作通过将运行时信息集成到检测模型内部,同时预测多个帧并选择最合适的输出,以匹配实时世界的时间,实现了自适应延迟敏感的流式感知。
  • 在单帧实时检测领域,所提出的利用 Transformer 基础的方法超越了所有现有最先进技术(SOTA)技术。
  • 提出的模型在各种设备上的鲁棒性能,从具有高性能的V100到性能较低的2080Ti,它在所有平台上的感知性能最高,而大多数现有的SOTA方法在应用到更具有较低性能的设备时,当应用到单个帧的计算上,往往无法在单帧内完成计算,从而无法满足严格的实时处理要求。

Related Work

图像目标检测:深度学习的进化极大地改变了目标检测,卷积神经网络超过了传统方法。图像目标检测方法主要分为两阶段,例如R-CNN[1],通过结合区域 Proposal 和卷积网络特征提高了准确率,以及一阶段,例如SSD[14]和YOLO[1]。两阶段方法改进,如Fast R-CNN[15]和Faster R-CNN[16],通过将区域 Proposal 网络与卷积架构合并,减少了延迟。

然而,这些技术由于 Proposal 细化仍面临延迟。一阶段检测器对于实时任务具有均衡的速度和精度,但由于缺乏流式检测所需的时序上下文而缺少一些时间信息。另外,一些深度学习模型可以有效地预测物体目标的后验分布,如DADE[11]和MTD[12]。

这些模型利用了未来或过去的时间戳动态选择特征,并利用双路径架构来捕获长期运动并进行短期语义校准。此外,一些研究提出使用卷积神经网络和自编码器相结合的方法,如DAMO-StreamNet[15]和Longshorntet[14],成功地实现了实时检测效果。

因此,传统意义上的一帧内的检测效果不再局限于实时计算资源的限制和系统负载的高低。通过提出一个能够预测任何过去时间序列多个未来结果的时序注意力模块,本工作可以最好地匹配实时世界的现实时间,从而实现自适应不同的计算延迟。

视频目标检测:视频目标检测(VOD)旨在通过学习帧间特征相似性来优化检测在 poor-质量视频帧(如运动模糊或失焦)上的检测。它分为四种策略:

1).基于跟踪的方法[17]:通过在帧间增强检测来提高检测率;

2). 基于光流的方法[23, 24, 25]:利用光流信息来增强关键帧;

3). 基于注意的方法[4, 25, 14, 26]:应用注意机制来关系抽象特征以提高检测率;

4). 其他方法:通过网络聚合特征如DCN[1],RNN [27],和 LSTM[14]。VOD通常关注离线环境,常常忽视了检测算法的运行时延迟。

与此相反,本研究考虑了运行时延迟和实时需求,以确保高性能的检测。

实时感知: 由于计算延迟,实时检测受到了影响。通过使用历史结果中的时间信息预测实体位置,本研究采取了一种改进措施。一种称为 sAP 指标的评估方法被提出,以评估在实时场景中的目标检测算法,并考虑了延迟和准确性。后续的研究引入了几个旨在预测物体位置的模型。例如,StreamYOLO [23] 使用了双流感知模块进行下一帧预测,结合了之前和当前帧的特征。Dade [11] 和 MTD [12] 引入了动态特征选择机制,可以动态地选择来自过去或未来时间的特征,考虑到了算法的运行时延迟。DAMO-StreamNet [15] 和 Longshorntet [14] 使用双路径架构来捕获长期运动并校准短时语义。

他们成功地将动态流路径从1帧扩展到3帧,从而成功捕获了移动目标的长期运动,并实现了最先进的实时感知性能。然而,这些现有的研究只对下一帧进行检测,这迫使检测器必须始终在1帧内完成计算,这在计算资源有限或系统负载高的情况下很难实现。因此,在这项研究中,作者提出了一种可以预测任何过去时间序列多个未来结果的时序注意力模块,可以最好地匹配实时世界的现实时间,从而能够适应各种计算延迟。

Methodology

Observation and Motivation

作者的 Proposal 方案的动机源于目前流式感知研究中观察到的限制,特别是在处理车辆的变量速度和实时系统的固有计算延迟方面。

上述的流式感知领域的最先进方法已经注意到,不同车辆的速度显著影响实时检测。如果检测器只在一个固定的帧率(例如,60FPS)上训练,它只能配备模拟以相应恒定速度(例如,30km/h)移动的车辆(如图2a所示,当车辆的速度增加到60km/s时,检测器无法准确检测到它)。尽管在这些工作中应用了混合速度训练(Yang等人,2022),但它们需要预设速度(例如,根据先前的帧确定是检测帧t+1的慢速还是帧t+3的快速速度),即预先确定他们将在多少帧上对慢速或快速车辆进行检测。这些方法固有的限制在于,它们没有允许车辆的动态速度。

此外,如Figure 1所示,由于时间的工作负载动态变化,可以引入随机计算延迟。因此,即使车辆以相同的速度行驶,由于计算延迟的不同,可能导致精确检测的失败,如图2所示。值得注意的是,车辆速度的变动和计算延迟引入了类似的随机性元素到检测过程中,增加了预测任务的复杂性。

为了解决这些挑战,作者提出了Transfreaming,这是一种捕捉车辆速度和计算延迟固有随机性的新方法。作者的解决方案旨在在各种时间条件下提供实时检测预测,并动态适应操作环境。具体而言,Transfreaming专门针对各种运行场景进行调整,从而增强了流式感知系统在不同操作环境下的安全性和可靠性。

Transtreamer

遵循之前工作的[10]种检测模型的设计,作者将TS(Temporal Scene Understanding)分为三个模块:backbone用于特征提取,neck用于时间预测,head用于边界框解码。为了在TS中最大化提高时间推理,作者采用 Transformer 范式建立过去特征和未来特征之间的关系。 Transformer 可以有效利用AS提供的时序 Proposal 。为了评估与当前最先进方法,作者使用与[10]和[21]中相同的backbone(DRFPN)和head(TALHead)模块。

假设时序 Proposal ,缓冲特征 已事先已知。当前帧的特征由backbone模块提取。然后将计算得到的特征按照时间顺序拼接在缓冲特征上。给定拼接后的特征和,TS将编码为相对时间位置嵌入(Relative Temporal Position Embedding,简称为RTPE)。RTPE携带了接下来的时间自适应 Transformer (Temporal Adaptive Transformer,简称为TAT)的时间信息。TAT利用交叉注意力模块从过去帧的特征解码未来物体的特征。最后,被输入到head模块,生成未来物体的估计边界框

形式上,Transtreamer可以表示为

如图4所示,TS的全结构如下:

3D窗口分块:提取的过去和当前特征{},其中,包含2个空间维度(高度和宽度),1个时间维度(时间)和一个特征维度(通道)。常见的标记方法将输入扁平化为的标记序列。但是,这种方法计算复杂度高,计算复杂度为。为了降低注意力计算的复杂性,作者使用窗口注意力将输入特征截断为3D空间-时间窗口。假设物体轨迹可以在窗口大小内被捕获,那么缩小 Transformer 的感知范围可以忽略不计。在实际应用中,作者在TAT的每一层前面应用窗口分块,然后在之后应用反向窗口分块。

相对时间位置嵌入:输入序列的顺序不影响注意力模块中注意力权重的计算。因此,3D特征的空间和时间局部性不能得到保留。为了解决这个问题,作者在注意力模块中使用位置嵌入将局部信息集成到上述时间Transformer中。

由于连接的特征{}涉及相对时间和空间位置,作者将[12]中使用的2D可学习相对位置嵌入扩展为3D,添加了一个时间维度。与空间维度不同,作者的RTPE只提供正时间差(即未来标记会关注到过去标记,但反过来不会)的嵌入。形式上,由RTPE创建的嵌入被定义为通过从长方体3D坐标)到MLP投影保证其在3维连续性。其中是在给定的情况下所能给出的最大时间差。对于每个 Query 标记,其相对于键标记的时间 Embedding 值 ,有效反映出它们的相对位置。

时间自适应Transformer:Transtreamer的"颈"应模拟过去帧特征与未来物体特征之间的时间关系。直接使用卷积或线性层[10, 11]可能导致固定长度的,这与作者最初的预期相矛盾。受 Transformer 解码层启发,作者引入了一种新颖的时间交叉注意力模块TAT,其中将未来物体特征编码为 Query ,将过去帧的特征编码为键和值。由于注意力模块通常利用残差连接来帮助减轻消失梯度问题,作者认为在这种情况下这种方法仍然 valid。这是因为当前帧的特征是未来帧特征的合理初始猜测。

具体来说,作者首先将当前特征在时间维上复制作为初始 Query 。过去帧的特征用作键,而的差值用作值。其次,在TAT的每一层中,作者使用3D窗口划分来创建相应的输入 tokens 。作者采用与作为放大因子进行交叉注意力以获得注意力权重,作为时间信息的来源。通过反转窗口划分将 tokens 转换回原始形式,然后进行归一化层和 MLP 层,与原始Transformer架构类似。最后,作者使用层输出更新未来的 Query ,并在TAT的每一层内重复执行动作。

Adaptive Strategy

可调整策略(Adaptive Strategy),包括一个计划模块和两个缓冲区,定义了Transtreamer如何与流式感知环境交互。

计划器(Planner):AS的主要功能是规划,换句话说,就是生成一个适当的,以便在Streaming Perception中最大化检测模型的性能。在Streaming推理过程中,首先记录Transtreamer的主干、 Neck 和 Head 模块以及其他处理延迟,分别表示为,其中。作为一个合理的猜测,作者使用指数移动平均(EMA)估计当前循环中的延迟,对于,使用指数加权,衰减为0.5。此外,启动延迟可以直接测量为。为了充分利用过去的缓冲区,并为未来时间戳提供一个合理的估计,作者选择最多最新的可用缓冲区索引作为。对于,作者最多生成索引,每个预测均匀分布在时间轴上。最后,将剪裁到的范围内,并删除重复项,以便将保持在合理范围内,避免冗余计算。这种操作被称为的值分别由经验分配为。这个解决方案在延迟的大和小之间维持了模型延迟和预测准确性的平衡。

历史特征缓冲区(Historical Feature Buffer):虽然可以通过计算来获取过去帧的特征,但在实时评估中这种方法不适用,因为计算负载明显会影响最终性能。因此,作者缓存历史帧的特征以避免重复计算。作者还设置了一个缓冲区长度限制,并在缓冲区满后丢弃最早的缓存特征。由于早期帧对当前帧的影响可以忽略不计,这一限制可以减轻TAT的计算负担。

输出缓冲区(Output Buffer):尽管Transtreamer会生成多个future目标预测,但它们不应该简单地按顺序发送。因为当被低估时,这可能会产生过时的结果。因此,作者对Transtreamer的输出应用另一个缓冲区。在每一个时间戳上,缓冲区中时间最近的预测将被调度,以有效地在适当的时间发送所有预测。

Training and Inference

作者复制了基准方法 [14, 13] 使用的训练方案,除了 [14] 中提出的非对称知识蒸馏(Asymmetric Knowledge Distillation)之外,作者认为这个贡献与作者的工作是相互独立的。

混合速度训练: 为了提高模型的延迟意识,作者还采用混合速度训练来扩展 Transtreamer 的时空感知范围。如果只对恒定的相对索引 进行训练,模型在其他时间间隔上的效果将变得不可用。因此,作者采用混合速度训练方案,其中从 采样 ,从 采样 。对每个预测的未来目标,赋予相等的权重。

[14] 在本文中,作者主要关注的是非对称知识蒸馏方法。该方法主要研究知识蒸馏在不同场景中的性能,并在此过程中保持模型的同步。这一方法为实现端到端的零样本学习提供了有力的支持。

Experiment

Implementation Details

数据集:在作者的实验中,作者在Argoverse-HD数据集上训练和测试作者的方法。该数据集由前端摄像头视频序列和边界框标注构成,其中包括了常见道路目标(如汽车,行人,交通信号灯)的高频率标注(30 FPS),适合实时评估。作者相信其他数据集(如nuScenes,Waymo)不适合实时评估,因为它们标注的频率较低。作者按照[16]中的训练和验证划分进行操作。

模型:作者提出的模型的基础 Backbone 在COCO数据集上进行预训练,与[16]中的方法一致。其他参数遵循LeNet权重初始化。模型然后在Argoverse-HD数据集上进行8个epoch的微调,使用单个Nvidia RTX4080 GPU,批处理大小为4和一半分辨率输入()。为了确保与其他方法的公平比较,作者提供了Transfreaming的3个配置(Transfreaming-S(小),Transfreaming-M(中)和Transfreaming-L(大))作为Transfreaming的不同参数数量。这符合[16,1]中之前的方法。

主要指标:作者采用[11]中提出的实时评估方法作为主要测试指标。使用实时平均精度(sAP)来评估整个流水线的性能。sAP指标比较模型输出与 GT 值,而不是输入时刻(如离线评估中使用)。sAP使用与平均精度(mAP)相同的计算公式,计算匹配目标(IOU阈值范围为0.5到0.95)的平均精度得分。作者还分别报告了小,中,大目标(分别标记为)的sAP分数。为了确保公平比较,作者没有在模型中使用混合速度训练,这与 Baseline 方法的训练方案相符合。

计算延迟适应指标:为了模拟设备之间的计算能力多样性,作者在一个在线GPU计算集群(称为v100集群)和三个现实世界服务器(称为4080服务器,3090服务器和2080Ti服务器)上测试框架,这些设备具有不同的硬件规格。有关这些设备的详细信息请参阅补充材料。此外,作者采用延迟因子模拟高延迟情况,其中所有计算延迟都乘以。作者指定,并相应地标记为的sAP值。

车辆加速度调整为:为了进行全面比较,作者在离线设置下使用平均精确度(mAP)评估模型(无策略算法)。这种方法忽略了计算延迟的影响,只模拟不同车辆加速度的幅度,测试模型在相邻帧内处理各种物体位移的能力。与常见的离线评估不同,模型被分配过去的帧,并针对未来的物体进行评估,。结果的mAP分数分别标记为

定量结果

总体性能比较:作为主要结果,作者的框架被评估以对比最新的方法,以展示其优势。作者提出的这种方法在sAP中达到了38.2%,比现行的最先进方法提高了0.4%。在S和M配置中,作者的流水线也首次在大多数指标上获得了一等奖,比[22],[14]和[14]的方法相比。结果明确地展示了TransStreamer的力量。值得注意的是,作者的模型的sAP非常高,表明作者提出的TransStreamer已经认出了大型物体的时间运动。

计算延迟调整为:为了展示TransStreaming框架的鲁棒性,作者采用了计算延迟评估(DAMO-StreamNet[14]) metrics,并评估了作者的框架和 Baseline 模型在4个带有4个不同延迟因子的设备上。如表格2所示,作者的方法在许多实际设备上比最先进的最快延迟计算评估方法DAMO-StreamNet[14]提高了1.1%-2.8%的sAP,在延迟受限的环境中证明了其优势。值得注意的是,在高延迟场景中,尽管使用较轻的 Backbone ,LongShortNet还是超过了DAMO-StreamNet,这表明大型模型不一定会随着延迟的增加而扩展有效。结果表明作者的方法即使在计算能力较低的设备上也能保持其性能优势。

"sAP 对比用于车辆加速度自适应调整 (Vehicle Acceleration Adaptation sAP Comparison):作者还将在具有剧烈的车辆加速度的模拟环境中比较作者的框架。作者分别使用混合速度训练和无混合速度训练评估作者的框架,以便研究策略的影响。

如表3所示,与 DAMO-StreamNet-S 相比,在作者的提出的框架下,无混合速度训练实现了绝对改进 0.6%,1.1%,0.6%,0.2% 在 分别提高了。有趣的是,尽管使用混合速度训练的模型在 上的优势相对较小,但在较大的时间间隔上,观察到高达 3.2% 的 mAP 增长。实验结果展示了作者框架的时间灵活性。"

Ablation study

表4中列出了消融实验的结果。作者验证了四种提出的组件的有效性:RTPE、TAT、规划器(Planner)和缓冲区(Buffer)。对于RTPE,作者从模型中将其去除,观察到测试sAP的0.4%下降。作者还利用正弦位移编码和可学习位移编码作为其替换,但两者均不如作者当前的方法。对于TAT,作者将其性能与[14, 14]所使用的颈进行比较,发现提高了0.9%。

至于仅在流式设置下运行的规划器(Planner)和缓冲区(Buffer),作者研究了它们在下的能力。作者将它们从作者的体系结构中移除,发现该指标分别下降了0.4%和惊人的25.8%。由于检测模型通常计算前四帧的特征,因此在没有巨大的sAP损失的情况下,在没有重新计算3帧特征是不现实的。

Discussion

结论: 作者引入了Transtreaming,这是一个使用时间线索来生成多个与实际世界时间相匹配的预测的流式感知框架,有效实现了实时检测结果。Transtreaming是利用时间 proposals 和多帧输出的流感知框架的先驱。受到跨注意力(cross-attention)的启发,作者设计了 Transtreamer 检测模型,它能够处理具有动态时间范围输入和输出。还提出了适应性策略,以提供缓冲技术和时间线索给 Transtreamer。作者的框架不仅在普通的流感知设置下优于当前最先进的 SOTA 方法,在高/动态计算延迟和剧烈汽车加速的环境下也大大超越了 SOTA 方法。

限制: 尽管 Transtreaming 展示了其优势,但仍然存在一些局限。首先,尽管作者实现了 Proposal   用于提供时间信息,但 Transtreamer 仅在计算注意力权重时使用它。如果能够直接与输入标记交互,则会实现更强的集成。

其次,作者提出的计算延迟适应度度量有时由于时间重叠效应不会反映模型的真正能力。换句话说,如果计算时间稍微与多帧率错过,模型就会表现不佳。因此,作者应该为 采样更多值以具体评估模型。作者保留这些局限性供未来研究。

参考

[1].Transtreaming: Adaptive Delay-aware Transformer.

扫码加入👉「集智书童」交流群

(备注:方向+学校/公司+昵称



点击下方“阅读原文”,
了解更多AI学习路上的「武功秘籍」


集智书童
书童带你领略视觉前沿之美,精选科研前沿、工业实用的知识供你我进步与学习!
 最新文章