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

一种目标跟踪方法及装置

文献发布时间:2023-06-19 18:46:07


一种目标跟踪方法及装置

技术领域

本申请涉及计算机视觉目标跟踪技术领域,尤其涉及一种目标跟踪方法及装置。

背景技术

随着基于深度学习的计算机视觉技术的发展,计算机视觉技术迅速在交通领域上落地应用。该技术通过对监控视频中的人、车等目标的检测与跟踪,并进行实时分析,可以完成对交通问题的及时上报,提高交通管理工作效率,缓解公路运维和警力资源。现有的目标跟踪算法是基于检测的跟踪,即通常现有检测器检测出目标,再由跟踪算法进行前后帧目标的数据关联。然而该方法的目标跟踪结果过于依赖检测器的检测结果,当由于目标的形态、大小导致目标的检测结果不准确时,会影响目标跟踪的准确性。

发明内容

本申请实施例提供了一种目标跟踪方法及装置,用以提高目标跟踪的准确性。

第一方面,本申请实施例提供了一种目标跟踪方法,包括:

对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征,以及将所述第一特征图和所述第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在所述当前图像帧中的预测目标偏移量;

针对每个第一目标对象:根据所述第一目标对象的第一目标信息和所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的设定区域;将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度,以及将所述第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离;

根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果。

基于上述方案,本申请在进行目标对象的匹配时,引入了重识别特征和运动预测,通过重识别特征和运动预测结果共同确定匹配结果,避免了现有目标跟踪方法中仅通过目标框或者特征图对两个距离相近或者外观相似目标对象进行目标跟踪时造成跟踪错误的问题,使得匹配结果更准确可靠,提升了目标的跟踪效果。

一种可能的实现方式中,所述第一特征图和所述第二特征图是通过目标跟踪网络中的第一网络对所述上一图像帧和当前图像帧分别进行特征提取后确定的,所述第一目标信息和所述第二目标信息是通过所述目标跟踪网络中的检测头网络对所述第一特征图和第二特征图分别进行特征提取后确定的,所述目标跟踪网络还包括重识别网络和运动网络,所述对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征,包括:

将所述上一图像帧和所述当前图像帧分别输入所述重识别网络进行特征提取,以使所述重识别网络输出所述上一图像帧中每个第一目标对象的第一重识别特征以及当前图像帧中每个第二目标对象的第二重识别特征;

所述将所述第一特征图和所述第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在所述当前图像帧中的预测目标偏移量,包括:

将所述第一特征图和所述第二特征图按位相加得到融合后的特征图,并将所述融合后的特征图输入所述运动网络进行运动预测,以使所述运动网络输出所述每个第一目标对象在所述当前图像帧中的预测目标偏移量。

一种可能的实现方式中,所述第一目标信息包括第一目标中心点位置、第一目标对象的宽度和第一目标对象的高度,所述根据所述第一目标对象的第一目标信息和所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的设定区域,包括:根据所述第一目标中心点位置以及所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的预测目标中心点位置;以所述预测目标中心点位置为中心,将所述第一目标对象的宽度和所述第一目标对象的高度放大设定倍数后得到的区域,作为所述设定区域。

基于上述方案,通过前一帧目标位置,宽高放大一定比例,作为下一帧目标的搜索区域,通过区域的限定,可以减少前后帧之前距离过远的目标无效匹配,提高运行速度。

一种可能的实现方式中,所述方法还包括:在将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配之前,确定所述上一图像帧之前的图像帧中与所述第一目标对象相同识别号的目标对象的第三重识别特征;将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度,包括:确定所述第三重识别特征和所述第一重识别特征中置信度靠前的S个重识别特征;针对所述设定区域中的每一个第二目标对象,根据所述S个重识别特征与所述第二重识别特征确定特征相似度。

一种可能的实现方式中,所述特征相似度满足如下公式所示的条件:

其中,所述dis

基于上述方案,该公式相对传统的余弦相似度计算公式相比,通过第一目标对象对应的置信度较高的多个重识别特征与第二重识别特征之间的相似度和的均值,确定最终的特征相似度,可以减少单一特征相似度结果的偶然性和风险性,提升算法的鲁棒性。

一种可能的实现方式中,所述第二目标信息包括第二目标中心点位置,所述第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离,包括:

针对所述设定区域内的每一个第二目标对象,通过所述第一目标对象的预测目标中心点位置、所述第二目标中心点位置以及所述第一目标对象的宽度确定位置距离。

