Page 78 - 《软件学报》2020年第9期
P. 78
张展 等:面向边缘计算的目标追踪应用部署策略研究 2699
2
(( − xx 2 ( − y i y ) )
l 1 − ) + i
Gx y V g i ( , ) s.t. (gxx y i , ) =y 2 e 2σ 2 (2)
(, ) = ∑ i
π
= i 1 2 σ
其中,G(x,y)为重建后曲面,g i (x,y)为以第 i 个极值点坐标为中心的二维高斯曲面,V i 为对应极值.
由于高斯函数中的指数运算计算压力较大,使得上述策略无法满足实时性要求.因此进一步优化,采用平移
策略代替创建二维高斯函数的相关运算:
(x 2 + y 2 )
l 1 −
Gx y V P ( , ) s.t .x y i g (, ) =x y 2 e 2σ 2 (3)
(, ) = ∑ i g
i
π
= i 1 2 σ
其中,G(x,y)为重建后曲面,g(x,y)为预先创建的以(0,0)坐标为中心的二维高斯曲面,V i 为对应极值,P g (x i ,y i )为将曲
面 g(x,y)平移(x i ,y i )后的高斯曲面.
2.5 运动检测方案
由于终端设备对应用程序的计算压力及功耗要求较高,且当追踪算法丢失目标时,继续计算将造成严重的
资源浪费,然而追踪算法正确跟踪目标或已丢失目标通常是难以判定的,因此采用运动模型对追踪目标的运动
状态进行建模.通过运动模型动态设定位移阈值范围,当追踪算法预测位置连续多帧超出此阈值范围时,初步判
定丢失目标,启动运动检测算法检测是否存在运动物体,以确定是否已丢失目标.后续可辅助算法在丢失目标时
进行重检测.运动检测算法采用帧差法进行部署,以满足计算压力小、运算速度快以及低能耗的要求.此外建立
运动模型,以针对不同追踪目标和该目标在追踪过程的不同阶段自适应设定位移阈值.
(1) 运动模型
对于目标追踪算法,物体的运动状态对于模型追踪具有积极影响,尤其在追踪过程中存在遮挡和运动模糊
等情况时.因此对追踪目标运动状态建模,以进一步提升性能.此外,由于目标在追踪过程中的动态变化,使得对
目标位移设置固定阈值以判断滤波器预测结果是否处于正常范围内并不合适.基于以上原因,采用运动模型对
目标位移阈值进行动态设定,以适应目标在追踪过程中的动态变化.
运动模型采用卡尔曼滤波器(Kalman filter)进行建模,阈值设定如下所示:
−
θ ρ = x h s.t. x = h ρ x h− 1 ( − 1 ρ + )(x ˆ − x ˆ ) (4)
x θ x x k k
h
−
其中,θ x 为阈值位移,x 为运动模型估测位移的滑动平均值,ρ θ 为系数, ˆ x 和 ˆ x 分别为追踪算法和卡尔曼滤波器
k k
所估测的目标位移.
(2) 运动检测算法
当追踪算法连续多帧预测目标位移超出阈值范围时,采用运动检测算法对输入数据进行运动检测,以进一
步降低模型能耗,提升算法处理速度,减少不必要的计算.常用运动检测算法有帧差法、光流法、背景减除法、
ViBe 算法等.其中,帧差法具有简单快速、对于光照环境不敏感以及对于动态环境适应性较强等特点,适用于终
端节点硬件环境以及应用程序运行环境.
帧差法通过对相邻两帧图像做差分运算以检测运动物体,其检测结果如图 7 所示.该算法主要理论依据在
于:相邻 2 帧或 3 帧进行灰度值差值运算后,运动物体由于灰度值变化将会产生灰度残留,而静止物体则由于灰
度不变被差值运算去除.算法主要步骤:连续输入 3 帧图像数据,前 2 帧和后 2 帧分别计算灰度差值后,结果进行
按位与运算得出结果.运动检测时,获得 3 帧差法结果后,在目标追踪算法预测位置,取目标大小区域,通过对该
区域内数值进行求和并与阈值比较,以确定该处是否存在物体运动.
2.6 信息管理方案
信息管理主要用于存储、分发以及更高层信息提取等任务.边缘云对目标在追踪过程中的状态进行保存,
记录物体运动路径以及目标活动,历史记录信息主要用于特定场景下决策判断或后续进一步的信息提取.例如:
对于搜救机器人,通过分析运动记录,可以确定已搜索区域,从而辅助判断下一步搜救区域;对于其他追踪目标,
可根据记录信息对目标的行为习惯或行动意图进行判断.此外,记录信息可结合其他应用信息进行更高层信息
融合或发送其他终端节点以供其他后续操作.