在线多行人图像目标跟踪算法设计与仿真

2022-06-14 10:04曹婷婷邓小豪万斌杨
计算机仿真 2022年5期
关键词:置信度阈值轨迹

曹婷婷,侯 进,邓小豪,万斌杨

(西南交通大学信息科学与技术学院,四川 成都 611730)

1 引言

多目标跟踪在计算视觉领域中占据核心地位,其任务是在视频中确定多个目标的运动轨迹,一般是同一个场景下所有同类目标,比如全部的行人或者车辆等。尤其是针对行人的跟踪,应用非常广泛。例如在视频监控、智能交通、军事制导等领域具有十分重要的作用[1,2]。近几年在深度学习技术快速发展下,基于卷积神经网络的目标检测精度达到了很高的水平,所以基于检测的跟踪算法成为了目前的主流方法。随着科学技术的迅猛发展,越来越多的多目标跟踪方法被提出,李兴玮等人[3]通过目标间相对运动模型完成轨迹恢复,采用事件匹配算法改进当前帧的检测响应和原始轨迹分配,最终达到多目标跟踪的目的;何嘉等人[4]通过HOG检测目标位置,同时根据地面栅格估计目标3D信息,使得算法拥有较好的遮挡鲁棒性。对于未检测到的目标,算法通过捕捉消失点变化情况来重新估算目标位置,实验证明此方法相较于通过目标前后帧运动状态变化来估算目标位置,拥有更好的鲁棒性和更低的算法运行复杂度;以及Wojke等人[5]提出的DeepSORT算法,通过自定义的残差网络提取外观信息同时结合对象运动信息,使用余弦距离可以有效对长期遮挡后的对象恢复身份。

本文提出一种基于检测的在线多行人目标跟踪方法。使用改进的YOLOv4[6]作为检测器,DeepSORT算法作为跟踪器进行联合跟踪。仿真结果表明,所提算法能够有效提升定位和跟踪结果准确性。

2 在线多行人目标跟踪算法设计

2.1 基于YOLOv4的在线多行人目标检测算法

YOLO算法主要是将对象检测视为回归问题,模型采用单一的卷积神经网络预测边界框和类别概率,可以平衡检测精度和速度,因此选择YOLOv4作为检测器。YOLOv4主要架构由CSPDarknet53+SPP+PANet路径聚合+Yolo head组成,主干网络CSPDarknet53由Darknet53与CSPNet结合,特征金字塔部分由SPP结构和PANet模型组成,SPP模块在CSPdarknet53的最后一个特征层进行三次卷积后分别进行四个不同尺度的最大池化处理,以此增强感受野。PANet模块则可以建立浅层特征和深层特征之间的信息路径,增强了特征的层次架构。在数据增强方面,YOLOv4使用Mosaic将四张图片制作成一张,丰富了检测物体的背景,同时可以一次计算四张图片的数据;增加了自对抗训练(SAT),使神经网络在正常训练之前向相反方向更新和干扰图像等。

为了提高YOLOv4在复杂背景下的检测能力,通过Focal loss[7]优化YOLOv4的置信度损失。Focal loss可用于解决单步检测模型中简单样本与困难样本不平衡问题以及正负样本不平衡问题。它通过权重值来降低易分类样本的影响,使得模型的损失值更多地受到难分类样本的影响。Focal loss损失函数主要是由标准交叉熵损失函数经过变化得到的,其中二分类交叉损失函数L的表达式为

L=-ylogy′-(1-y)log(1-y′)

(1)

式中,y代表真实样本标签,通常情况下取值为0或者1;y′代表激活函数的输出,通常取值为0~1。通过式(1)可知,当采用交叉熵作为损失函数时,对于正样本而言,输出概率越大,损失就越小;负样本则相反。当类别不平衡时,大量的负样本会导致模型的损失值增加,促使模型无法达到最优状态。为此,提出Focalloss,具体的表达式形式如下

(2)

式中,在原损失值函数的基础上加一个因子γ(γ>0),以此减少易分类样本的损失,使损失函数更加关注难分类样本。

在上述分析的基础上,加入平衡因子α,促使数量较少的正样本权重系数增加,数量较大的负样本权重系数减少,有效解决正负样本比例不均衡问题,则最终Focalloss的计算式为

(3)

引入Focal loss后,YOLOv4算法的置信度损失函数如式(4)所示

