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

一种基于三元组损失和联合特征的目标跟踪方法及设备

文献发布时间:2023-06-19 19:30:30


一种基于三元组损失和联合特征的目标跟踪方法及设备

技术领域

本申请涉及目标跟踪领域,具体涉及一种基于三元组损失和联合特征的目标跟踪方法及设备。

背景技术

作为计算机视觉的核心组成部分和重要关键技术,目标跟踪算法可以精准地预测目标在后续时刻的空间位置状态,为进一步分析目标运动状态和运动轨迹奠定了基础。

现有专利《基于Darkflow-DeepSort的多目标追踪检测方法、装置及存储介质》(专利申请号:201910701678.5,公布号:CN 110516556 A),方法利用YOLOv3算法训练得到基于Darkflow的目标检测模型,并对检测图像进行检测获得目标的表观特征,将目标表观特征传入至DeepSORT算法后利用卡尔曼滤波器对所监控视频进行逐帧数据关联处理。该方法虽然能够在不损失检测准确度的情况下提升目标跟踪检测速度,完成多目标跟踪,但是当目标受到遮挡或者目标消失后再次出现时,容易造成目标ID切换以及重新赋予目标ID。

现有专利《基于YOLOv4模型和DeepSORT模型的跟踪方法》(专利申请号:202011516506.X,公布号:CN 112634332 A),方法通过使用YOLOv4模型对图片进行目标检测,然后使用DeepSORT模型对检测到的多目标同时进行跟踪,然后对DeepSORT模型跟踪输出的图片进行处理、去重后,保存、删除以及更新跟踪成功的状态。该方法虽然能够解决复杂场景中跟踪失败以及目标丢失带来的重复问题,但是并未考虑同类目标之间特征差异性。

综上,在现有技术中,通过检测算法获取目标的位置信息,然后利用跟踪算法对目标位置进行预测并更新当前状态,完成目标跟踪任务。对于工厂区域内的行人目标跟踪,人员较为密集,人员的流动性较大。当多个行人重叠时,行人与行人之间的相互遮挡导致网络提取的特征无法很好的对行人目标进行表达,行人之间的特征差异较小,导致目标ID频繁切换。同时在特征提取过程中,需要保留目标的多维特征信息,硬件压力较大。

发明内容

为了解决上述问题,本申请提出了一种基于三元组损失和联合特征的目标跟踪方法及设备,其中方法包括:

获取目标视频并对所述目标视频进行图像处理,以得到输入视频;将所述输入视频输入至预训练的YOLOv5m模型中进行行人检测,以得到目标行人的位置信息以及置信度信息,并将所述位置信息以及所述置信度信息同步到DeepSort算法中;构建基于三元组损失和联合特征的特征提取网络,并对所述特征提取网络进行训练;通过Deepsort算法以及所述特征提取网络,获取所述目标行人的特征,并计算不同行人之间的相似度;结合所述目标行人的位置坐标之间的马氏距离对相邻两帧视频中的相同目标进行匹配;利用卡尔曼滤波算法预测所述目标行人的位置并更新目标状态。

在一个示例中,所述将所述输入视频输入至预训练的YOLOv5m模型中进行行人检测之前,所述方法还包括:利用Crowdhuman数据集对YOLOv5m进行训练。

在一个示例中,所述构建基于三元组损失和联合特征的特征提取网络,并对所述特征提取网络进行训练,具体包括:所述特征提取网络由ResNet18残差网络、联合特征层、View层、全连接层、BatchNorm层、三元组损失函数层组成;将MSMT行人重识别数据集按类分为5折,对所述特征提取网络进行5折交叉验证训练。

在一个示例中,所述联合特征层,具体包括:取第三次下采样获得的第一结果,对所述第一结果进行空洞卷积操作,得到第一输出;对所述第一结果进行全局池化操作,得到第二输出;将所述第一输出与第二输出进行连接,得到第三输出;将所述第三输出经过Relu激活函数,1x1卷积操作以及Softplus激活函数层获得第四输出;对所述第三输出F

在一个示例中,所述三元组损失函数层,具体包括:选取网络中最后一个全连接层权重W以及输入特征x

在一个示例中,对于每一个目标行人的特征,只保存前n帧视频过程中的所有每一维度的均值μ

