Real-Time Video Analytics: The Killer App for Edge Computing

A geographically distributed architecture of public clouds and edges that extend down to the cameras is the only feasible approach to meeting the strict real-time requirements of large-scale live video analytics.

由公共云和向下延伸到摄像头的边缘组成的地理分布式架构是满足大规模实时视频分析的严格实时要求的唯一可行方法。

 用途:交通规划和安全方面

  1. 交通零度视野
  2. 自动驾驶和智能汽车
  3. 个人数字助理
  4. 监控和安全
  5. 增强现实

基础设施设计和特点

 

地理分布式视频分析基础设施。每个组织都部署自己的不同规模的私有群集,并依赖公共云提供更多容量。摄像机、私有群集和公共云之间的网络链路具有不同的带宽(由箭头的宽度表示)。

Rocket:视频分析软件堆栈

视频分析软件堆栈。视频流水线优化器将视频查询转换为调用深度神经网络(DNN)模型的视觉模块流水线,同时估计流水线的资源精度概况。然后,管道及其对应的配置文件被传递到资源管理器,资源管理器在边缘、私有集群和云的地理分布集合上执行它们。Rocket还使用摄像头管理器和GPU管理器来虚拟化跨多个查询管道的平移-倾斜-缩放和GPU功能。视频存储层提供对存储的视频的交互式查询。ML:机器学习。

用于计划的资源准确性配置文件

Rocket的资源优化器根据它们的资源精确度概况以及它们对处理延迟的容忍度(即帧到达和处理之间的时间)来调度数千个视频查询。7它使用模型预测控制,并优先将资源分配给那些在相同分配的资源量下提供更高精确度的查询。我们的系统还决定模块在流水线中的位置,以及是否在摄像头、私有群集或云中执行每个模块。这涉及到考虑所有位置的多个资源(计算、网络)的容量。

对来自交通路口和室内监控摄像头的实时摄像头流(HD流)进行的真实视频分析评估表明,与竞争的公平调度程序相比,我们的系统获得了80%的平均查询准确率,并且>用于配置文件生成的CPU周期减少了3.5倍。

在GPU上高效执行DNN

在GPU上高效执行DNN对于许多视觉任务,在GPU上执行DNN至关重要。最简单的模型是一个应用程序,它通过使用库提供的内存分配和矩阵计算函数在GPU上设置和执行相应的操作。每次调用该库都会导致计算内核的一个或多个不同实例排成一列,以便由GPU运行时执行。然而,当几个应用程序尝试对传入视频执行可能不同的DNN计算时,这种简单的方法在常见设置中是不够的。这种并发症有几个可能的来源。首先,将对应于DNN的权重矩阵加载到GPU内存是一个重量级操作,并且模型可能足够大从10到100兆字节因此它们不能全部预加载到内存中。因此,考虑何时加载或逐出各个模型非常重要。其次,以批处理模式执行模型(即同一模型在多个输入上并行执行)比将一系列异构模型提交到GPU执行效率高得多。许多应用程序共享它们执行的模型和输入,因此跨多个应用程序组合模型以减少资源需求可能是有益的。最后,有些模型太大,不能在边缘执行(例如,VGG16模型需要30个Gflop),所以如果延迟允许,最好在云中执行。我们在DNN执行服务中实现了上述优化,该服务运行在每台配备GPU的机器上。所有DNN请求都针对此服务运行,从而在多个应用程序之间协调这些复杂性。近似调度依赖于这样一个事实,即对于每个DNN,我们可以应用一组优化来产生具有不同精度和资源使用的DNN变体。机器学习社区已经提出了几项优化,包括用较小的因子替换矩阵,限制用于表示模型参数的位数,以及以系统的方式降低模型的体系结构复杂性。此外,我们还提出了新的优化,如专门化-用更小、更快的模型替换对许多类(数千个对象)进行分类的大而慢的模型,这些模型只处理运行时观察到的类(少于10个对象)。这样的优化通常会显著降低资源需求:分解后的VGG16模型消耗的周期减少4.9倍,而精确度损失0.5%。我们的系统将这些优化收集到DNN的单个“优化编译器”中。它选择适当的DNN变体及其位置来优化整个查询流水线(不仅仅是DNN)的准确性、延迟和成本。我们相信类似的设计考虑因素也适用于GPU以外的新兴加速器,如FPGA和自定义ASIC。为了节省空间,我们省略了细节,但请参考我们以前的工作以获得完整的描述。

虚拟化可操控摄像机

摄像头可以是电子操控的(具有PTZ功能),并且必须同时支持多个应用查询-例如基于车牌识别和交通量监控的琥珀警报扫描。同时支持多个此类应用程序查询的主要挑战是视图和图像要求可能不同。允许查询直接控制摄像机不可避免地会导致冲突。如果车牌识别系统放大以获得更好的文本视图,交通流量监视器将丢失较大的图像,并且无法统计十字路口的所有车辆。Rocket的相机管理器虚拟化了相机硬件,从而打破了相机和应用程序查询之间的一对一绑定。该查询将其自身绑定到相机的虚拟实例,并指定其视图要求-例如,方向、分辨率和缩放。我们的系统旨在为每个应用程序查询提供满足其要求的最新视图。虚拟摄像机抽象使得转向改变对应用程序是透明的。这一设计的灵感来自于观察,即可以通过重放上一个视图中的图像来掩盖暂时将摄像机转向的情况,并且当在此期间视图中预计不会有重大变化时,实际场景的错误表示的影响将降至最低。为了知道何时转向,我们的软件学习其视图中的运动模式,并预测它所管理的每个视图中何时可能发生运动或变化。例如,交通系统表现出规则的、受限制的运动,这使得了解场景中的运动模式成为可能。然后,摄像机可以快速移动到支持不同视觉应用所需的不同视图。使用实时摄像头源进行的实验表明,在典型的交通路口,与允许应用程序查询直接控制摄像头的系统相比,我们的系统在宽广的场景中捕获的感兴趣的事件要多80%

应用程序级优化

1.Intelligent frame selection.
2.Intelligent feed selection. 
3.Delay-tolerance.

交通视频分析

自2016年12月以来,华盛顿州贝尔维尤的一个多式联运物品柜台使用实时交通摄像头全天候运行,以帮助该市了解和跟踪汽车、行人和自行车的数量。该系统会对交通控制操作员使用的异常交通模式发出警报。计数器实现上述指定的接口。它们在一个小型的分布式机器集群上运行,并在被监控的交叉口提供定向计数。这些计数器的输出将供给控制红绿灯持续时间的驱动系统。

华盛顿州贝尔维尤基于实时交通路口摄像头流的交通分析的生产部署详细信息。该图显示了同时分析多个摄像头视频源的控制面板、视频分析管道和方向体积图表。

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值