(4)

2.2 基于DeepSORT的在线多行人目标跟踪算法

多目标跟踪中一个十分重要的问题就是将当前帧中已经跟踪到的目标与检测结果关联起来[8]。DeepSORT主要通过运动特征和外观特征进行数据关联。

DeepSORT算法以检测结果为输入,通过检测结果对卡尔曼滤波器进行初始化操作,构建目标对应的运动模型;同时提取检测结果的外部特征,构建目标外观模型。其中,运动模型主要通过卡尔曼滤波器的线性运动模型,将目标表示为

x=[u,v,r,h,x′,y′,r′,h′]

(5)

式中,(u,v)代表目标的中心坐标;r代表目标的长宽比;h代表目标的高度;(x′,y′)代表目标在水平方向和垂直方向的速度;r′代表目标长宽比的变化率;h′代表目标高度的变化率。

卡尔曼滤波器采用匀速直线运动模型进行目标运动状态的预测,目标一直处于直线运动状态,变化频率和长宽比保持不变,将(u,v,r,h)作为目标对象状态的预测结果。

在在线多行人目标跟踪过程中,需要将运动估计和图像信息全部考虑进去,DeepSORT算法通过运动模型和外观模型所得到的数据将新的检测结果和轨道进行关联,结合匈牙利算法进行匹配。其中,目标关联问题表示为二分图的最优匹配问题,具体如图1所示。

图1 关联问题表示为二分图的最优匹配问题

为了将运动信息全面整合到目标关联问题中,需要设定一个距离度量函数,将距离作为度量函数。其中,根据运动轨迹获取的目标位置和新一帧中检测到的目标位置两者间的距离计算式为

(6)

式中,yi代表第i个跟踪到的目标在当前帧的预测位置;Si代表预测位置与平均跟踪位置之间的协方差矩阵;dj代表当前帧中第j个检测到的包围盒。

优先设定马氏距离的区间范围,删除无利用价值的数据,则指数函数能够通过以下公式表示

(7)

式中,t(1)代表设定阈值,小于此距离,运动状态关联成功。

d(2)(i,j)=cosine(rj,Ri)

(8)

对于图像特征的距离可以设置一个阈值函数表示目标之间的关联性,即

(9)

将运动估计的距离和图像特征之间的距离采用加权的方式获取最终的距离函数

ci,j=λd(1)(i,j)+(1-λ)d(2)(i,j)

(10)

两种距离对最终距离的影响可以通过参数λ进行调节。

为了判断目标的创建与移除,DeepSORT算法将轨迹分为“不确定态”、“确定态”和“删除态”,每个轨迹初始时都处于“不确定态”。为每个“确定态”轨迹k分配一个Ak值,当预测结果与检测器的检测结果成功匹配时,就将Ak值设置为0;如果预测结果没有相对应的检测结果,则使用卡尔曼滤波预测结果来更新目标的状态,Ak值加1。当Ak的值大于设定的阈值时,认为目标已经消失,此时轨迹由“确定态”转换为“删除态”,处于“删除态”的轨迹及其相关信息会被立即移除。如果某次检测结果中某个目标无法与已经存在的任何一个轨迹关联,则对其启动新的轨迹假设,此时的轨迹就处于“不确定态”。如果这个轨迹在未来的连续t帧中的预测结果可以与检测结果成功匹配,则认为出现了新目标,此时轨迹转换为“确定态”;如果轨迹在未来的连续t帧中有任意一帧的预测结果没有匹配上检测结果,则轨迹会立即转变为“删除态”。

检测算法会通过设置置信度阈值的方式过滤掉置信度低于阈值的所有检测对象。新的检测对象必须通过这个阈值才能成为数据关联的候选对象,因为一般认为置信度低于阈值的检测很可能是假阳性。但是检测结果不可能完全可靠,不可靠地检测结果会影响之后跟踪器的性能。为了更好地解决这个问题,本文对DeepSORT算法的轨迹滤除方式进行扩展:在“不确定态”轨迹初始化过程中,为其设置一个total 值,total 的初始值为0,在未来的连续t 帧中,记录每帧中与“不确定态”轨迹成功关联的检测对象的检测置信度,将其与total值进行累加,之后将total值更新为累加值。此时的total 值是该检测结果在连续t 帧中所有检测置信度的累加和,将其与t 相除,得到的就是该检测结果的平均检测置信度。只有当平均检测置信度大于设定的阈值时,才最终确认出现了新目标。改进后的轨迹过滤算法描述如下表1所示。