一种可能的实现方式中,所述位置距离满足如下公式所述的条件:

其中,所述dis

基于上述方案,和通用的欧式距离公式相比,本申请中两个目标点之间距离并不是随着位置变化无限增加或减少的,而是严格的控制在[0,1],这样有效避免两个目标本身都很远,计算出来的距离相似度差异很大。同时,比简单的欧式距离,更好的和特征相似度距离融合。此外,公式中带有距离加权,在一定范围内,距离相似度随着两个目标距离的增加变化剧烈,等到超出设定的范围,距离相似度随着距离增加,变得不明显,慢慢趋于稳定,这种非线性的距离相似度计算方式,更符合实际目标间匹配的规律。

一种可能的实现方式中,所述根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果,包括:针对每个第一目标对象,将每个特征相似度和与其对应的位置距离进行加权,得到每个第二目标对象的匹配权重;将匹配权重最小的第二目标对象作为所述第一目标对象的跟踪结果。

基于上述方案,前后帧目标跟踪结果通过位置距离和特征相似度共同确定,减少对单个权重的依赖,可以提供跟踪结果的准确性。

一种可能的实现方式中,所述第一目标信息还包括第一识别号,所述第二目标信息还包括第二识别号和第二目标状态,所述将匹配权重最小的第二目标对象作为所述第一目标对象的跟踪结果之后,所述方法还包括:将所述第二识别号设置为所述第一识别号,以及将所述第二目标状态设置为更新状态。

一种可能的实现方式中,所述方法还包括:针对每个第二目标对象,当所述第二目标对象的第二识别号为空白时,将所述第二目标对象的第二识别号设置为与其他目标对象的识别号不同的识别号,以及将所述第二目标对象的第二目标状态设置为创建状态。

一种可能的实现方式中,所述第一目标信息还包括第一目标状态,所述方法还包括:若将所述第一目标对象与所述设定区域包括的每一个第二目标对象之间的位置距离均大于设定阈值时,则将所述第一目标状态设置为丢失状态;当所述丢失状态持续设定时长后,将所述第一目标对象的目标状态设置为删除状态。

第二方面,本申请实施例提供了一种目标跟踪装置,包括:

第一确定模块,用于对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征,以及将所述第一特征图和所述第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在所述当前图像帧中的预测目标偏移量;

第二确定模块,用于针对每个第一目标对象:根据所述第一目标对象的第一目标信息和所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的设定区域;将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度,以及将所述第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离;

根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果。

一些实施例中,所述第一特征图和所述第二特征图是通过目标跟踪网络中的第一网络对所述上一图像帧和当前图像帧分别进行特征提取后确定的,所述第一目标信息和所述第二目标信息是通过所述目标跟踪网络中的检测头网络对所述第一特征图和第二特征图分别进行特征提取后确定的,所述目标跟踪网络还包括重识别网络和运动网络,所述第一确定模块,在对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征时,具体用于:

将所述上一图像帧和所述当前图像帧分别输入所述重识别网络进行特征提取,以使所述重识别网络输出所述上一图像帧中每个第一目标对象的第一重识别特征以及当前图像帧中每个第二目标对象的第二重识别特征;

所述第一确定模块,在将所述第一特征图和所述第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在所述当前图像帧中的预测目标偏移量时,具体用于:

将所述第一特征图和所述第二特征图按位相加得到融合后的特征图,并将所述融合后的特征图输入所述运动网络进行运动预测,以使所述运动网络输出所述每个第一目标对象在所述当前图像帧中的预测目标偏移量。

一些实施例中,所述第一目标信息包括第一目标中心点位置、第一目标对象的宽度和第一目标对象的高度,所述第二确定模块,在根据所述第一目标对象的第一目标信息和所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的设定区域时,具体用于:根据所述第一目标中心点位置以及所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的预测目标中心点位置;以所述预测目标中心点位置为中心,将所述第一目标对象的宽度和所述第一目标对象的高度放大设定倍数后得到的区域,作为所述设定区域。

一些实施例中,所述第二确定模块还用于:在将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配之前,确定所述上一图像帧之前的图像帧中与所述第一目标对象相同识别号的目标对象的第三重识别特征;所述第二确定模块在将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度时,具体用于:确定所述第三重识别特征和所述第一重识别特征中置信度靠前的S个重识别特征;针对所述设定区域中的每一个第二目标对象,根据所述S个重识别特征与所述第二重识别特征确定特征相似度。

