该工作提出了一种用于自动交通事故检测的双编码器-解码器-编码器(EDE)模型。它使用两阶段训练方法,学习正常的驾驶模式,并通过生成对抗识别异常情况。该模型有效地检测现实世界镜头中的事故,并通过捕捉细微的偏差来深入了解驾驶员的行为。
Research Article
该工作提出了一种用于自动交通事故检测的双编码器-解码器-编码器(EDE)模型。它使用两阶段训练方法,学习正常的驾驶模式,并通过生成对抗识别异常情况。该模型有效地检测现实世界镜头中的事故,并通过捕捉细微的偏差来深入了解驾驶员的行为。
为了增强道路安全和改进应急响应,应尽快在现实世界的监控录像中检测到交通事故。现有系统在很大程度上依赖于手动监控,这既耗时又容易出错。由于阶级失衡严重,自动事故检测仍然具有挑战性:正常驾驶情况过多,而事故很少且多种多样。在这种情况下,传统的计算机视觉系统往往无法可靠地区分正常和异常事件。本研究通过开发基于双编码器-解码器-编码器(EDE)框架的深度学习架构来解决该问题。该模型使用两个共享的编码器-解码器管道将图像分布映射到两个方向的指定潜在分布。该框架使系统能够对常见的交通行为模式进行建模,并对可能表明危险或异常事件的变化更加敏感。提出了一种两阶段训练技术,以进一步改进异常检测。在第一阶段,模型学习重建正常驾驶的图像,使用重建损失来表征正常行为。在第二阶段,引入了生成对抗机制:将从一个 EDE 重建的潜在向量传递到另一个 EDE,生成合成图像和潜在空间。这个过程放大了真实输出和合成输出之间的差异,使系统对潜在异常的细微迹象做出更敏感的反应。双 EDE 架构和对抗性训练方法通过对正常和病理行为进行建模,比当前方法有了重大进步。在真实世界交通监控数据集上的实验结果表明,所提方法在准确性和鲁棒性方面都显著提高了事故和不安全驾驶行为的检测能力。
根据世界卫生组织(2023 年)的数据,道路交通伤害是 5-29 岁儿童和年轻人死亡的主要原因,全球每年报告约 130 万人死亡。这一令人震惊的统计数据凸显了对能够监控道路交通1、实时检测异常情况并减少应急响应延误的自动化系统的迫切需求。人工智能(AI)和物联网(IoT)融入智慧城市基础设施,促进了智能交通系统的发展。虽然闭路电视(CCTV)2,3网络提供了对城市交通的连续监控,但人工监控是不切实际的,而且容易出错。因此,用于交通事故检测的可扩展自动化解决方案至关重要。
用于交通分析的传统计算机视觉方法(例如车辆检测、跟踪和行为分类)通常采用通过监督学习训练的卷积神经网络(CNN)4,5。这些系统需要大量的带注释的数据集,并且通常无法概括现实世界事故的罕见和多样化场景。因此,研究人员转向无监督异常检测方法,该方法不依赖于标记的异常数据。其中,自动编码器(AE)和生成对抗网络(GAN)在对正常模式建模和识别偏差方面显示出前景6,7,8。
然而,标准 AE 往往过于忠实地重建输入——即使这些输入是异常的——导致高假阴性率 9,10。变分自动编码器(VAE)11和基于GAN的模型,如f-AnoGAN 12,GANomaly13和OCGAN14,通过结合潜在空间建模和对抗学习来解决其中一些问题。尽管如此,这些模型通常依赖于从图像到潜在空间的单向映射15,限制了它们检测现实世界交通异常中微妙或复杂不一致的能力。
监督系统,例如字节跳动16、WHU17 和 USF18 为 AI 城市挑战赛开发的系统,通过时空跟踪19和以对象为中心的设计实现高精度。然而,它们需要标记的事故数据和复杂的跟踪管道,从而降低了实时的可扩展性和适用性。
| 型 | 类型 | 主要特点 | 局限性 | 性能(描述) |
| GANomaly | 监督 | 编码器-解码器-编码器;对抗性训练 | 倾向于重建甚至异常输入,导致假阴性 | 整体良好,精度高,召回率均衡 |
| 奥根 | 监督 | 具有约束潜在空间的单类 GAN | 难以检测细微或复杂的异常 | 略好于 GANomaly,改善了指标之间的平衡 |
| f-阿诺甘 | 监督 | 使用 GAN 和特征匹配进行快速异常检测 | 在潜在空间中捕获复杂异常的能力有限 | 中等表现(未提供具体分数) |
| 字节跳动 | 监督 | 具有对象级异常定位的时空跟踪 | 需要标记的训练数据;在现实环境中的可扩展性有限 | 非常高的准确度和精密度;灵敏度略低 |
| 巴杜 | 监督 | 使用背景建模和车辆跟踪 | 在多样化的场景中效果较差;错过细微的异常 | 精度可靠;平衡性好,但低于顶级方法 |
| WHU | 监督 | 双模态轨迹追踪 | 泛化性差,异常召回率低 | 整体性能较弱,尤其是在检测异常方面 |
| 南佛罗里达大学 | 监督 | 将背景建模与结构相似性分析相结合 | 不善于准确识别异常 | 精度和灵敏度极低 |
| 建议(双 EDE) | 监督 | 双编码器-解码器-编码器;具有对抗性和对比性损失的双向潜在映射 | 计算负载高;仅限于 RGB 输入 | 性能优异;最高的精度、高召回率和跨指标的强大平衡 |
表1:视频流量异常检测相关工作摘要
表 1 对比了交通监控中使用的基本异常检测方法,重点介绍了它们的架构、优点、缺点和性能。传统的基于 GAN 的模型,如 GANomaly 和 OCGAN,可以执行有效的无监督检测,但难以处理细微的异常。监督方法虽然非常准确,但在很大程度上依赖于标记数据和复杂的跟踪。所提出的Dual-EDE模型将双向潜在空间编码与对抗和对比训练相结合,使其能够在没有标记数据的情况下检测罕见和细微的流量异常,从而提供可扩展性和鲁棒性。
研究差距和假设
尽管无监督模型减少了对标记异常的需求,但它们仍然难以准确检测罕见、微妙和高影响的交通事件。当前的方法受到架构不对称和无法充分利用潜在空间不一致的限制。许多也无法在高度动态的交通环境中可靠地区分复杂的正常行为和真正的异常。
我们假设,专门针对正常交通数据进行训练的双编码器-解码器-编码器(EDE)架构,结合两阶段训练策略,在检测多样化和细微的交通异常方面可以优于最先进的模型。通过强制执行双向潜在一致性并集成对抗重建,系统对与预期行为的微小偏差(例如突然制动、不稳定的转向或碰撞)变得更加敏感,而无需带注释的事故数据。
建议方法
我们提出了一种基于双 EDE 架构的新型无监督异常检测框架。与采用单一编码-解码管道的传统模型不同,我们的系统使用两条 EDE 通路在图像和潜在表示之间执行双向映射。这种设计使模型能够学习正常交通动态的丰富特征,并在异常发生时放大差异。培训过程包括两个阶段:
第一阶段使用 重建损失来模拟正常行为,类似于标准的自动编码器训练。
第二阶段 引入了一种生成对抗机制,其中来自一个 EDE 的潜在向量被传递到第二个 EDE 中以生成合成数据,迫使系统在图像和潜在域中最大限度地区分真实和虚假表示。
主要贡献
我们引入了双 EDE 架构,通过双向映射捕获潜在的不一致,以改进异常检测。我们开发了一种两阶段的训练程序,将自动编码器重建与对抗性学习相结合,以提高对细微偏差的敏感性。通过对 AI City Challenge(轨道 4)数据集的实验,我们证明该模型优于几个最先进的监督和无监督基线,在现实世界的城市环境中实现了稳健且可扩展的事故检测。总之,这项工作提供了一种可扩展、准确且无标签的交通异常检测方法,有助于实现更安全、响应更灵敏的智能交通系统。
Access restricted. Please log in or start a trial to view this content.
系统
设置
我们利用英特尔 Tiber Cloud 环境,在分层和分布式计算框架中部署了所提出的流量异常检测系统。该架构由边缘、雾和云三层组成,以确保低延迟推理、可扩展的训练和跨计算节点的高效资源分配。
边缘层:使用轻量级、支持 GPU 的嵌入式设备(例如 NVIDIA Jetson Nano 或具有集成 GPU 的等效基于英特尔的平台)在边缘进行实时异常检测。这些单元与监控摄像头位于同一位置,并以最小的延迟执行逐帧推理,从而实现分散且响应迅速的交通监控。
雾层:计算密集型任务(包括批量推理和实时模型细化)由在英特尔 Tiber 云中配置为专用虚拟机或裸机实例的雾节点处理。每个雾节点都配置了具有至少 16 GB RAM 的英特尔至强处理器,并可以访问英特尔集成或独立 GPU 加速。该中间层支持在数据源附近进行高吞吐量作,同时保持中央服务器的自主权。
云层:对于大规模训练和存档,云层利用英特尔泰博人工智能优化服务提供的可扩展计算集群。配备英特尔哈瓦那高迪加速器或英特尔至强可扩展处理器的实例用于在大量视频数据集上训练深度神经网络,支持模型版本控制、长期存储和系统范围的编排。
完整的软件堆栈在 Python 3.8+ 环境中运行,使用英特尔优化的库来加速计算。主要框架包括 PyTorch(带有 PyTorch 的 Intel 扩展)、用于图像和视频预处理的 OpenCV 以及用于评估的 Scikit-learn。GPU 加速是通过适当的 oneAPI 工具包和 DAAL 优化来实现的。
部署后,我们克隆了包含双 EDE 架构的存储库并初始化了模型组件——两个编码器(E1、E2)和两个解码器(D1、D2)。采用 .to(device) 方法,根据本地资源可用性将组件动态传输到最佳处理单元(CPU、GPU 或 Gaudi 加速器)。
我们在配置脚本中声明了训练和评估参数,包括纪元数、学习率、损耗平衡系数(γ、δ)和异常敏感性阈值(ω1、ω2)。对于训练,我们遵循了两阶段协议:(1) 用于学习正常交通行为的标准自动编码器重建和 (2) 对抗性潜在重建以使用交叉 EDE 交互放大异常。
这种模块化的云原生系统架构通过英特尔台伯云在现实世界的智能交通环境中实现了强大的实时异常检测、模型可扩展性和可靠部署。
数据
为了训练和评估所提出的异常检测系统,我们使用了 NVIDIA AI City Challenge 2021 提供的第 4 轨(交通异常)提供的数据集。该数据集包括 100 个训练视频和 150 个测试视频,每个视频平均时长 15 分钟,以 30 fps 和 410 p 分辨率录制。由于道路类型、摄像机角度、照明和天气条件的变化,每个视频都呈现出不同的难度级别。该数据集从多个摄像机角度捕获了广泛的道路基础设施(例如,多车道高速公路、十字路口)、交通密度和天气状况(例如,晴朗、下雨、黄昏)。这些属性使其成为评估异常检测模型通用性的理想基准。
预处理
要在无监督条件下训练模型,请仅使用正常(非事故)交通场景,避免在训练期间暴露于任何异常事件。使用 OpenCV 执行视频预处理。以 5 fps 的速度均匀采样帧,以确保足够的时间覆盖,同时减少冗余。将帧大小调整为 128 x 128 像素,匹配双 EDE 网络的输入要求,并平衡视觉细节与计算效率。将像素值归一化到 [−1, 1] 范围以提高训练稳定性。
为了提高泛化并模拟现实世界的可变性,请将以下增强技术应用于具有随机概率的每个训练帧:
随机裁剪和缩放: 裁剪随机子区域并将它们缩放回原始分辨率,鼓励物体大小、部分可见性和空间位置偏移的不变性,模仿监控视频中的变焦效果和偏心主体。
亮度和对比度调制: 应用线性或基于伽玛的变换来模拟光照变化,例如阴影、眩光、日出/日落变化和人工照明。这提高了模型对昼夜和季节性照明波动的弹性。
高斯噪声注入和运动模糊: 添加具有不同标准偏差的高斯噪声,以模拟传感器噪声和压缩伪影。使用不同方向和幅度的卷积核来模拟运动模糊,以模拟移动物体或相机抖动的效果,这在快节奏的交通场景中尤为重要。
随机遮挡掩蔽: 通过在框架上叠加随机大小和位置的黑色或灰色矩形斑块来应用合成遮挡。此增强功能模拟现实世界的障碍物,例如行人、基础设施元素或遮挡视野的过往车辆。它鼓励模型从上下文中学习,并对缺失或扭曲的区域保持稳健性。
在训练期间使用 PyTorch 转换管道动态应用这些增强,确保每批都包含多样化的增强帧组合,促进对不同模式的暴露并减少过度拟合。
使用 PyTorch 的 DataLoader 加载已处理的帧,以管理批处理、随机播放和并行加载。根据 GPU 容量,使用 32 到 64 之间的批量大小进行训练。对于推理和异常评分,单独处理帧(批量大小 = 1)以实现精确的帧级检测。
这种预处理和增强管道提高了鲁棒性和泛化性,使模型能够在多样化和嘈杂的现实世界交通监控环境中有效地检测异常行为。
所提出的方法:
所提出的EDE系统学习图像分布和潜在空间之间的双向映射。两个编码器和两个解码器可实现稳健的特征提取和异常区分。这些网络在重建和对抗阶段都经过训练。使用对比学习、正则化和梯度惩罚来防止模态崩溃并提高 GAN 训练鲁棒性。
EDE 框架的工作原理如下: 编码器 1 (E1) 将图像特征编码到潜在空间中。第一个解码器 (D1) 从潜在向量重建图像,以最大限度地减少重建损失。然后将重建的图像映射回潜在空间以捕获不一致之处。第二个解码器 (D2) 从第二个潜在空间生成合成图像,以帮助模型区分真实数据和合成数据。这种双向映射根据潜在空间差异而不是像素级差异来检测异常。
第一阶段:重建训练: 自动编码器经过训练可以重建正常交通图像,因此异常输入会产生大量重建错误。损失函数考虑输入图像、其潜在编码和重建的图像。
对抗性训练: 重建训练后,应用对抗性学习。重建的潜在向量通过替代 EDE 结构以生成合成图像和潜在向量。目标是最大限度地扩大真实图像和合成图像之间的差异;改变和重建潜在载体以增强编码器 2 (E2) 的异常检测;并防止编码器塌陷。
训练旨在避免 E1 和 E2 收敛到相同的映射,这将降低鉴别能力。
对比学习: 损失函数区分真实表示和重建表示,边距超参数控制特征的分离。
正则化技术包括:
辍学: 随机停用神经元以防止过度拟合。
重量衰减: 惩罚大权重以稳定特征学习。
对抗训练稳定性20 和模式崩溃预防方法包括:
梯度惩罚: 规范鉴别者的行为。
数据增强: 随机裁剪、缩放和可调节照明以模拟各种条件。
噪声注入: 添加逼真的噪点、运动模糊和遮挡以改进泛化。
提前停止: 如果验证损失波动很大,则停止训练以避免过度拟合。
这些架构增强功能、培训方法和弹性措施可确保可靠的流量异常检测。
无监督事故检测网络仅对正常样本进行训练,并在正常样本和事故样本上进行测试。正式:
从所有正常视频和事故视频集中,考虑一个只有 F 个正常帧 (E = {x1, x2}) 的大型训练数据集 E。.., xM } 和一个较小的测试数据集 Ê,其中包含正常和意外照片 (Ê=[( x̂1,y1), (x̂2,y2), (x̂F*,yF*)]),帧,其中 yi
[0, 1] 是帧标签图像。对于 F
F* 训练,训练数据集必须明显大于测试数据集。学习数据集流形 (E) 后,在推理过程中将 Ê 中的事故帧识别为异常值。模型 f 根据学习到的正态数据分布计算事故评分 Acc(x)。事故得分高的测试图像 x 可能是事故。如果 Acc(x) > φ,则判断标准基于事故评分阈值 (φ)。
网络架构:
如图1所示,GANomaly模型21包含两个编码器、一个解码器和一个鉴别器。许多研究人员已经采用这种方法来区分潜在向量并检测视觉异常12,22。两个编码器和单个解码器相互修改模型中的图片和潜在向量。这些异常事实在转换过程中被指示出来。鉴别器将生成的图像与原始图像分开。GANomaly 依赖于编码、解码和重新编码。