表1 轨迹过滤算法

通过增加平均检测置信度阈值的方式,在检测阶段可以适当降低检测置信度阈值,以此降低漏检率,同时依靠平均检测置信度阈值抑制低检测置信度阈值产生的假阳性轨迹,从而更准确地判断新轨迹的删除或保留。

3 仿真研究

为了验证所提基于YOLOv4和DeepSORT的在线多行人目标跟踪算法的有效性,通过目前最常用的MOT 2017数据集进行算法性能的评估。MOT 2017数据集由14个序列组成,一半用于训练,一半用于测试。每个视频的拍摄角度,拍摄天气和时间都不一样,还具有较高的人群密度。

MOTA和MOTP共同衡量算法的连续目标跟踪能力,两者的取值越高,证明跟踪能力越强。其中,MOTA主要统计跟踪过程中的误差累积情况,即跟踪结果准确性,具体计算式如下

(11)

式中,fpt代表判断错误的次数;mt代表漏检的次数;mmet代表错误匹配的次数。

MOTP主要量化检测器的定位精度,可以有效地衡量位置误差

(12)

Focal loss 存在两个超参数α和γ,参考Focalloss的相关论文,γ值通常设置为2,α取值一般在0.1~0.3之间。为了确定α取值,使用YOLOv4作为基础网络模型,结合Focal loss损失函数在MSCOCO 2017数据集上进行模型训练(以下简称YOLOv4-F),通过调整不同的α值得到不同的训练结果。让训练完成的YOLOv4-F检测算法忽略所有其它类,只将行人检测结果传递给DeepSORT算法,联合DeepSORT在MOT2017上进行测试,关注它们MOTP值的变化,结果如表2所示:

表2 不同α值实验结果(γ=2)

可以发现当α=0.25时,模型检测效果达到最优。因此,本文最终选取α=0.25和γ=2作为Focalloss的超参数值。

为了验证平均检测置信度阈值(tave_c)的效果并选择最佳阈值,使用YOLOv4-F联合DeepSORT在MOT2017测试集上进行测试,通过实验对比了tave_c在0.0 ~ 0.8之间时DeepSORT的MOTA值,结果如表3所示。

表3 不同tave_c实验结果

从表3可以看出,使用平均检测置信度(tave_c=0.1~0.5)的DeepSORT算法的准确度(MOTA)比不使用平均检测置信度(tave_c=0)时要高,证明了平均检测置信度的有效性。当tave_c=0.4时,YOLOv4-F检测算法搭配DeepSORT跟踪算法的效果最好,因此本文选择0.4作为平均检测置信度阈值。

为了验证本文算法的性能,在MOT2017数据集上对算法进行测试,并与一些先进的算法进行对比。

表4 MOT 2017测试结果

分析表4中的实验数据可知,本文算法与DeepSORT相比,MOTP和MOTA分别提高了1.4和1.7,无论检测器还是跟踪器均具有较好的性能。算法在MOT 2017测试集上的跟踪效果如图2所示,可以看出,本文算法对于多行人目标可以进行有效检测和持续跟踪。

图2 算法在MOT 2017测试效果

4 结束语

本文使用YOLOv4检测算法和DeepSORT跟踪算法构建一个针对行人的多目标跟踪模型。并通过引入Focal loss优化YOLOv4损失函数,增加平均检测置信度对DeepSORT算法的轨迹滤除方式进行改进。仿真结果表明,优化后的模型检测和跟踪效果均有提高。

所提算法虽然现阶段取得了较为显著的研究成果。但是在复杂环境下,由于图像特征相似性更高,可能会出现错误关联的情况,后续将重点针对该方面的内容进行研究,确保算法适用于任何场景和环境。

猜你喜欢
置信度阈值轨迹
非平稳声信号下的小波变换去噪方法研究
一种基于定位置信度预测的二阶段目标检测方法
土石坝坝体失稳破坏降水阈值的确定方法
非均匀光照下文本图像分割算法研究
浅谈求轨迹方程中的增解与漏解
无从知晓
利用迭代软阈值方法抑制恒时演化类核磁共振实验中的采样截断伪峰
捕捉物体运动轨迹
校核、验证与确认在红外辐射特性测量中的应用