一些实施例中,所述特征相似度满足如下公式所示的条件:

其中,所述dis

一些实施例中,所述第二目标信息包括第二目标中心点位置,所述第二确定模块,在将第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离时,具体用于:

针对所述设定区域内的每一个第二目标对象,通过所述第一目标对象的预测目标中心点位置、所述第二目标中心点位置以及所述第一目标对象的宽度确定位置距离。

一些实施例中,所述位置距离满足如下公式所述的条件:

其中,所述dis

一些实施例中,所述第二处理模块,在根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果时,具体用于:

针对每个第一目标对象,将每个特征相似度和与其对应的位置距离进行加权,得到每个第二目标对象的匹配权重;

将匹配权重最小的第二目标对象作为所述第一目标对象的跟踪结果。

一些实施例中,所述第一目标信息还包括第一识别号,所述第二目标信息还包括第二识别号和第二目标状态,所述第二处理模块,在将匹配权重最小的第二目标对象作为所述第一目标对象的跟踪结果之后,还用于:

将所述第二识别号设置为所述第一识别号,以及将所述第二目标状态设置为更新状态。

一些实施例中,所述第二处理模块还用于:针对每个第二目标对象,当所述第二目标对象的第二识别号为空白时,将所述第二目标对象的第二识别号设置为与其他目标对象的识别号不同的识别号,以及将所述第二目标对象的第二目标状态设置为创建状态。

一些实施例中,所述第一目标信息还包括第一目标状态,所述第二处理模块还用于:若所述第一目标对象与所述设定区域包括的每一个第二目标对象之间的位置距离均大于设定阈值时,则将所述第一目标状态设置为丢失状态;当所述丢失状态持续设定时长后,将所述第一目标对象的目标状态设置为删除状态。

第三方面,本申请实施例提供了一种执行设备,包括:

存储器,用于存储程序指令;

处理器,用于获取所述存储器存储的程序指令,并按照获得的所述程序指令执行第一方面以及第一方面不同实现方式所述的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行第一方面以及第一方面不同实现方式所述的方法。

第二方面至第四方面中任一种实现方式所带来的技术效果可参见第一方面以及第一方面不同实现方式所带来的技术效果,此处不再赘述。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种目标跟踪方法的示意图;

图2A为本申请实施例提供的一种应用场景示意图;

图2B为本申请实施例提供的一种服务器结构示意图;

图3为本申请实施例提供的一种目标跟踪方法的流程示意图;

图4为本申请实施例提供的一种目标跟踪的示意图;

图5为本申请实施例提供的一种目标跟踪网络的训练流程示意图;

图6为本申请实施例提供的一种目标跟踪装置的示意图;

图7为本申请实施例提供的一种执行设备的示意图。

具体实施方式

下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

随着基于深度学习的计算机视觉技术的发展,计算机视觉技术迅速在交通领域上落地应用。该技术通过对监控视频中的人、车等目标的检测与跟踪,并进行实时分析,可以完成对交通问题的及时上报,提高交通管理工作效率,缓解公路运维和警力资源。现有技术中通过目标检测后,依靠检测后的目标框的位置进行匹配。该方法依赖于检测结果,容易出现跟踪错误。此外,现有技术中无法及时通过检测结果对目标跟踪器进行目标更正,目标轨迹容易出现漂移。

基于上述问题,本申请实施例提供了一种目标跟踪方法及装置,通过检测头网络(Detection Head)获取前后帧的目标信息,并通过Re-Motion Head网络进行特征重提取,以获得重识别特征,以及运动预测结果。通过根据运动预测结果以及目标信息确定后帧图像中的设定区域,并通过预测目标位置和设定区域内的目标位置确定位置距离,并通过前阵图像中目标的重识别特征与设定区域内的目标对象的重识别特征进行特征匹配,以获得特征相似度。进一步地,可以通过位置距离和特征相似度确定匹配权重,并将匹配权重送入匈牙利算法,完成不同帧之间相同目标的关联和跟踪。一些场景中,可以根据关联结果和跟踪结果更新目标的目标状态,如图1所示。