图 1:展示信息流的 GANomaly 架构。 该架构由集成在生成对抗网络中的编码器-解码器-编码器框架组成。第一个编码器将输入的视频帧压缩为潜在空间表示,然后由解码器重建。第二个编码器将重建的帧映射回潜在空间。鉴别器评估输入特征和重建特征之间的差异以计算异常分数。箭头指示数据通过网络的方向流。缩写:GAN = 生成对抗网络。 请点击此处查看此图的大图。
图 2 说明了具有两个编码器和一个解码器的 EDE 架构。EDE 结构必须不断更改参数以检测视频事故。我们在 EDE 结构中添加了第二个解码器,并让它们共享编码器以生成 图 2 中具有两种网络配置的模型。两个编码器有四个卷积层。我们对除输出层之外的所有层都使用了 LeakyReLU 激活函数,输出层使用 tanh 激活将输出绑定在 -1 和 1 之间。在多个卷积层之后应用批量归一化。解码器(图 3 和 图 4)与编码器类似,但采用 ConvTranspose 和额外的批量归一化而不是每一层。

图 2:提出的基于 EDE 的具有信息流的架构。 图示了 EDE 架构,显示了视频帧通过两个编码器和一个解码器的流动。第一个编码器 (E1) 将输入帧压缩为潜在表示,然后由解码器 (D1) 重建。重建的输出通过第二个编码器(E2)以获得第二个潜在向量。潜在向量和重建质量之间的差异用于异常检测,并得到对抗性和对比损失分量的支持。缩写:EDE = 编码器-解码器-编码器。 请点击此处查看此图的大图。
网络架构详情:
双EDE模型由两个编码器-解码器-编码器管道组成,每个管道具有相同的结构,并在训练过程中共同优化。
编码器架构(E1、E2)
输入:128×128×3 RGB 帧
第 1 层:Conv2D(64 个过滤器,4×4 内核,步幅 2,填充 1)→ LeakyReLU (α = 0.2)
第 2 层:Conv2D(128 个滤波器,4×4,步幅 2,填充 1)→ BatchNorm → LeakyReLU
第 3 层:Conv2D(256 个滤波器,4×4,步幅 2,填充 1)→ BatchNorm → LeakyReLU
第 4 层:Conv2D(512 个滤波器,4×4,步幅 2,填充 1)→ BatchNorm → LeakyReLU
第 5 层:扁平化→密集到潜在向量 (z
^100)
解码器架构(D1、D2)
输入:z
^100 →密集→重塑为 8×8×512
第 1 层:TransposedConv2D(256 个滤波器,4×4,步幅 2,填充 1)→ BatchNorm → ReLU
第 2 层:TransposedConv2D(128 个滤波器,4×4,步幅 2,填充 1)→ BatchNorm → ReLU
第 3 层:TransposedConv2D(64 个滤波器,4×4,步幅 2,填充 1)→ BatchNorm → ReLU
第 4 层:TransposedConv2D(3 个滤镜,4×4,步幅 2,填充 1)→ Tanh
重建后的图像通过第二个编码器重新编码以获得潜在表示,并使用原始和重建的潜在向量之间的差异进行异常评分。
激活和规范化
编码器使用 LeakyReLU 激活和批量归一化。解码器使用 ReLU 激活,但最后一层除外,该层应用 Tanh 将输出归一化到范围 [−1, 1]。
损失 功能
图像重建损失:ǀǀ x −ǀǀ2
潜在一致性损失:ǀǀ z −ǀǀ2
对抗性损失:在第二阶段引入,通过强制网络将真实潜在代码与重建过程中生成的潜在代码区分开来最大限度地实现真实重建和合成重建之间的差异。
该架构可捕获像素空间和潜在空间不规则性,从而能够检测指示异常驾驶行为的细微偏差。
培训分两个阶段进行
采用两阶段网络训练方法。对于图像和潜在矢量重建,训练了两种 EDE 结构。在第二阶段,编码器 2 试图欺骗编码器 1 将数据错误分类为真实或重建。
初始重建培训
EDE 结构经过训练以复制输入图像和潜在向量。输入 x 由编码器 E1 编码为潜在向量 z。D1 和 D2 都解码 z 以生成图像 x1 和 x2。在通过两张重建的图片(x1和x2)后,我们从编码器E2获得了两个潜在向量(z1和z2)。此阶段包含以下培训目标:
LEDE1 = γ ǀǀ x −x1ǀǀ2+δ ǀǀ z −z1ǀǀ2 (1)
LEDE2 = γ ǀǀ x−x2ǀǀ2+δ ǀǀ z −z2ǀǀ2 (2)
这些重建的图像通过编码器E2获得潜在向量z1和z2。培训目标:
加权因子(γ、δ)对损失分量对目标函数的影响具有关键性影响。
其次,我们使用对抗方法训练了两个编码器-解码器-编码器结构。
在这里,γ和δ是权衡重建和潜在一致性损失贡献的参数。
对抗性训练
对两个 EDE 结构进行对抗训练。学习从数据中识别编码器 2。EDE2 必须欺骗 EDE1,因为它恰恰相反。D1 从第一步解码 z2 并重建 x1'。对编码器 E2 重复 x1' 得到 z1'。阶段训练目标如下:
最小最大值 γ ǀǀ x −x 1'ǀǀ +δ ǀǀ z -z1'ǀǀ 2 (3)
EDE2 EDE1
两种 EDE 结构具有以下损失函数:
LEDE1 = −γ ǀǀ x -x 1'ǀǀ 2 −δǀǀ z - z1'ǀǀ 2 (4)
LEDE2 = +γ ǀǀ x - x 1'ǀǀ 2+δ ǀǀ z - z1'ǀǀ 2 (5)
γ 和 δ 的值与之前指定的参数匹配。

