随着全向摄像头硬件成本的降低以及各种扩展现实应用的激增,越来越多的 360° 视频被捕获。为了充分释放其潜力,我们希望找到一种高级的视频分析方法,在本文中,我们介绍了 OmniSense,这是一种用于在线沉浸式视频分析的新型边缘辅助框架。OmniSense 实现了低延迟和高精度,应对分析 360° 视频所需的巨大计算量和网络资源的挑战。OmniSense 引入了轻量级球形感兴趣区域 (SRoI) 预测算法,以修剪 360° 帧中的冗余信息。结合视频内容和网络动态,它可以智能地扩展视觉模型,以优化资源利用率。我们使用商用设备实现了 OmniSense 原型,并在各种从现实世界收集到的 360° 视频上对其进行了评估。结果表明,与资源无关的基线相比,在端到端延迟相近的情况下,它的准确性提高了 19.8% – 114.6%。同时,它实现了 2-2.4 倍的加速,同时保持精度与基线的最高精度相当。
来源:IEEE INFOCOM 2023
题目:OmniSense: Towards Edge-Assisted Online Analytics for 360-Degree Videos
作者:Miao Zhang; Yifei Zhu; Linfeng Shen; Fangxin Wang; Jiangchuan Liu
原文链接:https://ieeexplore.ieee.org/document/10229105
内容整理:李雨航
简介
近年来,越来越多经济实惠的全向相机上市,例如 Insta360 ONE X2 和 GoPro MAX。与仅捕获窄视场 (FoV) 的传统摄像头录制视频不同,全向摄像头可录制 360° 视频,覆盖全向 FoV,而且没有盲点。尽管此类 360° 视频因为人类观众提供身临其境的体验而广受欢迎,但其潜力尚未充分发挥。作为对物理世界的真实记录,如果视频内容能够被自动分析,360° 视频将可以进一步帮助人类、机器人和设备理解周围环境并与之互动。
受到常规视频视频分析系统的启发,我们相信沉浸式视频分析(将视觉算法应用于 360° 视频内容以自动提取知识)将成为释放360°视频技术全部潜力的关键。未来几年,全向摄像头与沉浸式视频分析相结合将为各种扩展现实(XR)应用构建关键的沉浸式视觉传感界面。例如,自动驾驶汽车可以通过分析车顶全向摄像头拍摄的视频来充分了解周围环境,从而安全行驶。巡逻民警可以通过佩戴式全向摄像头的视频分析结果,了解大型公共场所活动的全貌,确保任何突发事件都不会被忽视。
虽然前景广阔,但实现低延迟和高精度沉浸式视频分析面临严峻的计算和网络资源挑战。现代视频分析系统通过深度神经网络 (DNN) 提高准确性,众所周知,深度神经网络是资源密集型的。典型的移动设备甚至没有配备足够的计算资源来支持对常规视频的分析,更不用说在相同感知质量下比常规视频大 4 到 6 倍的 360° 视频了。此外,通过公共互联网将大量 360° 视频流式传输到远程数据中心或云可能会产生过高的带宽成本和不可接受的延迟。因此,需要一种边缘辅助架构来提供理想的解决方案,其中将全部或部分分析工作负载转移到边缘服务器(或边缘云)进行处理。
然而,针对 360° 视频的边缘辅助沉浸式分析仍然存在明显的挑战。360° 框架在内部表示为球形图像,并将其投影到 2D 平面上以实现存储和交付。然而,投影的全景图像不能简单地视为常规视频帧。这是因为现有的视觉模型是针对 2D 透视图像 (PI) 设计和训练的。球体到平面的投影不可避免地会引入几何畸变和边界不连续性,从而降低模型的准确性。这使得大多数视觉模型无法用于高精度全景图像分析。此外,即使使用专门为全景图像设计的视觉模型,将高分辨率(例如 8K)全景帧上传到边缘服务器的带宽成本也很难由当今的网络基础设施承担。一种解决方法是将整个球形内容投影到多个无失真 PI。然而,在不影响准确性的情况下减少分析所有 PI 的延迟仍然是一个问题。
本文提出了 OmniSense,这是一种边缘辅助沉浸式视频分析框架,通过自适应地利用具有不同资源需求和能力的视觉模型来分析不同的球形感兴趣区域 (SRoI),实现低延迟和高精度。从本质上讲,OmniSense 由现成的视觉模型提供支持,不需要重新设计或重新训练现有模型。因此,为常规视频设计的视觉模型的进步也可以使 360° 视频受益。据我们所知,OmniSense 是第一个沉浸式视频分析框架,特别关注实际系统中的资源效率。我们的贡献可总结如下。
- 通过分析从现实世界收集的 360° 视频数据集,我们确定了 360° 视频的内容特征和资源节省的可能。
- 我们提出了 OmniSense,一种边缘辅助框架,通过动态自适应地分配不同的视觉模型来分析不同 SRoI 对应的 PI,从而在计算能力、网络和延迟限制下最大限度地提高整体精度。
- 我们设计了一种轻量级的 SRoI 预测算法和一种针对特定内容的模型性能估计方法。在此基础上,我们进一步解决了延迟受限的模型分配问题。
- 我们使用商用设备实施和部署 OmniSense 原型以进行性能评估。广泛的评估结果表明,它在相似的端到端延迟的情况下将基线的准确性提高了高达 114.6%,并且以 2.0× – 2.4× 的加速大约达到或超过了基线的最高精度。
背景与相关工作
常规视频的在线分析
近年来,由于网络摄像机不断增加以及计算机视觉算法的进步,在线视频分析引起了广泛关注。早期系统依靠资源丰富的数据中心或云来实现高精度分析,但需要专用或高质量网络链路的支持。为了方便对具有无线或不稳定网络的摄像机进行视频分析,现有系统已对边缘资源进行了研究。尽管网络延迟减少了,但如果没有强大后端的帮助,资源有限的边缘设备很难实现高精度。
因此,协作分布式资源(例如设备、边缘和云资源)被认为有望实现低延迟和高精度。在这种情况下出现了几种技术来提高准确性,同时减少前端设备和后端之间传输的数据量。一种流行的技术是通过调整视频编码参数(例如,分辨率)以及任务部署参数(例如,前端设备或后端)来在资源和准确性之间取得平衡。鉴于感兴趣的事件在时间上可能是稀疏的,研究了视频帧过滤来通过在前端设备上过滤掉无关的视频帧,仅将与事件相关的帧上传至后端进行进一步处理,以节省资源。此外,为了克服在性能较弱的前端设备上进行大规模深度学习推断的资源挑战,研究了将模型推断分配在前端设备和后端之间,以尽量减少中间数据传输开销。最近,基于感兴趣区域(RoIs)对视频帧中冗余信息进行剪枝的方法已被证明是减少数据传输和分析量的另一种可行方式。
沉浸式视频分析
已经提出了几种将全景相机捕获的球面帧投影到二维平面上的方法,例如等距投影(ERP)和立方体映射投影。因此,实现沉浸式视频分析的一种自然方法是直接将现成的视觉模型应用于投影的全景图像。然而,投影过程中不可避免地引入了全景图像的几何扭曲和不连续性,对最初设计和训练用于平面图像的视觉模型的准确性产生负面影响。图1中给出了一个例子。从左侧球面图像通过ERP获得的右上角2D图像,在极地区域遭受严重扭曲,并且边界上存在不连续性。
一种解决方法是通过一般透视投影(例如,图 1 中所示的心轴投影)将整个球面内容表示为多个无失真 PI。每个投影 PI 对应于部分 FoV,并且可以通过离线进行很好的分析。文章 Tangent images for mitigating spherical distortion 建议将球形图像表示为与细分的二十面体相切的多个平面图像网格,然后将现有的 DNN 应用于这些切线图像。由于它需要处理大量的 PI 以最大限度地减少失真并覆盖整个球形内容,因此该策略既耗费资源又耗时。文章 Object detection in equirectangular panorama 提出了一种多投影方法,将球体划分为四个宽重叠的子窗口,并通过立体投影将每个子窗口映射到平面。它们专注于提高准确性,但没有解决实现实际系统时的计算和网络资源挑战。
考虑到卷积神经网络(CNN)被广泛采用作为流行视觉模型中的特征提取器,另一方面的研究专注于将对投影畸变的不变性明确编码到CNN中。文章 Learning spherical convolution for fast features from 360° imagery 提出将卷积核尺寸增加到极地区域以逼近ERP图像中的畸变。文章 Spherenet: Learning spherical representations for detection and classification in omnidirectional images 则提出根据球面图像表示的几何形状调整卷积滤波器的采样网格位置来处理ERP图像。所有这些研究都需要重新设计卷积滤波器,并重新训练(或至少微调)现有模型。相比之下,我们致力于打造一种即插即用的沉浸式视频分析框架,即应用在没有修改的全景图像上训练的现有模型。
动机研究
在这项工作中,我们以一项基本视频分析任务 —— 对象检测 作为案例研究,研究 360° 视频的内容特征,并推动资源高效的沉浸式视频分析系统的设计。
激励学习设置
视频数据集和模型:我们使用一组自行收集的超高清 360° 视频数据集,如表 1 所示,以涵盖各种真实世界的情景。这些 YouTube 视频是由安装在驾驶通过美国城市或高速公路的车辆车顶上的全景相机拍摄的。自拍视频是由一个人手持 GoPro MAX 相机在不同的照明条件下行走于街区或校园中进行拍摄的。每个视频长度为7分钟,以ERP格式存储。在这项工作中,我们使用了 scaled-YOLOv4 进行物体检测任务,因为它提供了一系列不同资源需求和准确性的模型变种,具体详情请见表格 2。模型权重是在 MS COCO 数据集上进行预训练的。通常,输入尺寸更大的模型变种在更高的资源消耗的代价下可以实现更高的准确性。因此,通过选择适当的模型变种,可以在资源和准确性之间取得良好的平衡。
沉浸式物体检测标准:物体检测旨在确定图像中物体的位置和类别。对于二维图像,检测到的物体通常通过矩形边界框(BBs)进行标注。不幸的是,正如图1所示,由于球面图像的特殊几何结构,ERP 图像上的矩形边界框(黄色框)无法紧密准确地包围球体上的物体。这样的边界框也会在与物体中心相切的全景图像上经历扭曲。因此,已经提出了几种 360° 准则来限定物体并计算两个物体的交并比(IoU),例如在切平面上的边界框、圆形边界框和 IoUs。
在这项工作中,我们使用了球面准则,包括球面边界框(SphBB)和球面交并比(SphIoU),因为这些准则具有快速和准确的特点。图 1 中的白色方框展示了球面边界框在球面图像、ERP 图像和全景图像上的样子。具体而言,球面边界框直接定义在球面上,由一个球面区域(θ,ϕ,Δθ,Δϕ)表示,其中 θ 和 ϕ 分别表示物体中心的经度和纬度;Δθ 和Δϕ 分别表示物体占据的水平和垂直视场角。所有的数值都以度数/弧度为单位。
真实场景的沉浸式物体检测结果:由于缺乏快速和可扩展的 360° 视频标注工具,我们开发了自己的标注流程,以生成离线的近似真实结果。由于在真实标注中最大限度地提高准确性是首要考虑的问题,我们采用了最准确的模型,即 YOLOv4-P6。
我们首先使用较低的置信度阈值(例如 0.3)对输入的 ERP 帧进行模型运行,以获取粗略的检测结果。考虑到对象的中心在不同的球面图像表示中几乎保持一致,我们通过 gnomonic 投影从检测到的对象中心提取无畸变的全景图像。具体来说,对于每个检测到的对象,我们将以对象中心为中心的60°×60°球面区域投影到平面上,然后在该平面上应用视觉模型进行进一步的精细调整。我们只保留完全被全景图像包围的对象的检测结果,以避免在边界处重复检测。然后,将全景图像的细粒度检测结果反投影到球面上,通过球面坐标变换获得每个检测的球面边界框(SphBB)。最后,应用球面非最大抑制(NMS)对所有获取的 SphBB 进行处理,得出最终的检测结果。
我们凭经验将投影球形区域设置为 60°× 60°,以消除畸变并尽可能涵盖更多的对象。对于少数靠近摄像机的、跨越大于60°的广阔视场角的对象,我们会手动进行标注。这种方法背后的直觉是,由于输入分辨率的提高,无法从全景图像中检测到的小物体很可能从 PI 中检测到。我们检查了检测结果,发现该方法大致准确,尽管它有时可能会忽略微小的独立物体。
观察结果和启示
360° 视频中的大多数对象仅占据帧的很小区域
我们首先研究了 360° 视频中物体的可见大小。为了量化物体的大小,我们分析了数据集中所有视频的真实检测结果。具体来说,我们计算了单位球体上每个球面边界框(SphBB)的面积,并将 SphBB 的面积标准化为球体的表面积。图2显示了所有 360° 视频的标准化物体面积(NOA)的累积分布函数(CDF)。为了比较,我们还绘制了 COCO 数据集训练集的 NOA 的 CDF。如图所示,在 360° 帧中物体所占的面积要远小于传统 2D 图像中的物体面积,这表明处理整个 360° 帧需要能够在高分辨率输入帧中检测到微小物体的视觉模型。然而,这样的模型被认为速度慢且昂贵。现状策略即将输入帧下采样以匹配DNN的输入尺寸,会使得微小物体变得模糊,从而导致检测准确性降低。例如,如果我们将一个 360° 帧下采样为 640×640 像素,那么在标准化面积介于 到
之间的许多物体将只占据 4 到 41 个像素的面积,这个面积太小而无法被检测到。
观察结果揭示了球形框架的要求与现成视觉模型的能力之间的差距。弥补这一差距的一种前瞻性方法是采用多个模型以 “分而治之” 的方式分析整个球形内容。
同一类别物体的面积相差几个数量级
图 3 进一步显示了 NOA 对于两个特定类别:人和汽车的 CDF。可以看出,同一类别的物体所占据的面积可能相差三到四个数量级。在芝加哥驾车视频中,汽车的尺寸变化比人的变化更大,因为人通常出现在人行道上,距离安装在驾驶汽车车顶的摄像头有一定距离。这与 Sunny-walk1 视频不同,在 Sunny-walk1 视频中,人们可以非常接近手持摄像机,从而占据了捕获的视图的很大一部分。
观察结果表明,对象大小分布是特定于视频的,并且不能简单地从其可见大小来区分对象类别。对象大小和对象类别都是表征视频内容和检测模型能力的重要参考因素。
360° 帧中物体的空间分布是有偏差的
接下来我们研究 360° 帧中物体的空间分布。具体来说,我们考虑三个球形区域 (SR),每个区域覆盖球体上的 60° × 60° FoV。它们分别表示为 SR-1 (0, 0, 60, 60)、SR-2 (−90, 0, 60, 60) 和 SR-3 (0, 90, 60, 60)。我们统计了物体中心落入这些 SR 的数量,并在图 4 中展示了它们的变化。如图所示,物体的空间分布存在偏差,并且存在大量的像素没有对物体检测任务有用的信息。例如,捕捉到天空景象的 SR-3 中包含着稀有的感兴趣对象。因此,将 SR-3 与 SR-1 和 SR-2 同等对待将导致资源的浪费。
这些观察结果意味着,尽管 360° 帧的尺寸很大,但可以修剪许多像素以节省资源,并且使用具有不同能力的模型来处理不同的球形区域可能是进一步提高资源效率的方法。
360° 视频的内容可以是高度动态的
图 4 的另一个观察结果是,对于 SR-1 和 SR-2,对象的数量随时间变化很大。这主要是由于摄像机移动时场景发生变化造成的。例如,当安装摄像头的汽车转弯或驶过十字路口时,物体可能会频繁出现或消失。这表明即使对于相同的 SR,最合适的视觉模型也可能随着时间的推移而改变。
系统设计
我们的动机研究揭示了沉浸式视频分析中的资源节约的机会所在。然而,要实现一个资源高效的系统,还需要克服一些挑战。为了修剪 360° 帧中的无用像素并方便使用现成的视觉模型,我们引入了兴趣球面区域 (SRoI) 来描述包含感兴趣对象的兴趣区域。然而,一个挑战是如何识别出 SRoI。这不是一次性的简单任务,因为 SRoI 的集合容易受到视频场景变化的影响。此外,为 SRoI 选择最适合的推断模型是棘手的,因为它需要深入了解 SRoI 的内容特征、模型的能力,甚至是网络条件(如果启用了远程推断)。此外,高级应用程序通常会为一个帧设置固定的分析延迟预算,而不考虑其 SRoI 的数量。这使得不同 SRoI 的模型选择有关联,因为向一个 SRoI 分配过多的资源可能会剥夺其他 SRoI 改善准确性的机会。
我们通过提出OmniSense来应对这些挑战,OmniSense是一个适用于低延迟和高准确性的沉浸式视频分析的边缘辅助框架。OmniSense假设分析工作负载可以从捕获360°视频的移动设备卸载到物理上靠近移动设备的边缘服务器中进行处理。移动设备运行廉价模型来分析简单的SRoIs,并在网络条件较差时提供最低准确性保证,而边缘服务器在良好的网络条件下执行昂贵的模型来分析复杂的SRoIs并提高准确性。
图 5 展示了 OmniSense 的概览。具体而言,对于每个输入的 ERP3 帧(①),SRoI 预测器(§IV-A)首先根据最近帧的检测结果预测感兴趣对象可能出现的位置。然后,它将预测的 SRoI 的坐标和内容特征向量提供给资源分配器(②),资源分配器估计每个 SRoI 上每个模型的检测准确度和推断延迟(§IV-B)。在给定分析延迟预算和当前网络条件的情况下,资源分配器进一步解决模型分配问题,并为输入帧输出执行计划(§IV-C)。一旦接收到执行计划(③),推断调度器通过 gnomonic 投影从输入 ERP 帧中提取每个 SRoI 的投影图像(PI),每个PI 的尺寸是其分配模型的输入尺寸。投影后,PI 立即发送到适当的本地或远程服务器进行推断(④)。随后,所有 PI 的推断结果(⑤)被集成和转换以获得最终的球面检测结果,这将进一步发送回 SRoI 预测器以进行下一帧的 SRoI 预测,并且最新的网络条件也将更新给资源分配器(⑥)。
轻量级 SRoI 预测
尽管 360° 视频中的内容变化非常剧烈,但连续的帧之间具有最小的内容差异。这激发了我们使用最近帧的检测结果来获取有关对象的空间分布的最新知识的动机。与 SphBB 类似,我们使用元组(θ,ϕ,Δθ,Δϕ)来表示一个 SRoI。虽然一个 SRoI 可以是任意大小,但我们假设所有 SRoI 的水平和垂直视场角都是 f,以简化后续的资源分配。然后,基于最近 δ(默认为2)帧的历史检测结果,我们设计了一个轻量级的预测算法,如算法 1 所示,以获得一组覆盖所有历史对象的 SRoI。
关键思想是对于每个历史对象,我们尝试将其合并到一个现有的 SRoI 中;如果失败,即合并后的水平或垂直视场角超过了 f,我们将创建一个新的 SRoI 来包围它。设置适当的 f 值是困难的。一个小的值可能会将大对象切割开,而一个大的值可能会引入投影失真,这两种情况都会导致检测结果不准确。因此,我们根据经验将 f 设置为 60°,以避免投影失真,然后以特殊方式处理大对象。具体而言,如果一个对象无法被一个 f×f 的视场角所包围,我们创建一个特殊的 SRoI,其面积是一个对象的面积的 γ 倍(默认为 1.1 倍)。由于特殊的 SRoI 可能非常大,这可能会给共位的小对象引入投影失真,因此我们只保留其中最大的对象的检测结果。
仅仅依靠历史的检测结果可能会产生不利的级联效应。例如,在紧张的延迟预算下,只能使用简单的模型来减少延迟。这可能导致只有少数对象被检测出来,从而减少了对后续帧预测的 SRoI 数量。减少的 SRoI 可能进一步减少了对后续帧的检测对象数量。为了打破这个恶性循环,我们设计了一个球形物体发现机制。它巧妙地利用未充分利用的延迟预算,通过将 ERP 帧发送到服务器进行推断来探索新的对象。检测结果将转换为 SphBBs,并附加到历史检测结果中,用于下一帧的 SRoI 预测。如果预测的 SRoI 数量持续较低,这个机制将自动触发。这样做的原因是,尽管 ERP 检测不能准确地发现和定位所有对象,但它可以帮助发现全球出现对象的新的球形区域。
特定内容的模型性能估计
为了为预测的 SRoI 分配适合的视觉模型,我们需要估计每个 SRoI 的每个模型的性能。对于像 scaled-YOLOv4 这样的一次性目标检测模型,其在固定资源设备上的推断延迟大致是一致的,并且可以在离线状态下进行配置文件分析。因此,我们将一个目标检测模型的每个图像推断延迟估计为它在目标设备上进行数千次运行的平均推断时间。
由于训练数据集中存在偏差,预训练的目标检测模型的准确性会随着图像内容的不同而变化。最近的一项工作[24]考虑了固定摄像机,并尝试通过将不同对象大小级别的检测能力与图像的对象大小分布相结合,来估计模型对2D图像的准确性。然而,正如我们的测量结果所示,仅仅使用对象大小来表征移动摄像机拍摄的360°视频内容是不足够的。因此,我们考虑对象的大小和类别,设计了一种适应我们问题的准确性估计方法。
我们首先将对象分为三个大小级别:小、中和大。不同于”Flexible high-resolution object detection on edge devices with tunable latency”中使用像素,我们使用NOA作为统一的尺度度量来关联2D和球形图像中的对象大小。由于我们的模型是在COCO数据集上训练的,我们将大小级别的阈值设置为COCO的NOA分布的第33.33百分位数(0.0044)和第66.66百分位数(0.0354),即小对象的NOA不大于0.0044,中等对象的NOA在0.0044和0.0354之间。基于这个分类,我们正式定义模型 i 的通用精度向量
延迟受限模型分配
给定用于分析 360° 帧的分析延迟预算 T,资源分配器负责在预测的 SRoI 上分配有限的资源,以实现较高的整体检测精度。假设我们有一组模型 ℳ = {0, 1,・・・, m} 和一组预测的 SRoIs ℛ = {1, 2,⋯,r}。令 xi,j为 0-1 指示变量,如果分配模型 i 来分析 SRoI j,则该变量为 1。我们将 xo,j设置为 1 来表示 SRoI j 将被忽略而不进行处理的特殊情况。当 SRoI 包含很少的视觉信息或可用资源异常有限时,就会发生这种情况。
令 di,j 表示用模型 i 分析 SRoI j 的延迟,它可以分为两部分:预处理延迟和推理延迟。预处理延迟包括移动设备从输入帧获取 SRoI 的 PI 的投影时间以及为网络传输压缩 PI 所需的可选编码时间(仅适用于远程推理)。SRoI 的投影和压缩时间与其投影 PI 的分辨率有关。例如,将 SRoI 投影到 1280 × 1280 的 PI 比投影到 512 × 512 的 PI 需要更多时间。每个 SRoI 的 PI 的分辨率设置为其分配模型的输入大小,以避免调整图像大小。此外,PI 默认以无损格式压缩,以防止图像质量下降导致精度损失。由于有 m 个模型,因此 PI 的分辨率有 m 个选项。对于每个选项,我们都会离线分析 SRoI 在目标设备上的投影和压缩延迟。然后,我们可以估计每个 SRoI 的每个候选模型的预处理延迟。
推理延迟包括网络传输延迟和模型推理时间。本地模型推理的网络传输延迟为0。对于远程模型推理,我们使用类似于Elf: Accelerate high-resolution mobile deep vision with content-aware parallel offloading中的在线被动配置文件分析方法。具体而言,服务器计算每个模型的最近 ω(默认为 7)个请求的平均网络传输延迟,并通过将更新后的网络情况捎带到检测结果上来与移动设备进行同步。模型推理时间可以使用 §IV-B 中提到的方法进行估计。
如果按照预处理和推理的顺序逐个处理预测的 SRoI,则问题(3)可以被视为多选择背包问题的一种变体。不幸的是,这样的串行方案可能会引入显著的延迟,特别是对于性能较弱的移动设备而言。因此,我们提出了一种流水线预处理和推理技术来加速端到端的处理过程。关键因素是SRoIs之间没有计算依赖关系。一个SRoI的推理和下一个 SRoI 的预处理可以自然地进行流水线处理。图6显示了一个说明性的示例,其中一个 SRoI 的预处理在前一个 SRoI 的预处理完成后立即开始,即在t1、t2 和 t4 时刻。当预处理完成并且所需资源准备就绪时,SRoI 的推理开始。
根据这个定义,可以安全地删除被支配的执行计划。具体细节在算法 2 中展示,其中S(j)是 SRoIs {1, 2, · · · , j}的所有可行执行计划的集合。请注意,该算法报告了给定SRoIs处理顺序的最佳执行计划。将此算法应用于所有可能的处理顺序可以获得全局最佳执行计划。然而,相比直接使用在随机生成的处理顺序上报告的执行计划,这样做会导致显著的延迟,而仅获得微小的准确性收益。因此,我们最终选择后一种方法来近似全局最佳执行计划。
推理调度器根据获得的执行计划获取 PI 并将其发送到适当的位置进行推理。然后它将推理结果转换为 SphBB。默认阈值 0.6 的球形 NMS 进一步应用于集成的 SphBB,以防止重复检测到相同的对象。
性能评估
系统实现
我们使用商用设备实现了 OmniSense 原型。移动设备是 Nvidia Jetson TX2 移动开发板,典型的嵌入式智能计算设备。边缘服务器是一台配备 Intel i7-6850K CPU 和 Nvidia GeForce GTX 1080Ti GPU 的台式计算机。移动设备和边缘服务器通过华硕 AC1900 路由器连接,并且都运行 Ubuntu 18.04 操作系统。该原型是用 Python 实现的,可以轻松与基于深度学习的视觉模型集成。所有视频和图像操作都是通过 OpenCV 库实现的。图像、控制消息和检测结果通过高速通用消息库 ZeroMQ 在移动设备和边缘服务器之间传递。
评估设置
视频和模型:用于评估的视频数据集和对象检测模型分别在表 1 和表 2 中展示。视频以 ERP 格式存储在移动设备上,并逐帧输入系统。
网络:我们使用 Linux 流量整形工具 tc 将移动设备的传出带宽设置为 17.9 Mbps,以匹配美国主要移动网络提供商 (T-Mobile) 的平均 5G 上传带宽。除非我们研究网络设置的影响,否则默认使用该值。
性能指标:(1) 球面 mAP (Sph-mAP)。它是广泛用于 2D 物体检测的标准平均精度 (mAP) 指标的球形版本。当应用于 360° 视频时,矩形 BB(常规 IoU)被替换为 SphBB(SphIoU)。Sph-mAP 是根据 §III-A 中介绍的真实检测结果计算的。(2) 平均端到端 (E2E) 延迟。它是检测一帧,从将一帧输入系统到获得最终检测结果所花费的平均时间。
基线:(1) ERP:该基线直接将一个 ERP 帧输入到对象检测模型中。为了使最终结果具有可比性,我们进一步将检测到的矩形 BB 转换为 SphBB。(2) CubeMap:它基于 360° 视频的 Cubemap 投影。具体来说,它首先将输入帧投影到立方体的六个面上,每个面对应一个具有 90°×90° FoV 的 PI。随后通过对象检测模型对 PI 进行分析。将检测结果进一步积分并反投影到球体上,得到最终的检测结果。
延迟控制:为了适应各种应用程序的各种延迟预算,OmniSense 公开了一个 API 来允许延迟控制。它是第 IV-C 节中描述的每帧分析延迟预算 T 。我们在 500 毫秒到 4, 500 毫秒的合理范围内研究了 OmniSense with T 的性能。具体来说,我们根据基线的端到端延迟设置T 的值,以使结果具有可比性。令Tei (Tci) 表示使用模型 i 进行推理的 ERP (CubeMap) 平均 E2E 延迟的 95%。因此,我们报告了 OmniSense 在代表性延迟预算Te4 、Tc2 、Tc3 和 Tc4下的性能。
评估结果
1)性能提升
我们首先在图 7 中展示 OmniSense 的整体性能以及各种视频的基线。正如我们所看到的,与具有相似平均 E2E 延迟的基线相比,OmniSense 始终产生更高的准确度,实现了 19.8% – 114.6% 的准确度提升相对而言,平均约为 58.3%。例如,当 T 设置为 Tc2 时,OmniSense 在芝加哥驱动视频上达到 11.2% 的 Sph-mAP,平均 E2E 延迟为 1, 409 毫秒,而相应的 CubeMap 基线仅在 1, 415 毫秒的成本。这表明 OmniSense 确实成功识别了不断变化的 SRoI,并将其与适当的模型进行匹配。同时,受益于更合理的资源分配策略,OminiSense 的精度高于或可与基线可达到的最高精度相媲美,同时显着降低平均 E2E 延迟(2.0× – 2.4× 加速)。例如,CubeMap 基线需要 8, 202 毫秒才能在 Sunny-walk1 视频上实现 24.2% 的 Sph-mAP,而 OmniSense 则获得类似的 25.4% 准确度,加速大约为 2.0 倍(4, 173 毫秒)。
2)移动设备上的系统开销
OmniSense 的主要系统开销来自其 SRoI 预测、模型分配和后处理。我们在图 8 中展示了它们的时间消耗分布。如图所示,对于 Chicago-drive 视频,整体系统开销在平均E2E延迟的 2.5% 以内;对于 Sunny-walk2 视频,整体开销在平均 E2E 延迟的 1% 以内。在相同的分析延迟预算设置下,这两个视频具有可比的平均 E2E 延迟。它们的开销差异是因为 Chicago-drive 视频有更多的预测 SRoI 和 SphBB。因此,视频需要更长时间来分配视觉模型和转换检测到的 BB,导致系统开销更高。尽管如此,这两个视频的系统开销仅占 E2 延迟的一小部分。这意味着 OmniSense 的系统设计轻巧高效,并验证了延迟控制的有效性。
3)对图像压缩质量的敏感性
默认情况下,OmniSense 将投影的 PI 压缩为无损 PNG 格式,然后再将其发送到边缘服务器。尽管如此,采用 JPEG 等有损图像格式可以显着减小图像大小,从而进一步减少网络传输延迟。节省的延迟可以用于模型升级,即选择具有更高延迟的更准确的模型,从而提高整体精度。为了研究 PI 压缩质量的影响,我们调整 JPEG 压缩质量参数(值越高表示图像质量越高),并在图 9a 中显示 OmniSense 的性能变化。
如图所示,无论图像压缩质量如何,OmniSense 在相同的分析延迟预算下都保持相似的平均 E2E 延迟。这表明 OmniSense 可以自适应地使用节省的延迟来升级分析模型。通过牺牲图像质量来换取更准确的模型,与无损压缩相比,适度的压缩(即 jpg-100)可以提高准确度。然而,积极压缩 PI 并不总是有利于准确性。例如,随着质量参数从 100 下降到 25,精度呈现下降趋势,并且始终低于无损压缩的精度。这表明图像质量严重下降导致的精度下降很难通过减少网络传输延迟带来的好处来抵消。选择合适的 PI 压缩质量以最大限度地提高准确性需要在视频内容、网络条件和模型特征之间进行仔细权衡,我们将其留给未来的工作。
4)对网络设置的敏感性
图 9b 展示了不同网络带宽对 OmniSense 性能的影响。当可用带宽变得稀缺(即 8.95 Mbps)时,网络传输延迟会增加。OmniSense 通过切换到更便宜的模型来自适应地以准确性换取延迟。相反,当可用带宽变得充足(即 35.8 Mbps)时,网络传输延迟会减少。OmniSense 通过积极选择更昂贵的模型,利用节省的延迟来提高准确性。这证实了 OmniSense 可以适应网络资源的变化,同时抓住一切机会提高准确性。此外,随着带宽的增加(例如 > 35.8 Mbps),网络传输延迟将不再是系统瓶颈。在这种情况下,分配过多的带宽只会带来边际精度的提高。
总结
如果能够解决重大的计算和网络资源挑战,沉浸式视频分析对于释放日益部署的全向摄像机的潜力至关重要。受我们对各种 360° 视频的测量洞察的启发,我们提出了一种边缘辅助沉浸式视频分析框架 OmniSense。为了适应动态视频内容和网络条件,OmniSense 引入了轻量级算法来识别不断变化的 SRoI。然后,它为每个预测的 SRoI 智能地分配最合适的本地或远程模型,以实现低延迟和高精度。广泛的评估验证了 OmniSense 的有效性和优越性。
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。