海报摘要:使用边缘计算的高速目标跟踪

近年来,由于成本降低以及移动计算、电池、传感器和控制系统的进步,无人驾驶航空器(UAV)或无人机的使用呈现爆炸式增长。如今,无人机已广泛应用于自然资源勘探、电影和娱乐行业、城市监控以及国防等多个领域。这些应用对图像处理的需求超过了无人机本地的处理能力,因此促使将这些任务卸载到云端。然而,云端的延迟要求超出了许多应用可接受的范围。本文提出在网络边缘部署服务器,以优化需要无人机与云服务器之间进行实时通信的应用在处理能力和延迟方面的性能。我们计划通过在高尔夫球场实施一个用于实时跟踪高尔夫击球的系统,来测试该模型的极限。

1 引言

近年来,商用无人驾驶飞行器(UAV),即无人机,在多种成像应用中的使用呈爆发式增长。这些应用包括自然资源勘探、电影和娱乐行业、城市监控[2][3],以及国防。许多此类应用需要高性能计算能力来处理和分析高清视频。为了延长电池寿命并限制体积,无人机系统通常采用轻量级、低功耗的处理器单元运行,其计算能力仅能满足无人机控制和与基站通信的基本需求。这促使人们需要将计算密集型任务(如高级图像)进行卸载处理和分析发送到云端。然而,许多应用需要比往返远程云服务器延迟更快的实时反馈,因此需要使用低延迟解决方案。

我们的方案是将计算密集型但时间敏感的计算任务卸载到网络边缘,从而实现无人机与服务器之间的低延迟、近实时通信。我们的系统将利用CloudPath[4],这一多层边缘计算平台,作为附近的低延迟边缘服务器,供无人机卸载其计算任务。为了验证该模型,我们选择实现一个系统,该系统在高尔夫球场上利用无人机与CloudPath节点之间的双向通信,实时检测并跟踪高尔夫球的轨迹,进行图像处理与分析。我们使用无人机拍摄高尔夫球飞行过程中的高清视频,视频随后在本地CloudPath服务器上进行处理和分析,以检测高尔夫球的轨迹,并利用该数据为无人机提供控制参数,同时向球员的移动设备发送实时数据。系统的架构如图1所示。我们的解决方案突出了边缘计算的一种独特应用,展示了移动设备、无人机和云端技术在计算密集型实时计算场景下的融合。

所提出的应用在处理能力和延迟要求方面都非常苛刻。在职业比赛中,高尔夫击球最远可达350米,速度超过300公里/小时。即使是满足业余比赛的要求,对移动计算系统来说也相当具有挑战性。为了在单帧图像中完整捕捉整个击球过程,带摄像头的无人机需要从150米以外的距离拍摄高尔夫球。考虑到分辨率因素4K视频(4096像素)下,一个高尔夫球大小的物体在相机传感器上占据的范围仍不足一个像素。这并非不可能完成的任务,但在复杂背景下检测如此小的物体所需的处理能力远超无人机自身的处理能力,必须依赖云端进行计算卸载。

或者,为了获得更好的球体视野,无人机和摄像头可以通过飞近高尔夫球并沿其飞行路径追踪,或通过云台旋转摄像头以跟踪球在空中的角度,从而动态追踪高尔夫球的运动。这需要无人机与服务器之间的双向通信。必须在高尔夫球移出摄像头有限画面的时间内,将若干帧从无人机发送到服务器,对这些图像进行分析以确定球的运动轨迹,计算飞行路径和云台方向的更新,并将新的飞行指令传回无人机。在典型的高尔夫击球速度下,留给无人机到服务器之间的计算和双向通信的时间仅有约150毫秒。而通往远程云服务器的典型延迟超过100毫秒。因此,唯一可行的选择是使用距离用户仅一个网络跳数的服务器。

示意图0

2 实现

我们提出的解决方案使用了配备1英寸2000万像素CMOS传感器相机的DJI Phantom 4 Pro。该摄像头能够以30、60或 120帧每秒的帧率拍摄视频,分辨率范围从720p高清(1280 x 720像素)到4K(4096 x 2160像素)。然而,分辨率与帧率之间存在权衡,较高的分辨率仅限于较低的帧率。在此应用中,我们优先选择更高的分辨率而非更快的帧率,以便更容易地检测球体。一旦检测并锁定球体,即使在较低的帧率下,跟踪其运动也更为容易。该摄像头具有84度的视场角,并安装在三轴云台上,使我们能够在约125米的距离外捕捉整个击球过程,或飞近跟随球体,并通过旋转云台使球保持在画面内。

无人机通过2.4 GHz或5.8 GHz无线电与DJI遥控器手持设备通信。该手持设备内置显示屏,运行带有4GB内存和16GB存储空间的修改版安卓系统。我们的系统将使用基于DJI移动SDK开发的自定义安卓应用,该应用运行在手持设备上,用于控制无人机与CloudPath服务器之间的通信。我们的CloudPath节点运行在标准的2015款MacBook Pro上。图像处理与分析应用程序将使用Python 2.7编写,并利用OpenCV库[1]实现图像处理功能,该程序将在CloudPath服务器上运行。

在运行时,无人机和CloudPath系统将通过手持设备进行双向通信。在球员击球前,摄像头将持续拍摄高尔夫球的视频。视频数据随后将发送到手持设备,再由其转发至 CloudPath服务器。CloudPath应用将锁定球的位置。如果检测到球发生移动,CloudPath应用将计算无人机是否需要移动,或是否需要调整摄像头角度以确保球保持在画面内。系统将生成新的飞行路径和摄像头位置,通过手持设备计算并回传给无人机。击球完成后,CloudPath 应用将分析球飞行的全部视频片段,并通过手持设备在高尔夫球场地图上叠加显示给用户。

3 结论

我们提出的应用测试了边缘计算模型在无人机图像处理任务中的极限。我们的实现在于,CloudPath可用于优化处理能力,同时保持可接受的延迟,以满足需要无人机与运行计算密集型应用部分的云服务器之间进行实时通信的应用需求。该系统用于在高尔夫球场实时跟踪高尔夫击球仅是边缘计算范式的一个应用,但我们的解决方案突显了边缘计算的独特应用场景,以及移动设备、无人机和云端技术在计算密集型实时计算中的集成潜力。

更多推荐