图 3:编码器结构。 所提出的EDE架构中使用的编码器网络从输入视频帧中提取时空特征。它由多个卷积层组成,然后是批量归一化和 ReLU 激活,在捕获分层表示的同时逐步减少空间维度。最终的潜在向量编码异常检测所必需的高级语义信息。缩写:ReLU = 整流线性单元,EDE = 编码器-解码器-编码器。 请点击此处查看此图的大图。
每个EDE为所提出的结构提供了两个损失函数。在第 1 阶段,EDE1 必须减少 x 和 z 重建损耗。EDE1 必须优化潜在向量 z 和 z1' 以及 x 和 x1' 之间的第 2 相方差。EDE2 和 EDE1 减少了第 1 相 x 和 z 重建误差。EDE1 必须减小第 2 阶段 z 和 z1' 以及 x 和 x1' 之间的差异,但必须发生相反的情况。

图 4:解码器结构。所提出的EDE架构的解码器组件从潜在特征中重建输入帧。 它由一系列转置卷积层组成,这些卷积层逐渐将特征图上采样到原始帧分辨率。解码器学习准确重建正常交通场景,使系统能够根据重建错误识别异常情况。缩写:EDE = 编码器-解码器-编码器。 请点击此处查看此图的大图。
每个 EDE 模型对偶训练目标都包括权重随时间变化的损失函数:
LEDE1=(γ||x−x1||2+δ||z−z1||2)−(1−)(γ||x−x1''||2+δ||z−z1''||2) (6)
LEDE2=(γ||x−x1||2+δ||z−z1||2)+(1−)(γ||x−x1''||2+δ||z−z1''||2) (7)
训练期计数为 n。
算法 1 显示了两阶段训练:
输入:
数据集 E 中的所有正常图像 = {x1, x2, . . . , xF},
纪元 N,
加权参数γ、 δ
输出:
训练有素的编码器-解码器-编码器1,
编码器-解码器-编码器 2
e1、e2、d1、d2 ←初始化
权重
第 ←1 页
重复
对于 f = 1 到 F do
ZF←E1(xF)
←d1(zf)
←d2(zf)
←e2(
)
←e2(
)
←d1(
)
←e2(
)′
LEDE1←
(γ||xf−
||2+δ||zf−
||2) −(1−
)(γ||xf−
'||2+ δ||zf−
'||2)
LEDE2←
(γ||xf−
||2+δ||zf−
||2) +(1−
) (γ||xf−
'||2+ δ||zf−
'||2)
e1、e2、d1、d2←更新权重
使用 LEDE1和 LEDE2
结束
n ←n + 1
直到 n = N
训练阶段和异常检测标准
将训练分为两个连续阶段:
第一阶段 - 重建学习:
两条 EDE 管道都仅针对正常交通场景进行训练。
输入图像通过编码器 1 →解码器 1 →编码器 2(图 5)。
该模型最大限度地减少了图像重建损失和潜在一致性损失。此阶段允许网络学习一个紧凑、一致的正常行为潜在空间。
第二阶段 - 生成对抗学习:
从解码器 1 重建的潜在向量被输入到解码器 2,然后通过编码器 1 重新编码。这种循环流有助于模型检测合成模式中的不一致。添加对抗性损失以夸大原始表示和重建表示之间的微小偏差。鉴别器可以选择训练以区分真实的潜在代码和重建的潜在代码,从而在潜在空间中加强更清晰的区分。
异常检测:
在推理时,通过双 EDE 管道通过测试帧。计算三个指标:像素重构误差、潜在向量差异和对抗判别器分数(如果使用)。将综合异常分数计算为加权总和:

异常分数高于校准阈值的帧被标记为潜在的异常事件。这种机制使模型能够检测视觉和潜在空间模式中的细微偏差,而无需任何带注释的异常标签。

图 5:集成 EDE 1 和 EDE 2 的对抗性 GANomaly 模型的架构。 该图说明了对抗异常检测模型的设计,该模型集成了两个EDE结构——用于重建的EDE1和用于潜在特征对齐的EDE2。该模型采用潜在向量一致性损失和通过鉴别器进行对抗训练,以强制输入帧和重建帧的潜在表示之间的相似性。此架构通过学习正常流量模式的稳健特征嵌入来增强异常检测。缩写:EDE1 = 第一个用于重建的编码器-解码器-编码器结构;EDE2 = 用于潜在特征对齐的第二个编码器-解码器-编码器结构。 请点击此处查看此图的大图。
在检测过程中,我们的模型采用了以下异常分数:
累积(x̂) = ω1||z−z2||2+ω2||z−z1'||2 (8) 个
改变权重参数 (ω1+ ω2= 1) 可以通过调整真阳性与假阳性比率来改变灵敏度。在实际应用中,改变这两个参数可以在一个实验中检测出不同灵敏度的事故。
在训练过程中,每个输入帧 x 都通过 编码器 E1 生成潜在向量 z。然后通过 解码器D1重建潜在向量,产生图像x̂1,随后通过 编码器E2 获得重建的潜在向量z。同时,z 由 解码器 D2 解码以产生 x̂ 2,该x̂ 2 也通过 E2 重新编码以产生 z2。这种双向过程保留像素级和潜在级信息以进行异常检测。
模型测试算法:
={( x̂1,y 1),( x̂2,y 2),...,( x̂M*,yM*)},
阈值φ /
加权参数 ω1, ω2
输出:测试数据集的预测标签
Ere = {y1pre, y2pre, ..., yF*pre}
对于 i =1 到 F* do
zi ← e1(xi)
x2i ← d2(zi)
z2i ← e2(x2i)
z1i' ← d1(z2i)
z1i' ← e2(z1i')
Acc(x̂i) ←ω1||zi−z2i||2+ω2||zi−z1i'||阿拉伯数字
ifAcc(x̂i) ≥φ则
yipre ←1
还
yipre ←0
恩迪夫
结束
EDE 使用鉴别器作为对抗学习组件,通过提高模型区分正常和异常事件的能力来提高异常检测准确性。它按如下方式提高性能:
学习辨别:鉴别器经过训练,可以区分合成和双 EDE 结构重建表示。优化这种对抗过程使模型具有高度判别性的潜在特征,从而改进了交通场景异常检测。
删除不良重建:由于异常与流量模式有很大偏差,因此异常通常会产生重建问题。鉴别器惩罚错误重建的帧,从而改进网络的正常/异常事件检测。
通过对抗训练增强特征表示:通过整合对抗学习,鉴别器使 EDE 网络生成更持久、更有意义的潜在嵌入。这甚至可以检测到突然制动、碰撞和车辆转向等微小变化,从而改善异常检测。
消除误报:传统的自动编码器过度概括和规范化异常,导致高误报率。鉴别器通过识别正常帧和异常帧之间的潜在差异来在重建过程中保留异常的属性。
通过两阶段决策过程改进分类:正常或异常重建的帧从鉴别器接收置信度分数。在这个额外的验证阶段,错误分类错误和重建损失减少,提高了检测精度。
我们使用经过验证的事故检测方法来测试策略23、24、25、26。多类数据集中的一个类是正常的,所有其他事故类都使用一种方法与所有方法仔细检查。该模型仅使用普通类数据进行训练,而测试集使用事故和正常数据。训练集和测试集分为两种方式。
我们分别使用 80% 和 20% 的正常类数据进行训练和测试。事故等级测试结果是随机选择的。通过使用占正常类数据的 20% 的事故类测试样本,评估是无偏见的,以避免模型偏向大多数正常类。该模型可以针对相同数量的正常数据和事故数据进行测试,代表实际条件。它通过使用 80% 的正常数据进行训练并隐藏 20% 来公正地测试模型泛化。这也表明,在现实生活中,正常发生的事故数量多于事故,因此将模型暴露于不常见的事故数据中非常重要。随机选择事故样本并针对所有事故情况测试模型而不过度拟合,可以提高鲁棒性。80/20 数据拆分在机器学习中很常见。有意义模式的训练数据和性能评估的测试数据是平衡的。
实验使用数据集进行训练和测试。采用正常类训练拆分进行验证和训练。所有班级的测试数据都经过测试。
模型修剪和量化大大减少了模型大小和计算。简化的模型具有相同的精度,但性能较低,因为它包含的参数减少了 40%。对于处理能力较低的边缘设备,量化模型会压缩它。这种优化满足了实时交通监控精度和召回需求。
MobileNets 和 EfficientNet 等轻量级设计增加了实时推理。由于其计算机视觉精度和最少的计算,这些架构类型被广泛使用。在嵌入式系统上,此类模型可将帧处理量减少 50%,同时保持较高的事故检测 F1 分数。
使用类似的参数进行图像重建和事故检测,利用多任务学习可以简化设计。这降低了训练时间和计算成本,而不会影响模型的准确性。多任务学习系统简化了交通视频数据处理模型学习。
对比和自监督对抗训练在更短的时间内产生了与基础异常检测模型相当的结果。收集并概括交通事故特征,以提高对不可见数据的鲁棒性。
所提出的交通异常检测算法在 2021 年 AI City Challenge 的五个数据集之一 Track-4 上进行了测试27.高速公路向爱荷华州交通部提供了这些数据。
比较性能评价:
为了验证我们的模型,我们在 AI City Challenge Track 4 数据集上对其进行了基准测试,以对比最先进的模型,包括 GANomaly、f-AnoGAN、OCGAN 和字节跳动的监督方法。 表2总结 了结果。
| 型 | F1 分数 | 精度 | 召回 | AUC |
| GANomaly | 0.87 | 0.88 | 0.86 | 0.9 |
| 奥根 | 0.89 | 0.9 | 0.87 | 0.91 |
| 字节跳动(Sup.) | 0.91 | 0.93 | 0.89 | 0.92 |
| 建议(双 EDE) | 0.94 | 0.95 | 0.93 | 0.94 |
表 2:方法比较。 该表按 F1 分数、精度、召回率和准确度比较了异常检测方法。比较了有和没有对抗训练的EDE设计。两个 EDE 加对抗训练在所有类别中都击败了 BADU、字节跳动和 WHU。数据表明,对抗性学习增加了异常检测。
双 EDE 模型优于所有基线,尤其是在召回方面——表明对罕见异常事件的敏感性更强。
Access restricted. Please log in or start a trial to view this content.
为了评估所提出的交通异常检测方法的有效性,我们在单个视频剪辑上实现了该模型,并生成了说明系统随时间和特征空间内行为的可视化效果。尽管使用模拟 EDE 管道获得,但结果密切反映了实际模型预期的定性结论。
异常评分时间线描述了模型在识别异常事件方面的逐帧置信度(图 6)。异常分数中的峰值对应于图像动态的突然变化,例如突然运动或视觉失真,类似于车辆碰撞或快速减速等现实世界事件。初始帧显示出相对较低的分数,表明交通流畅。时间线中的突出峰值表明存在潜在的交通异常,在定性图像输出中进一步检查。通过利用帧级偏差信号,系统有效地区分正常和异常模式。

图 6:示例视频异常分数的时间变化。 该图说明了模型为数据集中的代表性...
Access restricted. Please log in or start a trial to view this content.
本研究提出了一种基于深度学习的交通异常检测系统,该系统采用 EDE 架构,以无监督方式进行训练,以识别真实世界监控视频中的单车和多车事故。通过对典型的交通行为进行建模,系统将偏差检测为可能的异常,而无需标记的异常数据,从而解决智能交通监控中的可扩展性和数据稀疏性挑战。该研究通过展示潜在空间一致性和重建损失的联合使用来有效识别时空异常,从而推动了该领域的发展。
局限性:
虽然双 EDE 模型表现出强大的性能,但必须认识到某些限制,以确保透明度并为未来的发展提供信息。
输入模式限制:当前框架仅在 RGB 视频流上运行,不包含激光雷达、热图像或 GPS 数据等替代传感源,这些源可以在视觉挑战性环境中提供额外的线索。
Access restricted. Please log in or start a trial to view this content.
作者声明没有利益冲突。
这项研究没有获得外部资助。作者要感谢印度哥印拜陀的 Amrita 计算学院为开展这项研究提供了必要的硬件和宝贵的支持。
Access restricted. Please log in or start a trial to view this content.
| Name | Company | Catalog Number | Comments |
|---|---|---|---|
| AI City Challenge Track 4 数据集 | 人工智能城市挑战赛(https://www.aicitychallenge.org) | 曲目 4,2021 年发布 | |
| CUDA 工具包 | NVIDIA 开发人员 | 版本 11.3 | |
| cuDNN 库 | NVIDIA 开发人员 | 与 CUDA 11.3 兼容 | |
| GPU工作站集群(训练) | 阿姆里塔计算机学院 | — | |
| 本地工作站(雾节点) | 阿姆里塔计算机学院 | — | |
| Matplotlib | matplotlib.org | 版本 3.3+ | |
| NVIDIA Jetson Nano(边缘设备) | 英伟达 | 945-13450-0000-100 | |
| NVIDIA RTX 3060 GPU(工作站) | 英伟达 | 因制造商而异 | |
| 数字 | numpy.org | 版本 1.19+ | |
| 开放简历 | OpenCV.org | 版本 4.5+ | |
| 熊猫 | pandas.pydata.org | 版本 1.1+ | |
| 蟒 | Python 软件基础 | 版本 3.8+ | |
| PyTorch | PyTorch (https://pytorch.org) | 版本 1.10+ | |
| Scikit-学习 | scikit-learn.org | 版本 0.24+ | |
| Ubuntu Linux(作系统) | 佳能有限公司 | 版本 20.04 LTS |
Access restricted. Please log in or start a trial to view this content.
Request permission to reuse the text or figures of this JoVE article
Request Permission