掌桥专利:专业的专利平台
掌桥专利
首页

一种复杂场景下轻量级行人跟踪方法

文献发布时间:2023-06-19 19:28:50



技术领域

本申请涉及CV(Computer Vision,计算机视觉)领域,更具体地,涉及一种行人识别跟踪方法。

背景技术

多目标识别跟踪是深度学习领域的研究热点,在诸多工程实践中具有广泛的研究与科研价值。在实际复杂场景中,多目标跟踪算法经常面临着人群拥堵带来的行人间相互遮挡、行人姿态的频繁变换、远处小目标行人所产生的漏检误检、目标边界框不准确等诸多问题。因此,提出鲁棒而又泛化能力强的在线多目标跟踪算法是一项富有挑战性的任务。

发明内容

本发明提供了一种复杂场景下轻量级行人跟踪方法,该方法可包括:收集行人训练数据集和行人重识别数据集,进行数据预处理;目标检测;目标跟踪。目标检测部分使用改进的YOLOv5实现对行人进行识别;目标跟踪部分使用改进的Deep SORT模型。本发明可以有效改善行人跟踪速度,以及复杂场景下行人大面积遮挡导致的检测准确度低的问题。可以进一步提升目标检测与跟踪速度与精度,为后续的深度学习算法研究以及工程运用提供新的思路。

本申请可获得一个或多个有益效果:

(1)将 Deep SORT 的特征提取网络替换为Shuffle Net,在提升特征提取精度的同时减少模型的大小以达到轻量化跟踪的效果;

(2)针对目标识别精度低问题,改进YOLO v5的网络结构。首先使用空洞空间金字塔池化模块(ASPP)替换原有的SPP模块,减小网络参数提升主干网络特征提取能力,并将注意力机制ECA-Net与颈部网络融合,加强模型提取特征的能力,使模型更加关注被检测的目标;

(3)采用CIoU-NMS的非极大值抑制的方法,结合CIoU损失函数改善原有GIoU损失函数的缺陷,加快模型收敛速度以减少检测与跟踪时由于遮挡导致的漏检与ID跳变问题。

附图说明

图1为本发明的一种实施例的方法流程图;

图2为本发明的一种实施例的改进的YOLOv5模型结构示意图;

图3为本发明的一种实施例的结合ASPP的模块图;

图4为本发明的一种实施例的结合ECA-Net的模块图;

图5为本发明的一种实施例的Shuffle-Net特征提取网络结构;

图6为本发明的一种实施例的Shuffle-Net分支结构图;

图7为本发明的一种实施例的Deep SORT算法流程图。

具体实施方式

本发明的一种基于改进的YOLOv5和DeepSORT的行人追踪方法,包括:收集行人训练数据集和行人重识别数据集,得到用于模型训练与追踪的图像集;搭建改进的YOLOv5模型,增加对目标特征学习的能力,结合CIoU_loss函数与CIoU-NMS方法对锚框进行筛选;使用训练效果最优的模型对行人检测;将上述检测结果输入到改进的DeepSORT模型进行行人追踪。本发明有效保证对行人检测与追踪的实时性,大大提升检测精度。

下面结合附图对本发明做进一步详细说明。

图1为本发明的一种实施例的方法流程图。如图1所示,本实施例方法,包括以下步骤。

步骤1:收集行人训练数据集和行人重识别数据集,进行数据预处理;

步骤1-1.收集行人数据集即针对改进的YOLO v5模型训练数据集,收集行人重识别数据集和行人跟踪数据集:收集PASCAL VOC 数据集,使用数据集进行训练,将训练数据经过数据清洗,只保留Person类;

步骤1-2.收集行人重识别数据集Market-1501 数据集在清华大学校园中采集,它包括由6个摄像头拍摄到的751类行人目标;

步骤1-3.选取MOT17Det作为行人跟踪数据集。

步骤2:搭建改进的YOLOv5模型并进行训练,用于对行人的检测。本发明以YOLOv5模型为基础,针对检测精度较小问题进行改进,得到改进的YOLOv5模型结构图如图2所示,其内部包括输入端、主干层、颈部层和头部层,各层搭建方法如下所示;

步骤2-1. 搭建YOLO v5输入层并进行Mosaic数据增强。通过将四张图片通过翻转,缩放,区域内的色域变化等拼接在一张图片内,大大加强处理效率;自适应图片缩放方法为:首先规定进行训练的图片大小为640×640,对x×y进行缩放,其次计算缩放后的x与y的大小,分别表示为x,与y,,其中x=x ×min{x/640,y/640},y,=y×min {x/640, y/640},如果x,<640,则对应的x高度上下添加[(640-x)%64]/2高度的黑边,最终凑成640×640大小的图片,同理y方向操作,其中min操作表示为取花括号内最小的值,%表示为取余操作;

步骤2-2. 搭建改进的YOLO v5模型主干特征提取网络,使用空洞空间金字塔池化模块(ASPP)替换原有的SPP模块,空间空洞金字塔池化(ASPP)模块使用具有不同采样率的多个并行空洞卷积层。为每个采样率提取的特征在单独的分支中进一步处理,并融合以生成最终结果。该模块通过不同的空洞率构建不同感受野的卷积核,用来获取多尺度物体信息,结构如图3所示,本发明将原深度可分离卷积中的深度卷积替换成空洞卷积,形成空洞深度可分离卷积。并通过改变空洞卷积的空洞率来改变池化过程中的感受野,以达到减少参数量、加速计算的效果;