在一个示例中,所述方法还包括:计算所有目标行人之间的交并比;当所述交并比大于第一预设阈值时,暂停对所述目标行人特征进行更新。

在一个示例中,所述方法还包括:确定目标特征为新特征,计算所述目标特征每一维度与保存特征每一维度均值之间的差异之和;若所述差异之和大于第二预设阈值,则更新所述目标特征。

本申请还提供了一种基于三元组损失和联合特征的目标跟踪设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:获取目标视频并对所述目标视频进行图像处理,以得到输入视频;将所述输入视频输入至预训练的YOLOv5m模型中进行行人检测,以得到目标行人的位置信息以及置信度信息,并将所述位置信息以及所述置信度信息同步到DeepSort算法中;构建基于三元组损失和联合特征的特征提取网络,并对所述特征提取网络进行训练;通过Deepsort算法以及所述特征提取网络,获取所述目标行人的特征,并计算不同行人之间的相似度;结合所述目标行人的位置坐标之间的马氏距离对相邻两帧视频中的相同目标进行匹配;利用卡尔曼滤波算法预测所述目标行人的位置并更新目标状态。

通过本申请提出的方法通过把局部特征与全局特征进行深度正交融合,以及三元组损失,提高了特征的表达能力同时拉大了类间间距,有效的减少了目标检测过程中的ID切换次数。同时优化特征矩阵的更新、选择、保存策略,提高行人跟踪算法的性能,减少行人跟踪过程中硬件的内存占用。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例中一种基于三元组损失和联合特征的目标跟踪方法的流程示意图;

图2是本申请一种联合特征获取流程图;

图3为本申请实施例中一种基于三元组损失和联合特征的目标跟踪设备的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

图1为本说明书一个或多个实施例提供的一种基于三元组损失和联合特征的目标跟踪方法的流程示意图,流程中的某些输入参数或者中间结果允许人工干预调节,以帮助提高准确性。

本申请实施例涉及的分析方法的实现可以为终端设备,也可以为服务器,本申请对此不作特殊限制。为了方便理解和描述,以下实施例均以服务器为例进行详细描述。

需要说明的是,该服务器可以是单独的一台设备,可以是有多台设备组成的系统,即,分布式服务器,本申请对此不做具体限定。

如图1所示,本申请实施例提供一种基于三元组损失和联合特征的目标跟踪方法,包括:

S101:获取目标视频并对所述目标视频进行图像处理,以得到输入视频。

S102:将所述输入视频输入至预训练的YOLOv5m模型中进行行人检测,以得到目标行人的位置信息以及置信度信息,并将所述位置信息以及所述置信度信息同步到DeepSort算法中。

在一个实施例中,将输入视频输入至预训练的YOLOv5m模型中进行行人检测之前,利用Crowdhuman数据集对YOLOv5m进行训练。CrowdHuman数据集是旷世发布的用于行人检测的数据集,图片数据大多来自于google搜索。CrowdHuman数据集数据量比较大,训练集15000张,测试集5000张,验证集4370张。训练集和验证集中共有470K个实例,约每张图片包含23个人,同时存在各种各样的遮挡。每个人类实例都用头部边界框、人类可见区域边界框和人体全身边界框注释。

S103:构建基于三元组损失和联合特征的特征提取网络,并对所述特征提取网络进行训练。

利用三元组损失和联合特征提高不同类别之间的区分度同时提高特征的表达能力。

在一个实施例中,特征提取网络由ResNet18残差网络、联合特征层、View层、全连接层、BatchNorm层组成,并引入了三元组损失函数层。

具体地,如图2所示,联合特征层主要行为包括:

(1)获取行人目标的局部特征:

①取特征网络第三次下采样获得的第一结果F

F

其中F

②取特征网络第三次下采样获得的第一结果F

③第三输出F’

④F

⑤对中间输出F

F

其中Norm()表示正则化操作,p=2表示正则化方式为L2。

⑥将第五输出F

(2)获得行人目标的全局特征:

取特征提取网络第四次下采样的第二结果F

(3)全局特征和局部特征正交融合:

首先计算局部特征点

表示点乘运算,其过程可以表示为:/>

|f

其中c表示特征的通道数。

通过计算局部特征向量与其相对应的投影向量之间的差值得到最终联合后的行人目标特征向量

