本研究提出了一种用于自动交通肇事检测的双编码器-解码器-编码器(EDE)模型。该模型采用两阶段训练方法,通过生成对抗学习正常驾驶模式,并识别异常情况。该模型能够有效检测真实场景视频中的交通事故,并通过捕捉细微偏差,揭示驾驶员行为特征。
研究文章
本研究提出了一种用于自动交通肇事检测的双编码器-解码器-编码器(EDE)模型。该模型采用两阶段训练方法,通过生成对抗学习正常驾驶模式,并识别异常情况。该模型能够有效检测真实场景视频中的交通事故,并通过捕捉细微偏差,揭示驾驶员行为特征。
为了提升道路安全并改善应急响应,应在真实世界的监控视频中尽快检测交通事件。现有系统在很大程度上依赖人工监控,耗时且容易出错。由于严重的类别不平衡,自动事故检测仍然具有挑战性:正常驾驶情况占比过高,而事故则罕见且形式多样。在此类情况下,传统的计算机视觉系统通常难以可靠地区分正常与异常事件。本研究通过构建一种基于双编码器-解码器-编码器(EDE)框架的深度学习架构来解决该问题。该模型采用两个共享的编码器-解码器通路,将图像分布双向映射到指定的潜在分布空间。该框架使系统能够建模常见的交通行为模式,并对可能预示危险或异常事件的变化更加敏感。本文提出一种两阶段训练技术以进一步提升异常检测性能。在第一阶段,模型学习重建正常驾驶场景的图像,并利用重构损失来表征正常行为。在第二阶段引入生成对抗机制:将一个EDE生成的重构潜在向量输入另一个EDE,以生成合成图像和潜在空间。该过程放大了真实输出与合成输出之间的差异,使系统对潜在异常的细微迹象更加敏感。双EDE架构与对抗训练方法通过同时建模正常与异常行为,代表了对当前方法的显著改进。在真实交通监控数据集上的实验结果表明,所提出的方法在准确性和鲁棒性方面均显著提升了对交通事故和不安全驾驶行为的检测能力。
根据世界卫生组织(2023年)的数据,道路交通伤害是5至29岁儿童和年轻成年人死亡的主要原因,全球每年报告约130万例死亡。这一令人担忧的统计数据凸显了迫切需要开发能够监控道路交通1、实时检测异常情况并缩短应急响应延迟的自动化系统。将人工智能(AI)和物联网(IoT)集成到智慧城市基础设施中,已推动了智能交通系统的发展。尽管闭路电视(CCTV)2,3 网络可对城市交通进行持续监控,但人工监控既不现实又容易出错。因此,可扩展的自动化交通事件检测解决方案至关重要。
用于交通分析的传统计算机视觉方法——例如车辆检测、跟踪和行为分类——通常采用通过监督学习训练的卷积神经网络(CNN)4,5。这些系统需要大量标注数据集,且在应对表征真实世界交通事故的罕见且多样的场景时,往往难以实现泛化。因此,研究人员转向了无需依赖标注异常数据的无监督异常检测方法。其中,自编码器(AE)和生成对抗网络(GAN)在建模正常模式并识别异常偏离方面已展现出潜力6,7,8。
然而,标准的自编码器(AEs)往往对输入进行过于忠实地重建——即使这些输入存在异常——导致假阴性率较高9,10。变分自编码器(VAEs)11 以及基于生成对抗网络(GAN)的模型,如 f-AnoGAN12、GANomaly13 和 OCGAN14 ,通过引入潜在空间建模和对抗学习机制,在一定程度上解决了这些问题。然而,这些模型通常依赖于从图像空间到潜在空间的单向映射15,限制了其在检测现实交通异常中细微或复杂不一致性的能力。
由字节跳动16、武汉大学17和南佛罗里达大学18为AI City Challenge所开发的有监督系统,通过时空跟踪19和以对象为中心的设计实现了高精度。然而,这些系统需要标注过的事故数据以及复杂的跟踪流程,限制了其在实时场景中的可扩展性和适用性。
| 模型 | 类型 | 关键特征 | 局限性 | 性能(描述) |
| GANomaly | 无监督 | 编码器–解码器–编码器;对抗训练 | 倾向于对异常输入进行过度重建,导致假阴性 | 整体表现良好,具有高精确率和均衡的召回率 |
| OCGAN | 无监督 | 具约束潜在空间的单类 GAN | 在检测细微或复杂异常方面存在困难 | 略优于 GANomaly,在各项指标上具有更佳的平衡性 |
| f-AnoGAN | 无监督 | 利用 GAN 和特征匹配实现快速异常检测 | 在潜在空间中捕捉复杂异常的能力有限 | 中等性能(未提供具体分数) |
| ByteDance | 有监督 | 具有对象级异常定位的时空跟踪 | 需要标注的训练数据;在现实场景中可扩展性有限 | 极高的准确率和精确率;敏感性略低 |
| BADU | 有监督 | 采用背景建模和车辆跟踪 | 在多样化场景中效果较差;难以发现细微异常 | 准确性良好;平衡性较好,但低于顶尖方法 |
| WHU | 有监督 | 双模态轨迹追踪 | 泛化能力差,异常召回率低 | 整体性能较弱,尤其在异常检测方面 |
| USF | 有监督 | 结合背景建模与结构相似性分析 | 准确识别异常的能力较差 | 准确率和敏感性均很低 |
| Proposed (Dual-EDE) | 无监督 | 双编码器–解码器–编码器;具有对抗损失和对比损失的双向潜在映射 | 计算负载高;仅限于 RGB 输入 | 性能优异;精确率最高,召回率高,各项指标平衡性强 |
表1:基于视频的交通异常检测相关工作的总结。
表 1 对比了交通监控中常用的关键异常检测方法,重点介绍了它们的架构、优势、局限性及性能表现。基于生成对抗网络(GAN)的传统模型(如 GANomaly 和 OCGAN)能够实现有效的无监督检测,但在识别细微异常方面存在困难。监督式方法虽然准确性高,但严重依赖标注数据和复杂的跟踪技术。本文提出的 Dual-EDE 模型结合了双向潜在空间编码与对抗训练和对比训练,能够在无需标注数据的情况下检测罕见且细微的交通异常,兼具可扩展性和鲁棒性。
研究空白与假设
尽管无监督模型减轻了对标注异常数据的需求,但在准确检测罕见、细微且影响重大的交通事件方面仍存在困难。现有方法受限于架构的不对称性,以及无法充分利用潜在空间中的不一致性。许多方法在高度动态的交通环境中,仍难以有效区分复杂的正常行为与真实的异常情况。
我们假设,一种仅在正常交通数据上训练的双编码器-解码器-编码器(EDE)架构,结合两阶段训练策略,能够在检测多样且细微的交通异常方面优于当前最先进的模型。通过强制实现潜在空间的双向一致性并引入对抗性重构机制,该系统对偏离预期行为的微小变化更加敏感——例如突然刹车、不规则变道或碰撞——而无需依赖标注的事故数据。
提出的方法
我们提出一种基于双EDE架构的新型无监督异常检测框架。与采用单一编码-解码流程的传统模型不同,本系统使用两条EDE通路,在图像与潜在表示之间执行双向映射。该设计使模型能够学习正常交通动态的丰富特征,并在异常发生时放大差异。训练过程包括两个阶段:
第一阶段 使用重建损失来建模正常行为,类似于标准的自编码器训练。
第二阶段引入了一种生成对抗机制,其中一个EDE的潜在向量被输入到第二个EDE中以生成合成数据,从而迫使系统在图像和潜在空间中均最大化真实与虚假表征之间的差异。
主要贡献
我们提出了一种双EDE架构,通过双向映射捕捉潜在的不一致性,从而提升异常检测性能。我们开发了一种两阶段训练方法,将自编码器重构与对抗学习相结合,以增强对细微偏差的敏感性。通过在AI City Challenge(Track 4)数据集上的实验,我们验证了该模型优于多种当前最先进的有监督和无监督基线方法,能够在真实城市环境中实现鲁棒且可扩展的事故检测。综上所述,本研究为交通异常检测提供了一种可扩展、高精度且无需标签的方法,有助于构建更安全、更智能的交通系统。
访问受限。请登录或开始试用以查看此内容。
系统
设置
我们在一个分层式分布式计算框架内部署了所提出的交通异常检测系统,并利用 Intel Tiber 云环境。该架构包含三个层级——边缘层、雾层和云层——以确保在计算节点间实现低延迟推理、可扩展的训练以及高效的资源分配。
边缘层:使用轻量级、支持 GPU 的嵌入式设备(例如 NVIDIA Jetson Nano 或具有集成 GPU 的同等 Intel 平台)在边缘端进行实时异常检测。这些设备与监控摄像头共置于同一位置,以极低延迟执行逐帧推理,从而实现去中心化且响应迅速的交通监控。
雾层:包括批量推理和实时模型优化在内的计算密集型任务由雾节点处理,这些雾节点在英特尔 Tiber 云中被配置为专用的虚拟机或裸金属实例。每个雾节点均配备至少 16 GB 内存的英特尔至强处理器,并可访问英特尔集成或独立的 GPU 加速功能。这一中间层能够在靠近数据源的位置实现高吞吐量操作,同时保持相对于中央服务器的独立性。
云层级:用于大规模训练和归档,云层级利用通过 Intel Tiber 的 AI 优化服务提供的可扩展计算集群。配备 Intel Habana Gaudi 加速器或 Intel Xeon 可扩展处理器的实例被用于在大规模视频数据集上训练深度神经网络,支持模型版本管理、长期存储以及全系统范围的编排。
整个软件栈在 Python 3.8+ 环境中运行,使用针对 Intel 优化的库以实现加速计算。主要框架包括 PyTorch(结合 PyTorch 的 Intel 扩展)、用于图像和视频预处理的 OpenCV,以及用于评估的 Scikit-learn。通过相应的一体化编程框架(oneAPI)工具包和 DAAL 优化实现 GPU 加速。
部署后,我们克隆了包含双EDE架构的代码仓库,并初始化了模型组件——两个编码器(E1、E2)和两个解码器(D1、D2)。通过调用.to(device)方法,根据本地资源可用性,将组件动态地迁移至最优处理单元(CPU、GPU或Gaudi加速器)。
我们在一个配置脚本中声明了训练和评估参数,包括训练轮数、学习率、损失平衡系数(γ、δ)以及异常敏感度阈值(ω1、ω2)。训练过程遵循两阶段协议:(1)标准自编码器重构,用于学习正常流量行为;(2)对抗性潜在空间重构,利用跨EDE交互来放大异常。
这种模块化且基于云原生的系统架构通过英特尔 Tiber 云,在真实世界的智能交通环境中实现了强大的实时异常检测、模型可扩展性以及可靠的部署。
数据集
为训练和评估所提出的异常检测系统,我们使用了 NVIDIA AI City Challenge 2021 年第 4 赛道(交通异常)提供的数据集。该数据集包含 100 个训练视频和 150 个测试视频,每个视频平均时长为 15 分钟,以 30 fps 和 410 p 分辨率录制。由于道路类型、摄像机角度、光照和天气条件的不同,每个视频具有不同的难度等级。该数据集从多个摄像机角度捕捉了多种道路基础设施(例如多车道高速公路、交叉路口)、交通密度和天气条件(例如晴朗、下雨、黄昏)。这些特性使其成为评估异常检测模型泛化能力的理想基准。
预处理
为了在无监督条件下训练模型,仅使用正常(非事故)交通场景,避免在训练过程中接触任何异常事件。使用 OpenCV 进行视频预处理。以 5 fps 的频率均匀采样帧,以确保足够的时间覆盖范围,同时减少冗余。将帧调整为 128 × 128 像素,以符合双 EDE 网络的输入要求,并在视觉细节与计算效率之间取得平衡。将像素值归一化至 [−1, 1] 范围,以提高训练稳定性。
为了提高泛化能力并模拟真实世界中的变异性,需以随机概率对每个训练帧应用以下增强技术:
随机裁剪与缩放:随机裁剪图像的子区域并将其缩放回原始分辨率,以增强模型对物体尺寸、部分可见性及空间位置变化的不变性,模拟监控视频中的缩放效果和偏离中心的拍摄对象。
亮度和对比度调节:应用线性或基于伽马的变换,以模拟光照变化,如阴影、眩光、日出/日落差异以及人工照明。这可提高模型对昼夜和季节性光照波动的适应能力。
高斯噪声注入与运动模糊:添加具有不同标准差的高斯噪声,以模拟传感器噪声和压缩伪影。使用在不同方向和强度上具有取向的卷积核来模拟运动模糊,以重现移动物体或相机抖动的影响,这在快速变化的交通场景中尤为相关。
随机遮挡掩码:通过在帧上叠加随机大小和位置的黑色或灰色矩形块,施加合成遮挡。该增强方法可模拟真实世界中的遮挡物,例如行人、基础设施元素或经过的车辆遮挡视野。它促使模型能够从上下文信息中学习,并对缺失或扭曲的区域保持鲁棒性。
在训练过程中使用 PyTorch 变换管道动态应用这些增强方法,确保每个批次包含经过多样化增强的帧组合,从而增加对不同模式的暴露并减少过拟合。
使用 PyTorch 的 DataLoader 加载已处理的帧,以管理批量处理、打乱顺序和并行加载。根据 GPU 容量,以 32 到 64 之间的批量大小进行训练。在推理和异常评分时,逐帧处理(批量大小 = 1),以实现精确的帧级检测。
该预处理与增强流程提高了模型的鲁棒性和泛化能力,使其能够在多样且噪声较多的真实世界交通监控环境中有效检测异常行为。
所提出的方法:
所提出的 EDE 系统学习图像分布与潜在空间之间的双向映射。两个编码器和两个解码器实现了鲁棒的特征提取与异常区分。网络在重建和对抗两个阶段进行训练。通过对比学习、正则化和梯度惩罚来防止模式崩溃,并提高 GAN 训练的鲁棒性。
EDE 框架的工作流程如下:编码器 1(E1)将图像特征编码到潜在空间中。第一个解码器(D1)从潜在向量重建图像,以最小化重建损失。然后将重建的图像重新映射回潜在空间,以捕捉不一致性。第二个解码器(D2)从第二个潜在空间生成合成图像,帮助模型区分真实数据与合成数据。这种双向映射基于潜在空间的差异而非像素级差异来检测异常。
第一阶段:重建训练:自动编码器被训练以重建正常流量图像,因此异常输入会产生显著的重建误差。损失函数考虑了输入图像、其潜在编码以及重建后的图像。
对抗训练:在完成重建训练后,应用对抗学习。将重建的潜在向量输入一个替代的 EDE 结构,以生成合成图像和潜在向量。其目标是最大化真实图像与合成图像之间的差异;修改并重建潜在向量,以增强编码器 2(E2)的异常检测能力;并防止编码器崩溃。
训练旨在避免 E1 和 E2 收敛到相同的映射,否则会降低判别能力。
对比学习:损失函数用于区分真实表示与重建表示,其中间隔超参数控制特征的分离程度。
正则化技术包括:
Dropout:随机失活神经元,以防止过拟合。
Weight decay:对较大的权重施加惩罚,以稳定特征学习。
对抗训练稳定性20 和模式崩溃预防方法包括:
梯度惩罚:调节判别器行为。
数据增强:通过随机裁剪、缩放和可调光照模拟不同条件。
噪声注入:添加真实噪声、运动模糊和遮挡以提高泛化能力。
早停法:若验证损失显著波动,则停止训练以避免过拟合。
这些架构改进、训练方法和弹性措施可确保可靠的流量异常检测。
非监督事故检测网络仅在正常样本上进行训练,并在正常样本和事故样本上进行测试。形式化地:
从所有正常和事故视频的集合中,考虑一个仅包含大量训练数据集 E F 正常帧(E = {x1, x2, ..., 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 中的模型。两个编码器均包含四个卷积层。除输出层使用 tanh 激活函数将输出限制在 -1 到 1 之间外,其余各层均使用 LeakyReLU 激活函数。多个卷积层之后应用了批归一化。解码器(图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)→ 批量归一化 → 带泄漏线性整流函数
第3层:Conv2D(256个滤波器,4×4,步幅2,填充1)→ BatchNorm → LeakyReLU
第4层:Conv2D(512个滤波器,4×4,步幅2,填充1)→ 批量归一化 → 带泄漏线性整流函数
第5层:展平 → 全连接至隐向量(z
^100)
解码器架构(D1,D2)
输入:z
^100 → 稠密层 → 重塑为 8×8×512
第1层:转置卷积2D(256个滤波器,4×4,步幅2,填充1)→ 批归一化 → ReLU
第2层:转置卷积2D(128个滤波器,4×4,步幅2,填充1)→ 批归一化 → ReLU
第3层:转置卷积2D(64个滤波器,4×4,步幅2,填充1)→ 批量归一化 → ReLU
第4层:转置卷积2D(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 结构进行对抗性训练。EDE1 学习从数据中识别编码器 2。由于 EDE2 与 EDE1 相反,因此必须欺骗 EDE1。D1 从第一步解码 z2 并重建 x1'。将 x1' 输入编码器 E2 得到 z1'。阶段训练目标如下:
min max γ ǀǀ x −x1'ǀǀ +δ ǀǀ z -z1'ǀǀ2 (3)
EDE2 EDE1
两种 EDE 结构具有以下损失函数:
LEDE1 = −γ ǀǀ x -x1'ǀǀ2 −δǀǀ z - z1'ǀǀ2 (4)
LEDE2 = +γ ǀǀ x - x1'ǀǀ2+δ ǀǀ z - z1'ǀǀ2 (5)
γ 和 δ 的值与先前指定的参数一致。

图 3:编码器结构。 本研究提出的 EDE 架构中所采用的编码器网络用于从输入视频帧中提取时空特征。该网络由多个卷积层组成,后接批量归一化和 ReLU 激活函数,逐步降低空间维度,同时捕获分层表示。最终的潜在向量编码了异常检测所需的关键高层语义信息。缩写:ReLU = 校正线性单元,EDE = 编码器-解码器-编码器。 请点击此处查看该图的高清版本。
每个EDE为所提出的结构提供两个损失函数。在第1阶段,EDE1必须降低x和z的重构损失。EDE1必须优化第2阶段中潜在向量z与z1'以及x与x1'之间的方差。EDE2和EDE1共同降低第1阶段的x和z重构误差。在第2阶段,EDE1必须减小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 ←初始化中
重量
n ← 1
重复
对于 f = 1 到 F 执行
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
训练阶段与异常检测标准
将训练分为两个连续的阶段:
I 期——重建学习:
两条 EDE 管道均仅在正常交通场景数据上进行训练。
输入图像依次通过编码器1 → 解码器1 → 编码器2(图5)。
该模型最小化图像重建损失和潜在一致性损失。此阶段使网络能够学习正常行为的紧凑且一致的潜在空间。
第二阶段 - 生成式对抗学习:
从解码器1重建的潜在向量被输入到解码器2,然后通过编码器1重新编码。这种循环流程有助于模型检测合成模式中的不一致性。通过添加对抗性损失,放大原始表示与重建表示之间的微小偏差。可选择性地训练一个判别器,以区分真实的潜在编码与重建的潜在编码,从而在潜在空间中强制实现更清晰的区分。
异常检测:
在推理阶段,将测试帧输入双分支 EDE 流程。计算三个指标:像素级重建误差、潜在向量差异以及对抗判别器得分(若使用)。将复合异常得分计算为加权和:

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

图 5:集成 EDE 1 和 EDE 2 的对抗性 GANomaly 模型架构。 本图展示了对抗性异常检测模型的设计,该模型集成了两种 EDE 结构——EDE1 用于重构,EDE2 用于潜在特征对齐。该模型采用潜在向量一致性损失,并通过判别器进行对抗训练,以强制输入帧与重构帧的潜在表示之间保持相似性。该架构通过学习正常交通模式的鲁棒特征嵌入,增强了异常检测能力。缩写:EDE1 = 用于重构的第一编码器-解码器-编码器结构;EDE2 = 用于潜在特征对齐的第二编码器-解码器-编码器结构。 请点击此处查看此图的放大版本。
在检测过程中,我们的模型采用了这些异常评分:
Acc(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,该信号也通过 E 重新编码2 以获得 z2这一双向过程同时保留了像素级和潜在级信息,用于异常检测。
模型测试算法:
={( x̂1,y1),( x̂2,y2),…,( x̂M*,yM*)},
阈值 ϕ,
加权参数 ω1,ω2
测试数据集的预测标签
E重新 = {y1预处理, y2预处理, …, yF*预处理}
用于 i =1至F*
zi ← e1(xi)
x2i ← d2(zi)
z2i ← e2(x2i)
z1i' ← d1(z2i)
z1i← e2(z1i')
加速度(x̂i) ←ω1zi−z2i||2+ω2zi-z1i'||2
ifAcc(x̂i) ≥ϕ 则
yipre ←1
否则
yipre ←0
endif
结束
EDE 使用判别器作为对抗学习组件,通过增强模型区分正常与异常事件的能力,提高异常检测的准确性。其性能提升方式如下:
学习判别:判别器被训练以区分合成的和双重EDE结构重建的表示。通过优化这一对抗过程,模型获得了高度判别的潜在特征,从而提升了交通场景异常检测的性能。
去除不良重建:由于异常情况与交通模式差异较大,常常会产生重建问题。判别器会惩罚错误重建的帧,从而提升网络对正常/异常事件的检测能力。
通过对抗训练增强特征表示:通过引入对抗学习,判别器促使EDE网络生成更稳定且具有实际意义的潜在嵌入,从而能够检测到诸如急刹车、碰撞和车辆偏航等细微变化,提升异常检测能力。
去除假阳性:传统的自动编码器会过度泛化并归一化异常,导致假阳性率较高。判别器通过识别正常帧与异常帧之间的潜在差异,在重建过程中保留异常的特征,从而减少假阳性。
通过两阶段决策过程提高分类准确性:正常或异常的重建帧由判别器赋予置信度评分。在这一额外的验证阶段,可减少分类错误和重建损失,从而提升检测准确率。
我们采用经过验证的事故检测方法来测试该策略23,24,25,26。在多类别数据集中,一个类别为正常类,其余所有事故类别均通过“一类对所有其他类”方法进行了仔细分析。模型仅使用正常类数据进行训练,而测试集则包含事故数据和正常数据。训练集和测试集以两种方式划分。
我们分别使用80%和20%的正常类数据进行训练和测试。事故类的测试结果为随机选取。通过采用代表正常类数据20%的事故类测试样本进行评估,避免了模型偏向占多数的正常类,从而保证了评估的无偏性。该模型可在正常数据与事故数据数量相等的条件下进行测试,以模拟实际应用场景。通过使用80%的正常数据进行训练并隐藏20%的数据,可公正地检验模型的泛化能力。这也反映了在现实生活中,正常情况的发生频率远高于事故,因此让模型接触到较少发生的事故数据显得尤为重要。通过随机选择事故样本,并在不发生过拟合的前提下对所有事故情形进行模型测试,可提高模型的鲁棒性。80/20的数据划分在机器学习中十分常见。这种划分方式在用于学习有意义模式的训练数据与用于性能评估的测试数据之间实现了平衡。
实验使用了用于训练和测试的数据集。正常类别的训练集被用于验证和训练。所有类别的测试数据均接受了测试。
模型剪枝和量化可显著减小模型大小和计算量。该简化模型的准确率相同,但由于参数减少了40%,性能有所降低。对于处理能力较低的边缘设备,模型量化可实现压缩。此优化满足了实时交通监控的精确率和召回率需求。
MobileNets 和 EfficientNet 等轻量化设计可提升实时推理能力。由于其在计算机视觉任务中的高精度和低计算量,这类架构被广泛应用。在嵌入式系统中,这些模型在保持较高事故检测 F1 分数的同时,可将帧处理开销降低 50%。
使用相似的参数进行图像重建和利用多任务学习进行事故检测,可以简化设计。这在不影响模型准确性的前提下,降低了训练时间和计算成本。多任务学习系统简化了交通视频数据处理模型的学习过程。
对比与自监督对抗训练在更短时间内取得了与基础异常检测模型相当的结果。通过收集并泛化交通事故特征,提升了模型在未见数据上的鲁棒性。
所提出的交通异常检测算法在2021年AI城市挑战赛的五个数据集之一Track-4上进行了测试27。这些数据由高速公路提供给爱荷华州交通部(Iowa DOT)。
对比性能评估:
为验证我们的模型,我们在 AI City Challenge Track 4 数据集上将其与最先进的模型进行了基准测试,这些模型包括 GANomaly、f-AnoGAN、OCGAN 以及字节跳动的有监督方法。表2 总结了实验结果。
| 模型 | F1 分数 | 精确率 | 召回率 | AUC |
| GANomaly | 0.87 | 0.88 | 0.86 | 0.9 |
| OCGAN | 0.89 | 0.9 | 0.87 | 0.91 |
| ByteDance (Sup.) | 0.91 | 0.93 | 0.89 | 0.92 |
| Proposed (Dual-EDE) | 0.94 | 0.95 | 0.93 | 0.94 |
表2:方法比较。 该表格通过F1分数、精确率、召回率和准确率对异常检测方法进行了比较。对比了采用和不采用对抗训练的EDE设计。两种采用对抗训练的EDE方法在所有类别中均优于BADU、字节跳动和WHU。数据表明,对抗学习可提升异常检测性能。
双EDE模型在所有基线方法中表现更优,尤其在召回率方面——表明其对罕见异常事件具有更强的敏感性。
访问受限。请登录或开始试用以查看此内容。
为了评估所提出的交通异常检测方法的有效性,我们在单个视频片段上实现了该模型,并生成了可视化结果,以展示系统随时间推移以及在特征空间中的行为表现。尽管结果是通过模拟的 EDE 流程获得的,但其结果与实际模型预期得出的定性结论高度一致。
异常分数时间线展示了模型逐帧识别异常事件的置信度(图6)。异常分数的峰值对应于图像动态中的剧烈变化,例如突然的运动或视觉畸变,类似于车辆碰撞或急减速等现实世界中的事件。初始帧的分数相对较低,表明交通流较为平稳。时间线中显著的峰值提示可能存在交通异常,该情况将在定性图像输出中进一步分析。通过利用帧级别的偏差信号,系统能够有效区分正常与异常模式。
访问受限。请登录或开始试用以查看此内容。
本研究提出了一种基于深度学习的交通异常检测系统,该系统采用EDE架构,以无监督方式训练,用于识别真实监控视频中的单车辆和多车辆交通事故。通过建模典型交通行为,该系统将偏离正常模式的情况检测为可能的异常,无需依赖标注的异常数据,从而解决了智能交通监控中可扩展性和数据稀疏性的挑战。本研究通过展示潜在空间一致性与重构损失的联合使用,推动了该领域的发展,实现了有效的时空异常识别。
局限性:
尽管双EDE模型表现出较强的性能,但仍需认识到某些限制,以确保透明度并为未来的研究提供参考。
输入模态限制:当前框架仅在RGB视频流上运行,未整合其他感知源(如激光雷达、热成像或GPS数据),而这些数据在视觉条件复杂的环境中可能提供额外的线索。
数据集代...
访问受限。请登录或开始试用以查看此内容。
作者声明无利益冲突。
本研究未获得外部资金支持。作者谨此感谢印度哥印拜陀阿姆瑞塔计算学院为开展本研究提供的必要硬件设备和宝贵支持。
访问受限。请登录或开始试用以查看此内容。
| 姓名 | 公司 | 目录编号 | 评论 |
|---|---|---|---|
| AI City Challenge 第4赛道数据集 | AI City Challenge (https://www.aicitychallenge.org) | 第4赛道,2021年发布 | |
| CUDA Toolkit | NVIDIA Developer | 版本 11.3 | |
| cuDNN 库 | NVIDIA Developer | 与 CUDA 11.3 兼容 | |
| GPU 工作站集群(训练用) | Amrita 计算学院 | — | |
| 本地工作站(雾节点) | Amrita 计算学院 | — | |
| Matplotlib | matplotlib.org | 版本 3.3+ | |
| NVIDIA Jetson Nano(边缘设备) | NVIDIA | 945-13450-0000-100 | |
| NVIDIA RTX 3060 GPU(工作站) | NVIDIA | 因制造商而异 | |
| NumPy | numpy.org | 版本 1.19+ | |
| OpenCV | OpenCV.org | 版本 4.5+ | |
| Pandas | pandas.pydata.org | 版本 1.1+ | |
| Python | Python 软件基金会 | 版本 3.8+ | |
| PyTorch | PyTorch (https://pytorch.org) | 版本 1.10+ | |
| Scikit-learn | scikit-learn.org | 版本 0.24+ | |
| Ubuntu Linux(操作系统) | Canonical Ltd. | 版本 20.04 LTS |
访问受限。请登录或开始试用以查看此内容。
申请许可以重复使用本 JoVE 文章的文本或图表
申请许可