本申请实施例提供的目标跟踪方法可以通过执行设备实现。一些实施例中,执行设备可以是电子设备,电子设备可以由一个或多个服务器来实现,图2A以一个服务器100为例。参考图2A所示,其为本申请实施例提供的一种可能的应用场景示意图,包括电子设备100和采集设备200。服务器100可以通过实体服务器实现,也可以通过虚拟服务器实现。服务器可以通过单个服务器实现,可以通过多个服务器组成的服务器集群实现,可以通过单个服务器或者服务器集群来实现本申请提供的目标跟踪方法。采集设备200为具有图像采集功能的设备,包括电警设备、电子监控设备、监控摄像头、录像机、具有采集视频功能的终端设备(如笔记本、计算机、手机、电视)等。采集设备200可以通过网络将采集的待检测视频发送至服务器100。可选地,服务器100可以与终端设备300相连,接收终端设备300发送的目标跟踪任务,并根据接收到的由采集设备200发送的待检测视频进行目标跟踪。一些场景中,服务器100可以将目标跟踪结果发送给终端设备300。终端设备300可为电视、手机、平板电脑和个人计算机等等。

作为一种举例,参见图2B所示,服务器100可以包括处理器110、通信接口120和存储器130。当然服务器100中还可以包括其它的组件,图2B中未示出。

通信接口120用于与采集设备100、终端设备300进行通信,用于接收采集设备100发送的待检测视频,或者接收终端设备300发送的目标跟踪任务,或者向终端设备300发送目标跟踪结果。

在本申请实施例中,处理器110可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