步骤2-3. 搭建改进的YOLO v5模型颈部网络,将注意力机制ECA-Net与颈部网络融合,加强模型提取特征的能力,使模型更加关注被检测的目标。ECA-Net是一种用于深层CNN的有效通道注意模块,该模块避免了维度缩减,并有效捕获了跨通道交互。结构如图4所示,ECA-Net在不降低维度的情况下进行逐通道全局平均池化之后,我们的ECA通过考虑每个通道及其k个近邻来捕获本地跨通道交互。ECA-Net可以通过大小为k的快速一维卷积有效实现,其中内核大小k代表本地跨通道交互的覆盖范围,即参与一个通道的注意力预测的相近邻个数。在不同的位置引入注意力机制有不同的效果,通过实验证明,图2的方法达到了检测精度的最优;

步骤2-4. 搭建改进的YOLOv5模型的头部层:采用CIoU-NMS的非极大值抑制的方法,结合CIoU损失函数以减少检测与跟踪时由于遮挡导致的漏检与ID跳变问题。CIoU考虑了预测边界框和真实边界框的重叠面积、中心点距离、长宽比例可以有效改善IoU在预测框与真实框重叠从而错误移除的缺陷,CIoU如公式(1)所示

/>

其中

(2)

其中

同时考虑到原始网络中GIoU严重地依赖于IoU项,导致在实际训练中收敛速度过慢,并且预测的边界框精度较低的问题,本文考虑使用CIoU损失函数[19]替换GIoU损失函数,其公式如(3)所示:

(3)

步骤2-5. 将行人数据集送入改进的YOLOv5模型,输入图像为 640×640、epoch=100、使用Adam优化器进行训练,得到效果最优的改进的YOLO v5模型用于后续的跟踪,检测效果如下表所示

步骤3:搭建改进的Deep SORT模型并进行训练﹐用于对行人的追踪。改进的DeepSORT模型包括目标检测器、卡尔曼滤波预测器、特征提取网络、特征匹配器与级联匹配模块;

步骤3-1.使用改进的YOLO v5模型作为Deep SORT模型的目标检测器;

步骤3-2.使用卡尔曼滤波作为Deep SORT模型的视频下一帧人物位置预测器;

步骤3-3.替换使用Shuffle-Net作为Deep SORT模型的特征提取网络,其结构如图5所示,其中的分支结构(a)与分支结构(b)如图7所示,网络结构(a)左右同时进行卷积操作,目的是增加网络深度的同时进行下采样的特征提取,网络结构(b)中的通道拆分channel split是将输入通道数一分为二,拆分成两个分支来代替原先的分组卷积结构,并且每个分支中的卷积层都是保持输入输出通道数相同,左分支不采取任何操作目的是减少卷积后的模型参数,最后使用 concat将两个分支进行拼接,之后再加入通道打乱(channelshuffle)来增加通道之间的信息交流。这样将(a)(b)两种结构组合使用,构成Shuffle Net整体。最后使用行人重识别数据集为Shuffle-Net模型重新训练,损失函数采用多类别交叉熵损失函数。训练结果与对比如表所示:

表2特征提取网络实验

步骤3-4.使用匈牙利算法作为特征匹配器,用余弦距离就是那个检测框经过向量化的近似度,利用匈牙利算法对前后两帧中的检测框内行人进行匹配;若匹配度超过设定的阈值,则认定为同一目标并进行ID分配;

步骤3-5.使用级联匹配模块,对过程中出现频率高的目标赋予优先权,以此解决目标长时间遮挡预测不准的问题。

步骤4:使用改进的YOLOv5和DeepSORT模型进行行人追踪,算法流程如图7所示,包括获取视频、进入检测流程和跟踪流程,各流程详细介绍如下:

步骤4-1.获取视频,实时地进行跟踪;

步骤4-2.首先将视频帧送入YOLO v5模型进行目标检测;

步骤4-3.对行人单位输出结果

步骤4-4.通过计算检测位置与卡尔曼滤波器预测位置之间的马氏距离,对行人运动信息框进行关联,并更新时间标志;

步骤4-5.对关联后的行人运动信息框与第二帧检测传来的行人检测框进行IOU匹配,设定阈值,确认跟踪状态并进行级联匹配;跟踪状态分为三种:confirmed 、unconfirmed和deleted;所述IOU匹配是指:把unconfirmed轨迹和上一帧匹配到的confirmed轨迹,通过匈牙利算法进行匹配,对经过匈牙利算法匹配后的结果,再次进行级联匹配操作,把很久没匹配到的confirmed轨迹与未匹配到的unconfirmed轨迹进行删除,将没匹配到的目标赋予优先级分配新的轨迹,以保证对最近出现的目标赋予最大匹配优先权;

步骤4-6.对经过匹配成功后的结果即confirmed跟踪状态,进行跟踪结果存储并可视化输出,同时进入更新模块;对匹配成功后的每一个追踪目标构建一个容器,即追踪器,存储每一个追踪目标最近成功关联的特征向量,更新追踪器;

步骤4-7.对经过匹配未成功的结果,即unconfirmed跟踪状态,使用Shuffle-Net特征提取网络对其结果进行特征框提取,得到相应特征向量,使用特征提取后的特征向量,计算与当前容器内的特征向量之间的最小余弦距离;若余弦距离小于阈值,则再次进入卡尔曼滤波器,通过马氏距离,对行人运动信息框进行关联进行第二次预测,并更新时间标志;若余弦距离大于阈值,则将其跟踪状态标记成deleted,进行删除;对再次匹配,如果第二次匹配依旧失败,则将其跟踪状态标记为deleted,进行删除;若第二次匹配成功,则进行跟踪结果存储并可视化输出,并更新追踪器。

技术分类

06120115927809