Anderson 视角

为人工智能分析设计的视频编解码器

mm
将 Unite.AI 添加到您在 Google 上的首选来源

尽管科幻惊悚片《圈子》(2017)更多地关注社交网络的伦理影响,而不是外部视频分析的实际情况,但剧中出现的“SeeChange”摄像头才是真正将电影推向“科幻”类别的原因。

来自科幻惊悚片《圈子》(2017)的‘SeeChange’摄像头/监视设备。

来自科幻惊悚片《圈子》(2017)的‘SeeChange’摄像头/监视设备。

该设备是一个无线且自由移动的设备,大小约相当于一个大弹珠,它不太可能实现的是,不是缺乏太阳能板或从其他环境来源(如无线电波)获取能量,而是它需要24/7压缩视频,而它能够维持的电荷非常少。

为此类廉价传感器供电是计算机视觉(CV)和视频分析领域的核心研究领域,特别是在非城市环境中,传感器需要从非常有限的电源(电池、太阳能等)中获得最大性能。

在需要将图像内容发送到中央服务器(通常通过传统的蜂窝网络)的情况下,选择很难:设备需要在本地运行某种轻量级神经网络,以便只发送优化的数据段到服务器进行处理;或者它需要发送“哑”视频让连接的云资源进行评估。

尽管通过基于事件的智能视觉传感器(SVS)可以实现运动激活,减少这种开销,但这种激活监测也会消耗能量。

依赖电源

此外,即使激活很少(例如,一只羊偶尔进入视野),设备没有足够的电源来发送未压缩的视频;它也没有足够的电源来不断运行流行的视频压缩编解码器,如H.264/5,这些编解码器需要连接的硬件或不远的下一个充电会话。

三个典型计算机视觉任务的视频分析管道。视频编码架构需要针对任务进行训练,通常针对将接收数据的神经网络进行训练。来源:https://arxiv.org/pdf/2204.12534.pdf

三个典型计算机视觉任务的视频分析管道。视频编码架构需要针对任务进行训练,通常针对将接收数据的神经网络进行训练。 来源:https://arxiv.org/pdf/2204.12534.pdf

尽管广泛使用的H.264编解码器比其后继者H.265具有更低的能耗,但它具有压缩效率较差。其后继者H.265具有更好的压缩效率,但能耗更高。Google的开源VP9编解码器在这两个方面都优于它们,但它需要更高的本地计算资源,这在廉价的IoT传感器中带来了额外问题

至于在本地分析流媒体:当您运行甚至最轻量级的本地神经网络以确定哪些帧(或帧的区域)值得发送到服务器时,您通常已经花费了通过发送所有帧来节省的能量。

使用不太可能连接到电网的传感器提取牛的掩码表示。它是否将其有限的电源容量用于本地语义分割,使用轻量级神经网络;通过发送有限的信息到服务器以获取进一步的指令(引入延迟);或者通过发送“哑”数据(浪费带宽)?来源:https://arxiv.org/pdf/1807.01972.pdf

使用不太可能连接到电网的传感器提取牛的掩码表示。它是否将其有限的电源容量用于本地语义分割,使用轻量级神经网络;通过发送有限的信息到服务器以获取进一步的指令(引入延迟);或者通过发送“哑”数据(浪费带宽)? 来源:https://arxiv.org/pdf/1807.01972.pdf

很明显,“野外”计算机视觉项目需要专用的视频压缩编解码器,这些编解码器针对特定神经网络的要求进行了优化,用于语义分割、关键点检测(人体运动分析)和对象检测等各种任务。

如果您可以在视频压缩效率和最小数据传输之间取得完美的平衡,您就更接近SeeChange,并能够部署价格合理的传感器网络到不友好的环境中。

AccMPEG

来自芝加哥大学的新研究可能已经取得了这样的编解码器的进展,形式为AccMPEG——一种在低延迟、服务器端深度神经网络(DNN)高精度和本地计算需求极低的情况下运行的新型视频编码和流媒体框架。

AccMPEG架构。来源:https://arxiv.org/pdf/2204.12534.pdf

AccMPEG架构。 来源:https://arxiv.org/pdf/2204.12534.pdf

该系统通过评估每个16×16像素的宏块对服务器端DNN的精度影响程度来节省前期方法的开销。以前的方法通常需要评估每个像素的精度或执行本地电气昂贵的操作来评估图像的哪些区域可能最有趣。

在AccMPEG中,AccGrad模块估计宏块的编码质量可能对最终用例(如服务器端DNN)有多大影响,例如服务器端DNN试图计数人数、对人体运动进行骨骼估计或其他常见的计算机视觉任务。

当视频帧进入系统时,AccMPEG首先通过一个廉价的质量选择模型(称为AccModel)处理它。任何不太可能有助于服务器端DNN有用计算的区域基本上是无关紧要的,应该标记为以最低可能的质量进行编码,而显著区域应该以更好的质量发送。

该过程提出了三个挑战:可以快速执行该过程以实现可接受的延迟而不使用耗能的本地计算资源吗?可以建立帧率和质量之间的最佳关系吗?可以快速训练一个模型以适应特定的服务器端DNN吗?

训练后勤

理想情况下,计算机视觉编解码器应该预先训练到特定神经网络的确切要求。然而,AccGrad模块可以直接从DNN中推导出来,只需两次前向传播,就可以节省十倍的标准开销。

AccMPEG仅需15个epoch的三次传播即可训练AccGrad,并且可以使用其当前模型状态作为模板潜在地重新训练,至少对于类似的计算机视觉任务。

AccModel使用预训练的MobileNet-SSD特征提取器,这在廉价的边缘设备中很常见。在12 GFLOPS的吞吐量下,该模型仅使用典型的ResNet18方法的三分之一。除了批量归一化和激活之外,架构仅由卷积层组成,其计算开销与帧大小成比例。

AccGrad消除了对最终DNN推理的需求,改善了部署后勤。

AccGrad消除了对最终DNN推理的需求,改善了部署后勤。

帧率

该架构在10fps下运行最佳,这使其适合用于农业监测、建筑物劣化监测、高视角交通分析和人体运动的骨骼推理等用途;然而,快速移动的场景,如低视角交通(车辆或人),以及其他需要高帧率的场景都不适合这种方法。

该方法的节俭性在于,相邻的宏块可能具有相似的价值,直到宏块低于预估精度。通过这种方法获得的区域更加清晰地划分,可以更快地计算出来。

性能改进

研究人员在一块60美元的Jetson Nano板上测试了该系统,该板具有一个128核的Maxwell GPU,以及其他廉价的等效设备。OpenVINO被用来抵消非常稀疏的本地DNN到CPU的能量需求。

AccModel最初在一台具有8个GeForce RTX 2080S GPU的服务器上离线训练。虽然这对于初始模型构建来说是一种强大的计算能力,但该系统使可能的轻量级重新训练,以及模型可以调整到不同DNN的某些容差参数的方式,意味着AccMPEG可以成为一个需要最少维护的系统的一部分,在野外环境中。

首次发布于2022年5月1日。

机器学习作家,人类图像合成领域专家。曾任Metaphysic.ai研究内容负责人,直至其解散并并入DNEG的Brahma.ai。
Portfolio site:martinanderson.ai
Contact:[email protected]