处理器110是服务器100的控制中心,利用各种接口和路线连接整个服务器100的各个部分,通过运行或执行存储在存储器130内的软件程序/或模块,以及调用存储在存储器130内的数据,执行服务器100的各种功能和处理数据。可选地,处理器110可以包括一个或多个处理单元。处理器110,例如可以是处理器、微处理器、控制器等控制组件,例如可以是通用中央处理器(central processing unit,CPU),通用处理器,数字信号处理(digitalsignal processing,DSP),专用集成电路(application specific integrated circuits,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。

存储器130可用于存储软件程序以及模块,处理器110通过运行存储在存储器130的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器130可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据业务处理所创建的数据等。存储器130作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器130可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random Access Memory,RAM)、静态随机访问存储器(Static RandomAccess Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器130是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器130还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。

另一些实施例中,执行设备可以是终端设备。一些场景中,当终端设备可以接收采集设备发送的待检测视频,根据待检测视频进行相机镜头异物的识别。终端设备上可以包括显示装置,显示装置可以是液晶显示器、有机发光半导体(Organic Light-EmittingDiode,OLED)显示器、投影显示设备等,本申请对此不作具体限定。

需要说明的是,上述图2A和图2B所示的结构仅是一种示例,本申请实施例对此不做限定。

本申请实施例提供了一种目标跟踪方法,图3示例性地示出了目标跟踪方法的流程,该流程可通过目标跟踪装置执行,该装置可以位于如图2B所示的服务器100内,比如可以是处理器110,也可以是服务器100。目标跟踪装置也可以位于终端设备中。具体流程如下:

301,对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征,以及将第一特征图和第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在当前图像帧中的预测目标偏移量。

一些实施例中,上一图像帧和当前图像帧为采集设备采集的连续视频帧。采集设备可以是电警设备、电子监控设备、监控摄像头、录像机、具有采集视频功能的终端设备(如笔记本、计算机、手机、电视)等。

示例性地,采集设备采集视频帧后,服务器从采集设备获取上一图像帧和当前图像帧。其中,上一图像帧为与当前图像帧相邻的上一图像帧。一些场景中,上一图像帧和当前图像帧为采集设备从采集的设定时长内的两帧视频图像帧。

一些实施例中,服务器接收采集设备发送的视频文件,视频文件中包括该上一图像帧和当前图像帧。该视频文件可以是视频的编码文件。从而服务器可以对接收到的视频文件进行解码得到上一图像帧和当前图像帧。对视频进行编码可以有效的缩小视频文件的文件大小,便于传输。从而,能够提高视频的传输速度,以提高后续对视频事件进行确认的效率。获取编码后的码流数据的方式可以是任意适用的方式,包括但不限于:实时流传输协议(Real Time Streaming Protocol,RTSP)、开放型网络视频接口论坛(Open NetworkVideoInterface Forum,ONVIF)标准或私有协议方式等。

一些实施例中,目标跟踪网络由第一网络、检测头网络、重识别网络和运动网络构成。第一特征图和第二特征图是通过目标跟踪网络中的第一网络对上一图像帧和当前图像帧分别进行特征提取后确定的。具体地,可以将上一图像帧和当前图像帧分别输入目标跟踪网络中的第一网络,以获得上一图像帧的第一特征图以及当前图像帧的第二图像帧。其中,第一网络可以为骨干网络Backbone(DLA-34),可选地,第一网络还可以为hrnet,resnet,swin网络。

一些实施例中,可以对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征。具体地,可以通过重识别网络分别对上一图像帧的第一特征图和当前图像帧的第二图像帧进行特征提取,以使重识别网络输出上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征。其中,重识别网络可以为Re-ID Embeddings网络,通过Re-ID Embeddings分别提取第一特征图与第二特征图对应的Re-ID特征。

一些实施例中,可以将第一特征图和第二特征图进行融合,并对融合后的特征图输入运动网络进行运动预测,得到上一图像帧中每个第一目标对象在当前图像帧中的预测目标偏移量。其中,运动网络可以是Motion-MLP网络,目标偏移量用于表述第一目标对象在当前图像帧中的预测目标中心点位置与第一目标对象在上一图像帧中的目标中心点位置的偏移量。作为一种举例,当上一图像帧中包括三个第一目标对象时,可以将融合后的特征图输入Motion-MLP网络,以使Motion-MLP网络输出上一图像帧中三个目标对象分别在当前图像帧中的预测目标偏移量。例如,上一图像帧中某一目标对象在上一图像帧上的目标中心点位置为(334,556),则该目标对象在当前图像帧上的预测目标偏移量可以表示为(80,69)。

302,针对每个第一目标对象:根据第一目标对象的第一目标信息和第一目标对象的预测目标偏移量,确定第一目标对象在当前图像帧中的设定区域。

一些实施例中,第一目标信息包括第一目标中心点位置、第一目标对象的宽度和第一目标对象的高度。其中,第一目标对象的宽度和高度是根据第一目标对象的外接矩形框的宽度和高度确定的。即第一目标对象的宽度等于第一目标对象的外接矩形框的宽度,第一目标对象的高度等于第一目标对象的外接矩形框的高度。

一些实施例中,可以将第一特征图与第二特征图分别输入检测头网路,以通过检测头网络输出第一目标对象的第一目标信息和第二目标对象的第二目标信息。其中,检测头网络可以分为第一检测网络、第二检测网络和第三检测网络。作为一种举例,可以将第一特征头输入检测头网络后,可以通过第一检测网络输出第一特征图对应的目标中心分布的热力图,通过第二检测网络输出第一特征图对应的第一目标对象的第一目标中心点位置,并通过第三检测网络输出第一特征图中第一目标对象的宽度和第一目标对象的高度。同理,可以将第二特征图输入检测头网络,以通过检测头网络输出第二目标对象的第二目标信息。

一些实施例中,可以将第一特征图和第二特征图按位相加得到融合后的特征图,并将融合后的特征图输入运动网络进行运动预测,以使运动网络输出每个第一目标对象在当前图像帧中的预测目标偏移量。

一些实施例中,可用过目标跟踪模块Re-Motion Tracker进行目标跟踪。具体地,可以根据第一目标对象的第一目标信息和第一目标对象的预测目标偏移量,确定第一目标对象在当前图像帧中的设定区域可以通过如下方式确定:当确定第一目标对象的第一目标信息后,可以根据第一目标中心点位置以及第一目标对象的预测目标偏移量,确定第一目标对象在当前图像帧中的预测目标中心点位置。在确定第一目标对象的预测目标中心点位置后,可以以预测目标中心点位置为中心,将第一目标对象的宽度和第一目标对象的高度放大设定倍数后得到的区域作为设定区域。作为一种举例,第一目标对象的第一目标中心点位置为(334,556),第一目标对象的预测目标偏移量为(80,69),则第一目标对象在当前图像帧中的预测目标中心点位置可以表示为(414,625)。进一步地,当第一目标对象的宽度为50,高度为40时,可以将第一目标对象的宽度和高度放大2倍后得到的区域为(374,575)和(454,675)所围成的区域。

303,将第一目标对象的第一重识别特征与设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度,以及将第一目标对象的第一目标信息与设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离。

一些实施例中,在确定第一目标对象在当前图像帧中的设定区域后,可以将第一目标对象的重识别特征与设定区域内的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度。作为一种举例,当设定区域包括三个第二目标对象时,将第一目标对象的重识别特征分别与三个第二目标对象的第二重识别特征进行特征匹配,以得到三个特征相似度。同理,将可以第一目标对象的第一目标信息与设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离。作为一种距离,当设定区域包括三个第二目标对象时,可以将第一目标对象的第一目标信息分别与三个第二目标对象的第二目标信息进行匹配,得到三个位置距离。可以理解的是,设定区域内第二目标对象的数量等于特征相似度的数量等于位置距离的数量,即一个第二目标对象对应一个特征相似度和第一位置距离。当设定区域包括三个第二目标对象时,第一目标对象对应三个特征相似度和三个位置权重。

一些实施例中,第一目标信息还包括第一识别号,在将第一目标对象的第一重识别特征与设定区域包括的第二目标对象的第二重识别特征进行特征匹配之前,确定上一图像帧之前的图像帧中第一识别号对应的目标对象的第三重识别特征。一些场景中,在进行目标跟踪时,可以将不同图像帧中相同识别号的每个目标对象的重识别特征以及置信度进行保存。另一些场景中,可以将不同图像帧中同一识别号的目标对象对应的置信度较高的S个重识别特征进行保存。在将第一目标对象的第一重识别特征与设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度时,可以通过如下方式实现:确定第三重识别特征和第一重识别特征中置信度靠前的S个重识别特征;针对设定区域中的每一个第二目标对象,根据S个重识别特征与第二重识别特征确定特征相似度。一些场景中,特征相似度满足如下公式所示的条件:

其中,dis

基于上述方案,该公式相对传统的余弦相似度计算公式相比,通过第一目标对象对应的置信度较高的多个重识别特征与第二重识别特征之间的相似度和的均值,确定最终的特征相似度,可以减少单一特征相似度结果的偶然性和风险性,提升算法的鲁棒性。

一些实施例中,第二目标信息包括第二目标中心点位置,将第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离,可以通过如下方式确定:针对设定区域内的每一个第二目标对象,通过第一目标对象的预测目标中心点位置、第二目标中心点位置以及第一目标对象的宽度确定位置距离。一些场景中,位置距离满足如下公式所述的条件:

其中,dis

基于上述方案,和通用的欧式距离公式相比,本申请中两个目标点之间距离并不是随着位置变化无限增加或减少的,而是严格的控制在[0,1],这样有效避免两个目标本身都很远,计算出来的距离相似度差异很大。同时,比简单的欧式距离,更好的和特征相似度距离融合。此外,公式中带有距离加权,在一定范围内,距离相似度随着两个目标距离的增加变化剧烈,等到超出设定的范围,距离相似度随着距离增加,变得不明显,慢慢趋于稳定,这种非线性的距离相似度计算方式,更符合实际目标间匹配的规律。

304,根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果。

一些实施例中,可以针对每个第一目标对象,将每个特征相似度和与其对应的位置距离进行加权,得到每个第二目标对象的匹配权重。进一步地,可以将匹配权重最小的第二目标对象作为第一目标对象的跟踪结果。作为一种举例,针对每个第一目标对象,当设定区域内包括三个第二目标对象时,可以将每个第二目标对象的特征相似度和位置距离进行加权,得到三个第二目标对象分别对应的匹配权重。其中,匹配权重满足如下公式所示的条件:

其中,dis表示第二目标对象的匹配权重,

一些实施例中,匹配权重越大,第一目标对象与第二目标对象的匹配度越小,匹配权重越小,第一目标对象与第二目标对象的匹配度越大。将每个第二目标对象的匹配权重通过匈牙利算法,以确定第一目标对象的跟踪结果。

一些实施例中,第一目标信息还包括第一识别号,第二目标信息还包括第二识别号和第二目标状态。在确定第一目标对象的跟踪结果后,可以向第二识别号设置为第一识别号,以及将第二目标状态设置为更新状态。

一些实施例中,针对每个第二目标对象,当第二目标对象的第二识别号为空白时,可以将第二目标对象的第二识别号设置为与其他目标对象的识别号不同的识别号,以及将第二目标对象的第二目标状态设置为创建状态。其中,其他目标对象包括上一图像帧中的第一目标对象以及当前图像帧中的第二目标对象。

一些实施例中,当确定第二目标对象为第一目标对象的跟踪结果后,可以将第二识别号对应的目标信息更新为第二目标信息。

一些实施例中,第一目标信息还包括第一目标状态,若第一目标对象与设定区域包括的每一个第二目标对象之间的位置距离均大于设定阈值时,则将第一目标状态设置为丢失状态。一些场景中,当丢失状态持续设定时长后,可以将第一目标对象的目标状态设置为删除状态。此后,可以不再对删除状态的目标对象进行管理和关注。作为一种举例,当丢失状态持续2秒时,将第一目标对象的目标状态设置为删除状态。设定时长还可以设置为其它时长,本申请对次不作具体限定。

作为一种举例,上一图像帧可以表示为I

下面对本申请所涉及的目标跟踪网络的训练方法进行说明,方法流程如图5所示,具体如下:

501,获取训练集。

一些实施例中,可以收集不同拍摄地点、时间、高度和角度的道路监控视频,然后对逐帧图像进行标注,标注内容包括目标类型、目标识别号ID以及外接矩形框。其中,目标类型包括车辆、行人、非机动、施工牌、路锥、路障6类,同一个目标拥有相同的目标识别号。一些场景中,可以对数据集进行清洗,对于过小的目标、或者目标遮挡严重的区域标注为忽略区域,调整标注中外接矩形框过大或过小的框,保证标注准确。一些场景中,可以通过改变亮度、色调、加噪声、旋转、镜像变化等方式进行数据增强。

一些实施例中,训练集包括多个样本,每个样本包括至少两个图像帧,每个图像帧均包括目标类型、目标识别号ID以及外接矩形框。

502,构建目标跟踪网络,将训练集中的第一样本输入目标跟踪网络,以通过目标跟踪网络输出第一样本中的预测目标类型、目标对象的预测宽度和高度、预测目标中心点位置、预测重识别结果以及预测目标偏移量。

一些实施例中,目标跟踪网路可以以CenterNet为基础,增加重识别分支和运动预测分支,构建出统一目标检测、重识别和跟踪的可学习目标跟踪网络。

503,根据损失函数对目标跟踪网络的网络参数进行调整。

一些实施例中,网络的损失函数包括中心热力图分类损失函数L

一些实施例中,中心热力图损失函数是通过目标跟踪网络输出的预测目标类型与第一样本中目标的目标类型确定的,宽高回归损失函数是通过目标对象的预测宽度和高度和第一样本中目标的宽度和高度确定的,目标中心点位置损失函数是通过预测目标中心点位置和第一样本中目标的目标中心点位置确定的。一些场景中,中心热力图损失函数、宽高回归损失、目标中心点位置损失函数为目标检测分支损失函数,可以复用centerNet的损失函数。

一些实施例中,重识别网络在训练之前,可以对目标对象的识别号进行编码。重识别任务可以看做为多分类任务,因此可以使用softmax损失函数。一些场景中,重识别损失函数满足如下公式所示的条件:

其中,L

其中,L

一些实施例中,可以通过网络损失函数更新网络参数,使得各损失函数均低于各函数分别对应的设定阈值,且总损失函数小于设定值,并保存网络参数。

基于相同的技术构思,本申请实施例提供了一种目标跟踪装置600,如图6所示。装置600可以执行上述目标跟踪方法中的任一步骤,为了避免重复,此处不再赘述。装置600包括第一确定模块601和第二确定模块602。

第一确定模块601,用于对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征,以及将所述第一特征图和所述第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在所述当前图像帧中的预测目标偏移量;

第二确定模块602,用于针对每个第一目标对象:根据所述第一目标对象的第一目标信息和所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的设定区域;将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度,以及将所述第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离;

根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果。

一些实施例中,所述第一特征图和所述第二特征图是通过目标跟踪网络中的第一网络对所述上一图像帧和当前图像帧分别进行特征提取后确定的,所述第一目标信息和所述第二目标信息是通过所述目标跟踪网络中的检测头网络对所述第一特征图和第二特征图分别进行特征提取后确定的,所述目标跟踪网络还包括重识别网络和运动网络,所述第一确定模块601,在对上一图像帧的第一特征图和当前图像帧的第二特征图分别进行特征提取,得到上一图像帧中每个第一目标对象的第一重识别特征和当前图像帧中每个第二目标对象的第二重识别特征时,具体用于:

将所述上一图像帧和所述当前图像帧分别输入所述重识别网络进行特征提取,以使所述重识别网络输出所述上一图像帧中每个第一目标对象的第一重识别特征以及当前图像帧中每个第二目标对象的第二重识别特征;

所述第一确定模块601,在将所述第一特征图和所述第二特征图进行融合,并对融合后的特征图进行运动预测,得到每个第一目标对象在所述当前图像帧中的预测目标偏移量时,具体用于:

将所述第一特征图和所述第二特征图按位相加得到融合后的特征图,并将所述融合后的特征图输入所述运动网络进行运动预测,以使所述运动网络输出所述每个第一目标对象在所述当前图像帧中的预测目标偏移量。

一些实施例中,所述第一目标信息包括第一目标中心点位置、第一目标对象的宽度和第一目标对象的高度,所述第二确定模块602,在根据所述第一目标对象的第一目标信息和所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的设定区域时,具体用于:根据所述第一目标中心点位置以及所述第一目标对象的预测目标偏移量,确定所述第一目标对象在所述当前图像帧中的预测目标中心点位置;以所述预测目标中心点位置为中心,将所述第一目标对象的宽度和所述第一目标对象的高度放大设定倍数后得到的区域,作为所述设定区域。

一些实施例中,所述第二确定模块602还用于:在将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配之前,确定所述上一图像帧之前的图像帧中与所述第一目标对象相同识别号的目标对象的第三重识别特征;所述第二确定模块602在将所述第一目标对象的第一重识别特征与所述设定区域包括的第二目标对象的第二重识别特征进行特征匹配,得到至少一个特征相似度时,具体用于:确定所述第三重识别特征和所述第一重识别特征中置信度靠前的S个重识别特征;针对所述设定区域中的每一个第二目标对象,根据所述S个重识别特征与所述第二重识别特征确定特征相似度。

一些实施例中,所述特征相似度满足如下公式所示的条件:

其中,所述dis

一些实施例中,所述第二目标信息包括第二目标中心点位置,所述第二确定模块6002,在将第一目标对象的第一目标信息与所述设定区域包括的第二目标对象的第二目标信息进行匹配,得到至少一个位置距离时,具体用于:

针对所述设定区域内的每一个第二目标对象,通过所述第一目标对象的预测目标中心点位置、所述第二目标中心点位置以及所述第一目标对象的宽度确定位置距离。

一些实施例中,所述位置距离满足如下公式所述的条件:

其中,所述dis

一些实施例中,所述第二处理模块602,在根据每个第一目标对象的至少一个特征相似度和至少一个位置距离,确定每个第一目标对象的跟踪结果时,具体用于:

针对每个第一目标对象,将每个特征相似度和与其对应的位置距离进行加权,得到每个第二目标对象的匹配权重;

将匹配权重最小的第二目标对象作为所述第一目标对象的跟踪结果。

一些实施例中,所述第一目标信息还包括第一识别号,所述第二目标信息还包括第二识别号和第二目标状态,所述第二处理模块602,在将匹配权重最小的第二目标对象作为所述第一目标对象的跟踪结果之后,还用于:

将所述第二识别号设置为所述第一识别号,以及将所述第二目标状态设置为更新状态。

一些实施例中,所述第二处理模块602还用于:针对每个第二目标对象,当所述第二目标对象的第二识别号为空白时,将所述第二目标对象的第二识别号设置为与其他目标对象的识别号不同的识别号,以及将所述第二目标对象的第二目标状态设置为创建状态。

一些实施例中,所述第一目标信息还包括第一目标状态,所述第二处理模块602还用于:若所述第一目标对象的第一重识别特征与所述设定区域包括的每一个第二目标对象之间的位置距离均大于设定阈值时,则将所述第一目标状态设置为丢失状态;当所述丢失状态持续设定时长后,将所述第一目标对象的目标状态设置为删除状态。

基于相同的技术构思,本申请实施例提供一种执行设备700,该设备700可以实现前文论述的目标跟踪方法的任一步骤,请参照图7。该装置包括存储器701和处理器702。

所述存储器701,用于存储程序指令;

所述处理器702,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述目标跟踪方法。

在本申请实施例中,处理器702可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

存储器701作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器701可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器701是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器701还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。

基于相同的技术构思,本申请实施例提供一种计算机可读存储介质,包括:计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行如前文论述的目标跟踪方法。由于上述计算机可读存储介质解决问题的原理与目标跟踪方法相似,因此上述计算机可读存储介质的实施可以参见方法的实施,重复之处不再赘述。

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

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

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

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

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

技术分类

06120115687839