在一个实施例中,通过三元组损失函数层,提高行人目标特征表达能力方法,具体步骤如下:

(1)选取特征提取网络最后一个全连接层的权重W,维度为d×n,其中n表示类别数;输入的特征x

(2)对权重W以及输入特征x

(3)通过特征x

(4)假设特征x

(5)将用于调整角度的自定义加性角度边距m添加至(4)中的夹角θ

cos(θ

(6)通过自定义的特征范数s缩放除(5)以外的所有全连接层输出后得到新的输出,其过程可以表示为:

cosθ

(7)对新的输出计算损失值,其过程可以表示为:

在一个实施例中,训练特征提取网络时,将MSMT行人重识别数据集按类分为5折,对特征提取网络进行5折交叉验证训练。

S104:通过Deepsort算法以及所述特征提取网络,获取所述目标行人的特征,并计算不同行人之间的相似度;结合所述目标行人的位置坐标之间的马氏距离对相邻两帧视频中的相同目标进行匹配。

S105:利用卡尔曼滤波算法预测所述目标行人的位置并更新目标状态。

在一个实施例中,还提供了一种提高行人目标特征表达能力方法,包括:

特征保存:对于每一个目标的特征,只保存前n帧视频过程中的所有每一维度的均值μ

特征更新:计算所有目标之间的IOU,当IOU大于阈值时表示两个目标相交,则暂停更新目标特征的每一维度的均值、方差,以及帧数。

特征选择:对于新的特征,计算新特征每一维度与保存特征每一维度均值之间的差异之和,若大于阈值则选择更新目标特征。

具体地:

在特征保存过程中,对于某个行人的目标特征,计算前n帧特征每一维度的均值及方差,其计算方式为:

在特征更新过程中,设定某个目标i的坐标位置为L

其中A∪B表示目标框i与目标框j的交集,表示目标框i与目标框j的并集。

根据阈值T

在特征选择过程中,计算新特征每一维度与保存特征每一维度均值之间的差异之和,当大于阈值时则选择该新特征进行特征更新,其计算方式为:

其中n表示行人目标特征的维度。

根据阈值T

特征更新计算方式为:

其中

本发明基于深度学习构建特征提取模型,提取行人目标的局部特征以及全局特征,并对其进行深度正交融合,进一步提高特征的表达能力。通过将目标特征的分布转换到超球面空间上,通过一个自定义的加性角度边距减小了减小目标之间的类内间距,提高目标之间的类间间距。优化特征矩阵矩阵,对于某个行人目标的特征矩阵,当与其他目标之间重叠时暂停更新特征,并且只保存差异性较大的特征,可以有效地提高目标跟踪的准确性。同时只保留特征每一维度的均值和方差以及特征数量,减少了参数量以及计算量。

如图3所示,本申请实施例还提供了一种基于三元组损失和联合特征的目标跟踪设备,包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:

获取目标视频并对所述目标视频进行图像处理,以得到输入视频;将所述输入视频输入至预训练的YOLOv5m模型中进行行人检测,以得到目标行人的位置信息以及置信度信息,并将所述位置信息以及所述置信度信息同步到DeepSort算法中;构建基于三元组损失和联合特征的特征提取网络,并对所述特征提取网络进行训练;通过Deepsort算法以及所述特征提取网络,获取所述目标行人的特征,并计算不同行人之间的相似度;结合所述目标行人的位置坐标之间的马氏距离对相邻两帧视频中的相同目标进行匹配;利用卡尔曼滤波算法预测所述目标行人的位置并更新目标状态。

本申请实施例还提供了一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:

获取目标视频并对所述目标视频进行图像处理,以得到输入视频;将所述输入视频输入至预训练的YOLOv5m模型中进行行人检测,以得到目标行人的位置信息以及置信度信息,并将所述位置信息以及所述置信度信息同步到DeepSort算法中;构建基于三元组损失和联合特征的特征提取网络,并对所述特征提取网络进行训练;通过Deepsort算法以及所述特征提取网络,获取所述目标行人的特征,并计算不同行人之间的相似度;结合所述目标行人的位置坐标之间的马氏距离对相邻两帧视频中的相同目标进行匹配;利用卡尔曼滤波算法预测所述目标行人的位置并更新目标状态。

本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

技术分类

06120115930048