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

对象跟踪方法、装置、计算机设备及存储介质

文献发布时间:2023-06-19 10:46:31


对象跟踪方法、装置、计算机设备及存储介质

技术领域

本申请涉及互联网技术领域,具体涉及图像处理技术领域,尤其涉及一种对象跟踪方法、一种对象跟踪装置、一种计算机设备及一种计算机存储介质。

背景技术

随着图像处理技术的发展,多目标跟踪(Multi-Object Tracking,MOT)技术被广泛用于对各种视频进行对象跟踪处理;所谓的多目标跟踪技术为对于给定的目标视频,找到目标视频中运动的一个或多个对象,并分别对各个对象进行对象跟踪,以得到各个对象在目标视频中的运动轨迹的技术。经研究表明,在采用多目标跟踪技术对视频进行对象跟踪的过程中,可能会在某帧图像中检测到新的目标对象,这些新的目标对象是指在该帧图像中不存在跟踪结果的对象;基于此,如何确定这些目标对象在视频中的运动轨迹成为了研究热点。

发明内容

本发明实施例提供了一种对象跟踪方法、装置、计算机设备及存储介质,可以较为准确地对目标对象进行跟踪处理,得到目标对象的运动轨迹。

一方面,本发明实施例提供了一种对象跟踪方法,所述方法包括:

获取目标视频中的当前图像,所述当前图像为所述目标视频中未处理的一帧图像,所述目标视频中包括一个或多个对象;

若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;

根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;

调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹。

在一种实施方式中,所述目标对象存在目标检测结果,且所述目标检测结果包括:所述目标对象的对象名称的名称外包框,所述目标区域图像包括:所述目标检测结果中的名称外包框所对应的名称区域图像,所述至少两个属性信息包括所述目标对象的对象名称的目标文本特征;

所述对所述目标区域图像进行特征提取处理,得到所述目标对象的至少两个属性信息,包括:

获取所述名称区域图像所对应的二值化图像;

根据所述二值化图像在目标方向上的投影,从所述名称区域图像中截取出文本图像;

对所述文本图像进行特征提取,得到所述目标文本特征。

再一种实施方式中,获取所述名称区域图像所对应的二值化图像,包括:

遍历所述名称区域图像中的各个像素点,并获取当前遍历的当前像素点在目标颜色空间中的各个颜色通道下的灰度值;

对当前像素点在各个颜色通道下的灰度值进行二值化处理,得到所述当前像素点在所述各个颜色通道下的二值化结果;

对所述当前像素点在所述各个颜色通道下的二值化结果执行与操作,得到所述当前像素点的目标像素值;

当所述名称区域图像中的各个像素点均被遍历,则采用所述各个像素点的目标像素值构建所述名称区域图像所对应的二值化图像。

再一种实施方式中,所述目标方向包括水平方向和竖直方向,所述投影包括:所述二值化图像在所述水平方向上的P行像素点的目标像素值,以及所述二值化图像在所述竖直方向上的Q行像素点的目标像素值;其中,P和Q均为正整数;

所述根据所述二值化图像在目标方向上的投影,从所述名称区域图像中截取出文本图像,包括:

计算第p行中各个像素点的目标像素值的第一总和,若所述第一总和大于第一阈值,则将所述第p行中的各个像素点添加至第一集合中;p∈[1,P];

计算第q列中各个像素点的目标像素值的第二总和,若所述第二总和大于第二阈值,则将所述第q列中的各个像素点添加至第二集合中;q∈[1,Q];

求取所述第一集合和所述第二集合之间的交集,并在所述名称区域图像中截取所述交集中的各个像素点所构成的图像作为文本图像。

另一方面,本发明实施例提供了一种对象跟踪装置,所述装置包括:

获取单元,用于获取目标视频中待处理的当前图像,所述当前图像为所述目标视频中除首帧图像以外的一帧图像,所述目标视频中包括一个或多个对象;

所述获取单元,还用于若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;

处理单元,用于根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;

所述处理单元,还用于调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹。

再一方面,本发明实施例提供了一种计算机设备,所述计算机设备包括输入接口和输出接口,所述计算机设备还包括:

处理器,适于实现一条或多条指令;以及,

计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:

获取目标视频中的当前图像,所述当前图像为所述目标视频中未处理的一帧图像,所述目标视频中包括一个或多个对象;

若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;

根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;

调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹。

再一方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如下步骤:

获取目标视频中的当前图像,所述当前图像为所述目标视频中未处理的一帧图像,所述目标视频中包括一个或多个对象;

若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;

根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;

调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹。

本发明实施例在对目标视频进行对象跟踪的过程中,可通过将对象跟踪、对象检测和对象重识别相结合,实现对新的目标对象进行较好的对象跟踪处理。具体的,若目标视频中的当前图像包括目标对象(即在当前图像中可成功检测到但未成功跟踪到的对象),则可获取目标对象的至少两个属性信息;并可结合该至少两个属性信息对目标对象进行重识别处理,以通过多个属性信息的分析融合来提升重识别结果的准确性以及鲁棒性。然后,可根据重识别结果较为准确地确定出目标对象对应的目标跟踪器,使得可调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,从而较为准确地得到目标对象在目标视频中的运动轨迹。

附图说明

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

图1a是本发明实施例提供的一种多目标跟踪框架的架构图;

图1b是本发明实施例提供的一种通过多目标跟踪框架输出游戏视频中的虚拟角色对象的运动轨迹的示意图;

图2是本发明实施例提供的一种对象跟踪方法的流程示意图;

图3a是本发明实施例提供的一种跟踪类的示意图;

图3b是本发明实施例提供的一种基于孪生网络的SiamRPN++算法框架的框架示意图;

图4是本发明另一实施例提供的一种对象跟踪方法的流程示意图;

图5a是本发明实施例提供的一种交并比的计算示意图;

图5b是本发明实施例提供的一种外观识别模型的训练示意图;

图5c是本发明实施例提供的一种获取文本特征的示意图;

图6是本发明另一实施例提供的一种对象跟踪方法的流程示意图;

图7a是本发明实施例提供的一种对当前图像进行对象检测的示意图;

图7b是本发明实施例提供的一种在当前图像中标注检测结果的示意图;

图7c是本发明实施例提供的一种特征匹配顺序的示意图;

图7d是本发明实施例提供的一种对象重识别的流程图;

图8是本发明实施例提供的一种对象跟踪装置的结构示意图;

图9是本发明实施例提供的一种计算机设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

随着互联网技术的不断发展,人工智能(Artificial Intelligence,AI)技术也随之得到更好的发展。所谓的人工智能技术是指利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术;其主要通过了解智能的实质,生产出一种新的能以人类智能相似的方式做出反应的智能机器,使得智能机器具有感知、推理与决策等多种功能。相应的,AI技术是一门综合学科,其主要包括计算机视觉技术(Computer Vision,CV)、语音处理技术、自然语言处理技术以及机器学习(MachineLearning,ML)/深度学习等几大方向。

其中,计算机视觉技术是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR(OpticalCharacter Recognition,光学字符识别)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D(三维)技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。

基于上述计算机视觉技术中的视频处理技术,本发明实施例提出了一种多目标跟踪框架,以更好地视频进行对象跟踪处理;此处的视频可以是游戏视频、影视视频、监控视频,等等。其中,游戏视频是指在一个或多个玩家用户玩耍目标游戏的过程中,对任一玩家用户的终端屏幕中所显示的游戏画面或者观看该任一玩家用户的游戏过程的观看用户的终端屏幕中所显示的游戏画面进行屏幕录制而成的视频;游戏视频中的对象是指:目标游戏中的虚拟角色对象,如王者荣耀游戏中的各个英雄,QQ飞车游戏中的虚拟人物,等等。影视视频是指在指定拍摄场景中,按照事先制作好的剧本对人物和/或动物的表演过程以及周围的环境进行录制,并后期加上音频、特效等制作而成的视频;影视视频中的对象是指:人物、动物等。监控视频是指通过摄像组件对位于该摄像组件的拍摄范围内的目标区域的区域景象进行录制,所得到的视频;监控视频中的对象是指:出现在目标区域中的任一运动物体,如人物、动物、车辆等。

参见图1a所示,该多目标跟踪框架的处理流程可分为在线跟踪和离线融合两个流程,其主要包括检测模块、跟踪模块、重识别模块以及融合模块等四个模块。其中,检测模块负责对视频的各帧图像进行对象检测,以确定出一个或多个检测结果,一个检测结果可用于指示一个对象(或称为目标)在一帧图像中的检测位置;跟踪模块主要负责在视频的各帧图像中完成单一对象的对象跟踪,得到一个或多个跟踪结果,一个跟踪结果可用于指示一个对象在一帧图像中的跟踪位置;重识别模块主要负责在某帧图像检测到目标对象(即可成功检测到但未成功跟踪到的对象)时,通过该目标对象的多个属性信息(如外形特征、运动特征等)对该目标对象进行重识别,进而确定是否重新开启旧跟踪器或初始化一个新跟踪器来对该目标对象进行对象跟踪;融合模块主要负责在在线跟踪流程中匹配融合检测结果与跟踪结果,并在离线融合流程中完成相同对象的至少两个轨迹信息的轨迹融合工作。

下面以游戏视频为例,对图1a所示的多目标跟踪框架在实际应用过程中的工作流程进行阐述:

当游戏视频输入多目标跟踪框架后,多目标跟踪框架中的检测模块可在游戏视频的首帧图像中,通过检测虚拟角色对象的对象标识的标识显示位置(如王者荣耀游戏中的英雄的血条位置)来推理预测出,首帧图像中的各个虚拟角色对象在游戏视频中的显示位置,进而初始化一批单目标跟踪器;初始化的单目标跟踪器的数量和在首帧图像中检测出的虚拟角色对象的数量相同,且一个单目标跟踪器用于跟踪一个虚拟角色对象。然后,可继续对游戏视频中位于首帧图像之后的各帧图像进行对象检测,并基于初始化的各个单目标跟踪器对位于首帧图像之后的各帧图像进行对象跟踪。

在后续的各帧图像的对象跟踪过程中,针对任一帧图像:可通过融合模块对任一帧图像所对应的各个检测结果和各个预测结果进行结果匹配;对于存在跟踪结果相匹配的检测结果(用检测结果A示例表示),则可将该检测结果A所对应的对象称为正常对象,且可保持该检测结果A对应的正常对象(即可成功检测到且可成功跟踪到的虚拟角色对象)关联的跟踪器正常运行,并在该正常对象关联的跟踪器内的轨迹信息中,添加该正常对象在任一帧图像中的位置信息以更新该跟踪器。对于没有检测结果相匹配的跟踪结果(用跟踪结果a示例表示),则可认为该跟踪结果a所跟踪的对象暂时离开了该任一帧图像的显示界面,此时可将跟踪结果a所跟踪的对象称为脱离对象(即可成功跟踪到但未检测到的对象);此情况下,可暂停用于跟踪该脱离对象的跟踪器。

对于没有跟踪结果相匹配的检测结果(用检测结果B示例表示),则进入重识别模块;由重识别模块从该任一帧图像中获取检测结果B对应的目标对象(即可成功检测到但未跟踪到的对象)的多种属性信息(如外形特征、运动特征等),并利用这多种有用的属性信息来检测该目标对象是先前被暂停跟踪的虚拟角色对象还是新的虚拟角色对象(即在任一帧图像之前的各帧图像中均未出现的虚拟角色对象),从而对应重新开启之前被暂停的历史跟踪器(旧的跟踪器)或是开启一个新跟踪器对该目标对象进行对象跟踪。

基于上述步骤,在完成对游戏视频的各帧图像的在线跟踪后,多目标跟踪框架便可根据整个过程中所涉及的各个跟踪器中所记录的轨迹信息进行离线轨迹融合的后处理,得到游戏视频中的各个虚拟角色对象的运动轨迹。其中,离线轨迹融合是指:通过识别各个跟踪器所跟踪的对象是否为同一个对象,将用于跟踪同一个对象的各个跟踪器中存储的、时间上不重合或者重合度小于阈值的多个轨迹信息进行轨迹融合的处理。

需要说明的是,上述只是示例性地介绍了本发明实施例所提出的多目标跟踪框架的工作流程,并不对其进行限定。例如在其他实施例中,当通过融合模块匹配出没有跟踪结果相匹配的检测结果,即检测到任一帧图像中存在目标对象时,也可先不进入重识别模块使得重识别模块对目标对象进行重识别,而是直接启动一个新的临时跟踪器并通过该临时跟踪器对目标对象进行后续的对象跟踪。在此情况下,可在临时跟踪器对目标对象持续跟踪一段时间后,再进入重识别模块;由重识别模块从该临时跟踪器中获取该目标对象的多种属性信息,并利用这多种有用的属性信息检测该目标对象是先前被暂停跟踪的虚拟角色对象还是新的虚拟角色对象。若目标对象是先前被暂停跟踪的虚拟角色对象,则可将之前用于对目标对象进行跟踪的历史跟踪器内所存储的轨迹信息、外形特征等数据转移至临时跟踪器中进行存储,以将该临时跟踪器转换成用于跟踪目标对象的永久跟踪器;另外,还可删除之前用于对目标对象进行跟踪的历史跟踪器,使得在结束对整个视频的对象跟踪后,目标对象只具有一个对应的跟踪器(即由临时转换器转换得到的永久跟踪器)。

此情况下,在完成对游戏视频的各帧图像的在线跟踪后,游戏视频中的每个虚拟角色对象只存在一个对应的跟踪器,且每个虚拟角色对象所存在的跟踪器可以处于运行状态或者暂停状态,对此不作限定。那么多目标跟踪框架便可直接根据仍存在的各个跟踪器中所记录的轨迹信息分别确定各个跟踪器所跟踪的对象的运动轨迹;例如,设在完成游戏视频的各帧图像的在线跟踪后,仍存在如下3个跟踪器:跟踪器a、跟踪器b和跟踪器c,那么可分别根据跟踪器a中存储的轨迹信息确定跟踪器a所跟踪的虚拟角色对象a的运动轨迹,根据跟踪器b中存储的轨迹信息确定跟踪器b所跟踪的虚拟角色对象b的运动轨迹,以及根据跟踪器c中存储的轨迹信息确定跟踪c所跟踪的虚拟角色对象c的运动轨迹。也就是说,此情况下的多目标跟踪框架无需执行离线轨迹融合处理。

基于上述描述可知,本发明实施例所提出的多目标跟踪框架可通过对象标识的标识显示位置来定位视频中对象的位置与数量,为每一个跟踪的对象创建一个单目标跟踪器来持续获取该对象在视频内每一帧图像中的位置信息,避免对象的轨迹信息的缺失。通过检测结果与跟踪器的跟踪结果的匹配以及利用多个属性信息对目标对象所执行的重识别工作,可以在检测到视频中的某帧图像存在目标对象时,较为准确地得到目标对象的重识别结果;从而可通过离线轨迹融合处理或者在线轨迹信息转移的操作,较为准确地完成多帧图像之间的相同对象的数据(如轨迹信息)关联,从而保证最后得到的各个对象的运动轨迹的准确性,在一定程度上避免各个对象的运动轨迹出现轨迹分裂的问题;此处的轨迹分裂是指:同一个对象存在至少两条运动轨迹的现象。

在实际应用中,该多目标跟踪框架可部署在计算机设备中,该计算机设备可以是终端或者服务器。其中,终端可包括但不限于:智能手机、平板电脑、笔记本电脑、台式计算机等;终端内可安装并运行各式各样的客户端(application,APP),如视频录制客户端、视频剪辑客户端,等等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。

在计算机设备中部署了该多目标跟踪框架后,计算机设备便可根据实际需求将该多目标跟踪框架运用在任一视频(如游戏视频、监控视频等)的自动剪辑中。以MOBA(Multiplayer Online Battle Arena,多人在线战术竞技游戏)类的平面游戏的游戏视频为例,参见图1b所示:计算机设备可调用该多目标跟踪框架对该游戏视频中的一个或多个虚拟角色对象(或称为虚拟游戏人物)进行对象跟踪,从而确定任一虚拟角色对象在任意时刻的视频帧图像中的位置信息,进而得到任一虚拟角色对象在游戏视频中的运动轨迹,并可基于该运动轨迹在游戏视频中对该任一虚拟角色对象进行标注,然后输出标注结果以使得用户可根据该标注结果了解该任一虚拟角色对象在游戏视频中存在的时序片段。通过将该多目标框架运用在游戏比赛的精彩游戏视频的自动剪辑中,可脱离传统的视频剪辑方法(剪辑师手动挑选标注各帧图像中的虚拟角色对象的方法),转而从大量的、低成本的游戏视频中通过算法学习出精彩游戏视频中的各个对象的运动轨迹并进行标注,节省游戏视频制作过程中视频剪辑这一环节所消耗的大量人力成本和时间成本。

基于上述多目标跟踪框架的相关描述,本发明实施例提出一种对象跟踪方法,该对象跟踪方法可以由上述所提及的计算机设备执行。请参见图2,该对象跟踪方法可包括以下步骤S201-S204:

S201,获取目标视频中的当前图像,该当前图像为目标视频中未处理的一帧图像。

在具体实施过程中,计算机设备可响应于视频剪辑触发操作,获取目标视频;此处所提及的目标视频可以包括以下任一种:游戏视频、监控视频、影视视频,等等;并且,目标视频中包括一个或多个对象。具体的,若目标视频为目标游戏的游戏视频,则目标视频中的各个对象均是指目标游戏中的虚拟角色对象;若目标视频为影视视频,则目标视频中的各个对象均是指人和/或动物等;若目标视频为监控视频,则目标视频中的各个对象均是指出现在被监控的目标区域中的任一运动物体(如人、动物、车辆)。

在获取到目标视频后,计算机设备便可先对目标视频的首帧图像进行对象检测,以确定出首帧图像中所包括的对象以及各个对象在首帧图像中的位置信息。其次,可根据在首帧图像中检测到的对象的数量以及对应的位置信息,初始化一批单目标跟踪器;初始化的单目标跟踪器的数量和在首帧图像中检测到的对象的数量相同,每个单目标跟踪器用于在目标视频中除首帧图像以外的各帧图像中对其所关联的对象进行持续的对象跟踪。然后,计算机设备依次采用步骤S201-S204对目标视频中除首帧图像以外的各帧图像进行处理;相应的,通过步骤S201从目标视频中获取的当前图像可以为:目标视频中除首帧图像以外的未处理的一帧图像。可选的,若计算机设备是按照目标视频中的各帧图像的排列顺序,从前往后依次采用步骤S201-S204对目标视频中除首帧图像以外的各帧图像进行处理的,则当前图像可进一步为:目标视频中除首帧图像以外的未处理图像中的第一帧图像。例如,目标视频总共包括50帧图像,依次为:图像1、图像2、图像3…图像50;若在本次执行步骤S201时已经对图像1进行了处理,则当前图像可为图像2;若在本次执行步骤S201时已经对图像1和图像2进行了处理,则当前图像可为图像3,以此类推。

其中,根据在首帧图像中检测到的对象的数量以及对应的位置信息,初始化一批单目标跟踪器的具体实施方式可以是:计算机设备可为在首帧图像中检测出的每个对象分别创建一个跟踪类;此处所提及的跟踪类可理解为是用于对目标视频中检测到的对象进行持续的单目标跟踪的进程。参见图3a所示,一个跟踪类中可至少包括:一个初始化的单目标跟踪器,以及跟踪类标识(如初始化的单目标跟踪器的跟踪器标识)。需说明的是,初始化的每个单目标跟踪器(后续简称跟踪器)均具有永久的跟踪器标识,该永久的跟踪器标识可以是对象在目标视频中的编号或者跟踪器名称,等等;并且,每个单目标跟踪器中可存储在首帧图像所检测到的其所关联的对象的初始信息,该初始信息包括但不限于:检测到的对象在首帧图像中的位置信息以及该对象在首帧图像中的外形特征,等等。可选的,在后续的对象跟踪过程中,每个跟踪类还可用于记录对应的对象的多个属性信息(如视觉外形特征、运动特征等);需要说明的是,该多个属性信息可直接存储在跟踪类所包括的跟踪器中,也可存储在跟踪类中与跟踪器相互独立的其他空间中,对此不作限制。

任一跟踪器使用的是基于孪生网络的SiamRPN++算法(一种目标跟踪算法)框架,所谓的孪生网络是指由具有相同网络结构以及网络参数的两个子网络所构成的网络。该算法框架使用从初始化的参考图像中所检测出的检测结果(如检测出的对象外包框(一种用于完整包围一个对象的矩形框))作为模板,通过孪生网络求取多尺度特征,使用相关操作得到当前图像中搜索区域与模板最相似的部分,并使用anchor-based的RPN策略回归包围框,从而获取到当前图像的跟踪结果(如跟踪到的对象外包框)。其中,参考图像是指在确定需初始化跟踪器时所涉及的那帧图像;例如跟踪器a是在对目标视频中的首帧图像进行检测后初始化的,那么跟踪器a对应的参考图像便是目标视频中的首帧图像;又如,跟踪器b是在检测到目标视频中的第3帧图像存在新的对象B后进行初始化,以便于后续对该新的对象B进行对象跟踪,那么跟踪器b对应的参考图像便是目标视频中的第3帧图像。由于该算法框架具有精确度高、实时运行的特点,因此通过使用该算法框架进行对象跟踪,可有效提升跟踪速度和准确性。

具体请参见图3b所示,该SiamRPN++算法框架可包括:由子网络1和子网络2所构成的孪生网络、三个Siamese RPN模块、回归模块(BBox Regression)以及分类模块(CLS)。其中,孪生网络中的任一子网络可包括多个卷积层;且子网络1主要用于对模板进行特征提取,并将提取到的特征Fi(Z)送入Siamese RPN模块;而子网络2主要用于对当前图像的搜索区域进行特征提取,并将提取到的特征Fi(X)送入Siamese RPN模块。相应的,Siamese RPN模块主要用于在接收到特征Fi(Z)和特征Fi(X)后,对特征Fi(Z)和特征Fi(X)执行adj操作,并对adj操作后的特征执行DW_conv操作;此处的adj操作是指将特征拆分成至少一个通道下的子特征的操作,DW_conv操作是指对相同通道下的子特征进行卷积处理的操作。然后,可对DW_conv操作后的结果进行回归处理,得到回归结果(Box Head);以及对DW_conv操作后的结果进行分类处理,得到分类结果(Cls Head)。

S202,若当前图像中包括目标对象,则获取目标对象的至少两个属性信息。

在具体实施过程中,计算机设备在通过步骤S201获取到当前图像后,便可对当前图像进行对象检测,以及调用处于运行状态的跟踪器对当前图像进行对象跟踪,从而确定当前图像中是否包括目标对象。此处的目标对象为在当前图像中成功检测到,且未成功跟踪到的对象;即目标对象是指当前图像中存在目标检测结果,但不存在跟踪结果的对象。若当前图像中包括目标对象,则目标对象可能存在如下两种情况:

①目标对象是新的对象,所谓的新的对象为在目标视频中位于当前图像之前的各帧图像中均未出现的对象。此情况下,造成目标对象在当前图像中被成功检测到但无法被成功跟踪到这一情况的原因是:对当前图像进行对象检测,可成功检测到该目标对象;但由于此时处于运行状态的跟踪器中不存在新的对象所对应的跟踪器,因此在调用处于运行状态的跟踪器对当前图像进行对象跟踪时,无法实现对该目标对象的对象跟踪,从而导致该目标对象无法被成功跟踪到。②目标对象是之前被暂停跟踪的历史对象,所谓的历史对象为在目标视频中位于当前图像之前的至少一帧图像中出现过的对象。此情况下,造成目标对象在当前图像中被成功检测到但无法被成功跟踪到这一情况的原因是:对当前图像进行对象检测,可成功检测到该目标对象;但由于目标对象所对应的历史跟踪器已经被暂停(即处于暂停状态),因此在调用处于运行状态的跟踪器对当前图像进行对象跟踪时,无法调用已被暂停的历史跟踪器对该目标对象进行跟踪处理,从而导致该目标对象无法被成功跟踪到。

由于随着目标对象的情况不同,后续确定目标对象的目标跟踪器的方式也随之不同;因此在检测到当前图像包括目标对象后,计算机设备可获取目标对象的至少两个属性信息,以便于后续可利用多维度的属性信息对目标对象进行重识别处理,以较为准确地识别出目标对象是新的对象还是历史对象。其中,重识别处理为识别目标对象是历史对象还是新的对象的处理。

在一种实施方式中,该至少两个属性信息可包括以下任意两种或三种:目标对象的对象名称的目标文本特征、目标对象的目标外形特征,以及目标检测结果中的对象外包框在当前图像中的目标位置坐标。所谓的目标文本特征是指对目标对象的对象名称进行文本识别所得到的特征,目标外形特征是指对目标对象的外形进行外形识别所得到的特征。其中,当目标视频为游戏视频时,目标对象是虚拟角色对象,那么目标对象的对象名称可以是目标对象对应的玩家用户所使用的游戏角色名称;当目标视频为其他视频(如监控视频或影视视频)时,目标对象是运动物体(如人、动物),那么目标对象的对象名称可以是运动物体的物体名称(如人名、动物名字),或者运动物体的编号等。再一种实施方式中,当目标视频为游戏视频时,即目标视频中的各个对象均是指目标游戏中的虚拟角色对象时,该至少两个属性信息还可包括:目标对象的生命值指示元素的目标显示颜色;此处的生命值指示元素用于指示目标对象的剩余生命量,例如当目标游戏为王者荣耀游戏时,该生命值指示元素可以是游戏画面中所显示的“血条”。

需要说明的是,由前述描述可知,计算机设备在确定当前图像中包括目标对象后,可直接从当前图像中获取目标对象的至少两个属性信息,并接着执行步骤S203来实现对目标对象的重识别;或者,计算机设备在确定当前图像中包括目标对象后,也可直接为目标对象启动一个临时跟踪器,并在通过该临时跟踪器在后续的一帧或多帧图像中成功跟踪到目标对象后,再从临时跟踪器中获取目标对象的至少两个属性信息,并执行步骤S203来实现对目标对象的重识别,本发明实施例对获取目标对象的至少两个属性信息的时间点不作限制。其中,上述所提及的临时跟踪器是指具有临时的跟踪器标识的跟踪器;该临时跟踪器标识可以包括但不限于:随机生成的随机数、随机生成的文本名称,等等。

S203,根据至少两个属性信息对目标对象进行重识别处理,并根据重识别结果确定目标对象对应的目标跟踪器。

在具体实施过程中,计算机设备可获取与目标视频关联的至少一个历史跟踪器,并遍历该至少一个历史跟踪器。其中,历史跟踪器是指处于暂停状态的跟踪器;一个历史跟踪器用于跟踪一个历史对象,且每个历史跟踪器所跟踪的历史对象均处于被暂停跟踪的状态。例如,设当前图像为目标视频中的第5帧图像,在对目标视频中的首帧图像进行对象检测后,启动了跟踪器X来跟踪在首帧图像中检测到的对象X,若在对目标视频的第3帧图像进行对象跟踪时,因只在第3帧图像中通过跟踪器X跟踪到对象X,未在第3帧图像中检测到该对象X,而暂停了跟踪器X,则对象X处于被暂停跟踪的状态,该跟踪器X可作为一个历史跟踪器。又如,计算机设备在检测当前图像是否存在目标对象之前,因先检测到当前图像存在脱离对象(即在当前图像中成功跟踪到,但未检测到的对象),而暂停了用于跟踪脱离对象的跟踪器Y,那么脱离对象处于被暂停跟踪的状态,该跟踪器Y也可作为一个历史跟踪器,等等。

然后,计算机设备可通过对至少两个属性信息,和当前遍历的目标历史跟踪器所跟踪的目标历史对象的对象特征进行特征匹配,从而确定目标对象和目标历史对象是否匹配。若目标对象和目标历史对象匹配,则可确定目标对象和目标历史对象为同一个对象;若目标对象和目标历史对象不匹配,则可继续遍历,并在确定各个历史跟踪器所跟踪的历史对象与目标对象均不匹配时,确定目标对象为新的对象,以得到重识别结果。在得到重识别结果后,计算机设备可根据重识别结果确定目标对象对应的目标跟踪器,以便于后续可通过该目标跟踪器实现对目标对象的轨迹跟踪。需说明的是,此处所提及的目标历史跟踪器是指至少一个历史跟踪器中当前遍历的那个历史跟踪器,目标历史对象是指目标历史跟踪器所跟踪的那个历史对象。

其中,上述所提及的目标历史对象的对象特征可包括:与每个属性信息所对应的对象特征;例如,当至少两个属性信息中包括目标对象的对象名称的目标文本特征这一属性时,目标历史对象的对象特征则可包括:目标历史对象的对象名称的历史文本特征(即对目标历史对象的对象名称进行文本识别所得到的特征);当至少两个属性信息包括目标对象的目标外形特征这一属性时,目标历史对象的对象特征则可包括:目标历史对象的历史外形特征(即对目标历史对象的外形进行外形识别所得到的特征);当至少两个属性信息包括目标对象对应的目标位置坐标这一属性时,目标历史对象的对象特征则可包括目标历史对象的运动特征,等等。

S204,调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,以得到目标对象在目标视频中的运动轨迹。

其中,剩余图像可包括:目标视频中位于当前图像之后的一帧或多帧图像。在具体实施过程中,计算机设备可在剩余图像包括的各帧图像中,调用目标跟踪器对目标对象进行对象跟踪。若在剩余图像内的任一帧图像中,目标对象不存在检测结果而存在目标跟踪器所跟踪到的跟踪结果,则可暂停目标跟踪器;若在剩余图像内的任一帧图像中,目标对象存在检测结果以及目标跟踪器所跟踪到的跟踪结果,则可将该检测结果或者跟踪结果所指示的目标对象在该任一帧图像中的位置信息添加至目标跟踪器所存储的轨迹信息中,以更新目标跟踪器中的轨迹信息。重复执行步骤S201-S204,直至目标视频中的各帧图像均被处理完,此时便可根据目标跟踪器所存储的轨迹信息确定目标对象在目标视频中的运动轨迹。

需要说明的是,若计算机设备在确定当前图像中包括目标对象后,是直接从当前图像中获取目标对象的至少两个属性信息并执行步骤S203的,则剩余图像可包括目标视频中位于当前图像后的所有图像。例如,设目标视频总共有100帧图像,当前图像为目标视频中的第56帧图像,则剩余图像便可包括目标视频中的第57帧-第100帧图像。若计算机设备在确定当前图像中包括目标对象后,并未立即获取目标对象的至少两个属性信息,而是通过启动临时跟踪器在后续的一帧或多帧图像中成功跟踪到目标对象后,再从临时跟踪器中获取目标对象的至少两个属性信息以及执行步骤S203的,则剩余图像可包括目标视频中位于临时跟踪器所跟踪的最后一帧图像之后的所有图像。例如,设目标视频总共有100帧图像,当前图像为目标视频中的第56帧图像,临时跟踪器在第57帧-67帧图像中对目标对象进行了对象跟踪处理,且均成功跟踪到目标对象,则剩余图像便可包括目标视频中的第68帧-第100帧图像。

本发明实施例在对目标视频进行对象跟踪的过程中,可通过将对象跟踪、对象检测和对象重识别相结合,实现对新的目标对象进行较好的对象跟踪处理。具体的,若目标视频中的当前图像包括目标对象(即在当前图像中可成功检测到但未成功跟踪到的对象),则可获取目标对象的至少两个属性信息;并可结合该至少两个属性信息对目标对象进行重识别处理,以通过多个属性信息的分析融合来提升重识别结果的准确性以及鲁棒性。然后,可根据重识别结果较为准确地确定出目标对象对应的目标跟踪器,使得可调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,从而较为准确地得到目标对象在目标视频中的运动轨迹。

请参见图4,是本发明实施例提供的另一种对象跟踪方法的流程示意图,该对象跟踪方法可以由上述所提及的计算机设备执行。请参见图4,该对象跟踪方法可包括以下步骤S401-S409:

S401,获取目标视频中的当前图像。

计算机设备在获取到当前图像之后,可对当前图像进行对象检测,得到M个检测结果,M为自然数;一个检测结果至少包括:一个第一对象的对象外包框,此处的第一对象为对当前图像进行对象检测所检测到的对象。在一种实施方式中,计算机设备可调用预先训练好的对象检测模型对当前图像进行对象检测,得到M个检测结果。再一种实施方式中,若目标视频中的每个对象均具有对象标识,且每个对象标识和其指示的对象之间具有位置显示关系,则计算机设备可采用如下方式进行对象检测:对当前图像进行标识检测,得到M个对象标识,并确定每个对象标识在当前图像中的标识显示位置;然后,可根据标识和对象之间的位置显示关系,以及第m个对象标识在当前图像中的标识显示位置,预测第m个第一对象在当前图像中的对象显示位置。最后,可在第m个第一对象在当前图像中的对象显示位置处,确定第m个第一对象的对象外包框;其中,该第m个第一对象的对象外包框可属于第m个检测结果。可选的,还可在第m个对象标识在当前图像中的标识显示位置处,确定第m个对象标识的标识外包框;在此情况下,第m个检测结果中还可包括第m个对象标识的标识外包框。

其中,该第m个第一对象为第m个对象标识指示的对象,m∈[1,M];所谓的m∈[1,M]是指:m的取值可以是1和M所构成的封闭取值区间的任一个值,且该封闭取值区间的最小值可以等于1,封闭取值区间的最大值可以等于M。并且,标识和对象之间的位置显示关系可以是在制作目标视频时,根据业务需求设置的,如位置显示关系可以是:对象显示位置位于标识显示位置的正下方且距离标识显示位置1厘米,或者对象显示位置位于标识显示位置的左下方45°,且距离对象显示位置1厘米,等等。其中,当目标视频为目标游戏的游戏视频时,上述所提及的对象标识可以是目标游戏中的虚拟角色对象的对象名称、生命值指示元素等。具体的,若对象标识为对象名称,则上述所提及的标识外包框可称为名称外包框,若对象标识为生命值指示元素,则上述所提及的标识外包框可称为元素外包框;并且,若对象标识为生命值指示元素,则计算机设备还可进一步根据标识和元素之间的位置显示关系,以及第m个对象标识在当前图像中的标识显示位置,预测第m个第一对象的生命值指示元素在当前图像中的元素显示位置,从而确定出第m个第一对象的生命值指示元素的元素外包框,使得第m个检测结果中还可包括该元素外包框。当目标视频为影视视频、监控视频等其他视频,上述所提及的对象标识可以是视频中的运动物体的物体名称(如人名)。

另外,计算机设备还可调用N个处于运行状态的跟踪器对当前图像进行对象跟踪,得到N个跟踪结果,此处的N为自然数;一个跟踪结果至少包括:一个第二对象的对象外包框,此处的第二对象为对当前图像进行对象跟踪所跟踪到的对象。其次,计算机设备可分别计算第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比(Intersection Over Union,IOU);所谓的交并比是指两个对象外包框的相交面积(如图5a中序号为①的阴影部分的面积)与两个对象外包框合并在一起的合并面积(如图5a中序号为②的阴影部分的面积)的比值。

然后,计算机设备可分别根据第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比,确定第m个检测结果和每个跟踪结果之间的匹配度,m∈[1,M]。在一种实施方式中,可直接将第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比,确定第m个检测结果和每个跟踪结果之间的匹配度。再一种实施方式中,每个检测结果中还可包括:第一对象所关联的其他外包框,如第一对象的对象名称的名称外包框;每个跟踪结果中还可包括:第二对象所关联的其他外包框,如第二对象的对象名称的名称外包框,则计算机设备还可对第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比,和第m个检测结果中的其他外包框和每个跟踪结果中的其他外包框之间的交并比进行均值预算、加权求和运算等处理,得到第m个检测结果和每个跟踪结果之间的匹配度。

在确定第m个检测结果和各个跟踪结果之间的匹配度后,可判断第m个检测结果和各个跟踪结果之间的匹配度是否小于阈值,此处得到阈值可根据经验值或者业务需求设置。若存在一个跟踪结果和第m个检测结果之间的匹配度大于或等于阈值,则可保持该存在的跟踪结果所对应的跟踪器继续运行。若第m个检测结果和各个跟踪结果之间的匹配度均小于阈值,则可确定当前图像中包括目标对象,该目标对象为第m个检测结果所对应的第一对象;相应的,目标对象所存在的目标检测结果便为第m个检测结果。应理解的是,目标对象的数量可以是一个或多个;为便于阐述,本发明实施例均以一个目标对象为例进行说明。

可选的,计算机设备在执行根据第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比,确定第m个检测结果和每个跟踪结果之间的匹配度这一步骤之前,可先检测当前图像中是否包括脱离对象(即成功跟踪到但未检测到的对象),若存在脱离对象,则暂停用于跟踪脱离对象的跟踪器。其中,检测当前图像是否包括脱离对象的具体实施方式可以是:依次遍历N个跟踪结果,根据当前遍历的当前跟踪结果中的对象外包框和每个检测结果中的对象外包框之间的交并比,确定当前跟踪结果和每个检测结果之间的匹配度;若当前跟踪结果和各个检测结果之间的匹配度均小于阈值,则可确定当前图像中包括脱离对象,该脱离对象即为当前跟踪结果所对应的第二对象。

S402,若当前图像中包括目标对象,则根据目标对象的目标检测结果从当前图像中裁剪出待检测的目标区域图像。

具体的,目标检测结果可包括目标对象在当前图像中的对象外包框,那么根据目标检测结果从当前图像中裁剪出的目标区域图像可包括:目标检测结果中的对象外包框所对应的对象区域图像。可选的,目标检测结果还可包括目标对象的对象名称的名称外包框,那么目标区域图像还可包括:目标检测结果中的名称外包框所对应的名称区域图像。可选的,若目标视频为目标游戏视频时,目标检测结果还可包括目标对象的生命值指示元素的元素外包框(如血条框),那么目标区域图像还可包括:目标检测结果中的元素外包框所对应的元素区域图像,等等。

S403,对目标区域图像进行特征提取处理,得到目标检测结果所对应的目标对象的至少两个属性信息。

在一种具体实现中,当目标区域图像包括对象区域图像时,该至少两个属性信息可包括:目标对象的目标外形特征。在此具体实现中,步骤S403的具体实施方式可包括如下步骤:可获取预先训练好的外观识别模型,并调用该外观识别模型对对象区域图像中的目标对象进行外观识别,得到目标对象的目标外形特征。进一步的,为了使得外观识别模型可包含重识别匹配时的特征距离度量和轨迹融合时的对象分类两个能力,本发明实施例在求取视觉外形特征时可使用图像视频检索模型CSQ(Central Similarity Qualification)作为外观识别模型,其目标是将输入图像映射为的固定长度的hash code(哈希编码)特征。与常见的图像检索模型的二元组、三元组网络不同,该CSQ模型在训练时,算法会定义只会根据类别数量定义相关的hash code中心(hash center),它们彼此之间的距离相同,之后再为每一类别分配一个hash code中心,在训练数据输入时每一图片向其类别所在中心收敛,如图5b中的第三幅图所示。其中,图5b中的第一幅图和第二幅图均是表示其他图像检索模型的训练原理:在训练数据输入时,预测得到的相同类别的训练数据相互靠近,不同类别的训练数据相互远离。

再一种具体实现中,当目标区域图像包括名称区域图像时,该至少两个属性信息可包括:目标对象的对象名称的目标文本特征。在此具体实现中,步骤S403的具体实施方式可以是:采用特征提取算法对名称区域图像进行特征提取,得到目标文本特征;此处的特征提取算法可包括但不限于:方向梯度直方图(Histogram Of Gradient,HOG)算法,OCR算法,等等。进一步的,考虑到名称区域图像中可能存在一些与对象名称无关的背景像素点,因此为提升特征提取效率和准确性,可先从名称区域图像中截取出只包括对象名称的文本图像,以过滤掉名称区域图像中的背景像素点,从而从文本图像中提取出目标文本特征。基于此,步骤S403的具体实施方式可包括如下步骤s11-s13:

s11,获取名称区域图像所对应的二值化图像,所谓的二值化处理是指将像素点的像素值(如灰度值)设置为第一数值(如数值0)或第二数值(数值255)的处理。在一种实施方式中,可直接对名称区域图像中的各个像素点的像素值进行二值化处理,得到名称区域图像对应的二值化图像。再一种实施方式中,考虑到名称区域图像可能存在发光情况(如游戏视频中因触发游戏技能而导致虚拟角色对象的名称区域图像存在发光特效的情况,其他视频中因曝光过度而导致名称区域图像产生发光的情况等;在此情况下,若直接对名称区域图像的各个像素点进行二值化处理,容易导致二值化的结果不准确。

基于此,本发明实施例提出了一种全新的基于通道进行二值化的处理方式。具体的,计算机设备可遍历名称区域图像中的各个像素点,并获取当前遍历的当前像素点在目标颜色空间中的各个颜色通道下的灰度值;此处的目标颜色空间可以是RGB颜色空间,该目标颜色空间下的颜色通道可包括:R通道(红色通道)、B通道(蓝色通道)和G通道(绿色通道);可选的,该目标颜色空间下的颜色通道还可包括Alpha通道(透明通道)。其次,可对当前像素点在各个颜色通道下的灰度值进行二值化处理,得到当前像素点在各个颜色通道下的二值化结果。然后,可对当前像素点在各个颜色通道下的二值化结果执行与操作,得到当前像素点的目标像素值;具体的,若当前像素点在各个颜色通道下的二值化结果相同,则将当前像素点在任一颜色通道下的二值化结果(第一数值或者第二数值)作为当前像素点的目标像素值;若当前像素点在至少两个颜色通道下的二值化结果不同,则将第一数值(如数值0)确定为当前像素点的目标像素值。当名称区域图像中的各个像素点均被遍历,则可采用各个像素点的目标像素值构建名称区域图像所对应的二值化图像。

s12,根据二值化图像在目标方向上的投影,从名称区域图像中截取出文本图像。

其中,目标方向可包括水平方向(X轴方向)和竖直方向(Y轴方向);相应的,该投影可包括:二值化图像在水平方向上的P行像素点的目标像素值,以及二值化图像在竖直方向上的Q行像素点的目标像素值;其中,P和Q均为正整数。相应的,步骤s12的具体实施方式可以是:计算第p行中各个像素点的目标像素值的第一总和,若第一总和大于第一阈值,则表明第p行中包括名称文字,因此可将第p行中的各个像素点添加至第一集合中;p∈[1,P],且第一阈值可根据经验值设置,所谓的p∈[1,P]是指:p的取值可以是1和P所构成的封闭取值区间的任一个值,且该封闭取值区间的最小值可以等于1,封闭取值区间的最大值可以等于P。以及计算第q列中各个像素点的目标像素值的第二总和,若第二总和大于第二阈值,则表明第q列中包括名称文字,因此可将第q列中的各个像素点添加至第二集合中;q∈[1,Q],且第二阈值可根据经验值设置,所谓的q∈[1,Q]是指:q的取值可以是1和Q所构成的封闭取值区间的任一个值,且该封闭取值区间的最小值可以等于1,封闭取值区间的最大值可以等于Q。然后,可求取第一集合和第二集合之间的交集,并在名称区域图像中截取交集中的各个像素点所构成的图像作为文本图像;其中,此处的文本图像为由用于包围交集中的各个像素点的最小包围框在名称区域图像中所包括的图像。参见图5c所示,通过此实施方式可较为准确地确定出只包括对象名称的图像,去除名称区域图像中的背景像素点,从而提升后续的特征提取效率。

s13,对文本图像进行特征提取,得到目标文本特征。

在得到文本图像后,可直接采用特征提取算法对文本图像进行特征提取,得到目标文本特征;此处的特征提取算法可包括但不限于:HOG算法,OCR算法,等等。或者,在其他实施例中,若计算机设备为了在实际应用中便于对各个视频均进行处理,为输入至特征提取算法的图像统一设置了一个固定尺寸;那么,计算机设备在得到文本图像后,可先将文本图像的图像尺寸调整(resize)至固定尺寸;然后,采用特征提取算法对调整尺寸后的文本图像进行特征提取,得到目标文本特征,如图5c所示。

还需要说明的是,计算机设备在通过步骤S401获取到当前图像,并在确定当前图像中包括目标对象后,也可直接对当前图像进行特征提取处理,得到目标检测结果所对应的目标对象的至少两个属性信息;其具体实施方式与上步骤S403的具体实施方式类似,在此不再赘述。

S404,根据至少两个属性信息对目标对象进行重识别处理。

由前述可知,计算机设备可通过将至少两个属性信息和各个历史跟踪器中所存储的对象特征进行特征匹配,实现对目标对象的重识别。下面将结合步骤s21-s23对步骤S404的具体实施方式进行阐述:

s21,获取与目标视频关联的至少一个历史跟踪器,并遍历至少一个历史跟踪器;其中,历史跟踪器是指处于暂停状态的跟踪器。

s22,根据至少两个属性信息,和当前遍历的目标历史跟踪器所跟踪的目标历史对象的对象特征,对目标对象和目标历史对象进行对象匹配。

由前述可知,目标历史对象的对象特征可包括:与每个属性信息所对应的对象特征。在一种具体实现中,计算机设备可按照预设的特征匹配顺序,每次对一个属性信息进行特征匹配;若当前被选取的属性信息通过特征匹配,则可直接确定目标对象和目标历史对象相匹配;若当前被选取的属性信息未通过特征匹配,则可继续重新选择一个属性信息进行特征匹配,以此类推。基于此,步骤s22的具体实施方式可以:

首先,可从至少两个属性信息中未被选取的属性信息中选取目标属性信息;并获取当前遍历的目标历史跟踪器所跟踪的目标历史对象的历史对象特征,该历史对象特征为目标历史跟踪器所存储的目标历史对象的对象特征中,与目标属性信息对应的对象特征。其中,该至少两个属性信息可包括以下任意两种或三种:目标对象的对象名称的目标文本特征、目标对象的目标外形特征,以及目标检测结果中的对象外包框在当前图像中的目标位置坐标。

并且,从至少两个属性信息中选取目标属性信息的顺序可包括以下几种情况:①特征匹配顺序可指示:文本特征匹配→运动特征匹配→外形特征匹配;则目标属性信息可按照如下顺序选取:目标位置信息的选取顺序晚于目标文本特征的选取顺序,且早于目标外形特征的选取顺序。②特征匹配顺序可指示:运动特征匹配→文本特征匹配→外形特征匹配;则目标属性信息可按照如下顺序选取:目标文本特征的选取顺序晚于目标位置信息的选取顺序,且早于目标外形特征的选取顺序。③特征匹配顺序可指示:文本特征匹配→外形特征匹配→运动特征匹配;则目标属性信息可按照如下顺序选取:目标外形特征的选取顺序晚于目标文本特征的选取顺序,且早于目标位置信息的选取顺序,等等。应理解的是,本发明实施例只是示例地列举了三种目标属性信息的选取顺序,并非穷举。

然后,可对目标属性信息和历史对象特征进行特征匹配;若特征匹配成功,则确定对象匹配成功,此时可结束对象匹配流程;若特征匹配失败,则再次执行从至少两个属性信息中未被选取的属性信息中选取目标属性信息的步骤,直至各个属性信息均被选取完。在具体实施过程中,随着目标属性信息的不同,对目标属性信息和历史对象特征进行特征匹配的具体实施方式也随之不同,具体请参见下述描述:

当目标属性信息为目标文本特征,历史对象特征为目标历史对象的对象名称的历史文本特征时,对目标属性信息和历史对象特征进行特征匹配的具体实施方式可以是:首先,可计算目标文本特征和历史文本特征之间的特征差值;然后,可将特征差值和特征阈值进行比较;若特征差值小于或等于特征阈值,则可确定特征匹配成功;若特征差值大于特征阈值,则确定特征匹配失败。在一种实施方式中,此处的特征阈值可以是一个固定的静态阈值,其可根据经验值设置。

再一种实施方式中,由于文本特征间的差异通常与对象名称的文字长度、纹理复杂度相关,尤其是针对游戏视频而言,文本特征之间的差异通常还会受到草丛、背景等遮挡物遮挡对象名称的影响,存在一定程度上的不确定性,使用单一固定的阈值可能无法较好地满足特征匹配需求。基于此,本发明实施例提出了一种自适应的动态阈值的计算方式,使得每个跟踪器具有独立的特征阈值;具体的,该动态阈值的计算方式可参见下述公式1.1所示:

在上述公式1.1中,diff

在上述公式1.2中,i∈[fram,fram+h],fram表示任一跟踪器在正常运行后所跟踪的第一帧图像在目标视频中的图像序号;例如,任一跟踪器在完成目标视频中的第10帧图像后启动运行的,那么fram则表示目标视频中的第11帧图像的图像序号“11”。

也就是说,此实施方式下用于和特征差值进行比较的特征阈值是一个目标历史跟踪器所对应的动态阈值;相应的,在此实施方式下,若特征差值小于或等于目标历史跟踪器对应的动态阈值,则确定特征匹配成功;若特征差值大于所述动态阈值,则确定特征匹配失败。参见上述公式1.1的相关描述可知,动态阈值是根据目标历史对象的一个或多个文本特征变化值计算得到的,任一文本特征变化值为目标历史对象的第一对象名称的文本特征和第二对象名称的文本特征之间的差值。此处的第一对象名称是从历史图像中检测到的目标历史对象的对象名称,第二对象名称是由目标历史跟踪器从历史图像中跟踪到的目标历史对象的对象名称;此处的历史图像是指目标视频中位于当前图像之前,且由目标历史跟踪器成功跟踪到目标历史对象的一帧图像。

当目标属性信息为目标位置坐标,历史对象特征为目标历史对象的运动特征时,对目标属性信息和历史对象特征进行特征匹配的具体实施方式可以是:首先,可根据目标历史对象的运动特征,预测得到目标历史对象的对象外包框在当前图像中的预测位置坐标。然后,可判断目标位置坐标和预测位置坐标是否相匹配;此处的相匹配可以是指:目标位置坐标和预测位置坐标相同,或者目标位置坐标和预测位置坐标之间的坐标差异小于差异阈值。若目标位置坐标和预测位置坐标相匹配,则确定特征匹配成功;若目标位置坐标和预测位置坐标不匹配,则确定特征匹配失败。

当目标属性信息为目标外形特征,历史对象特征为目标历史对象的历史外形特征时,对目标属性信息和历史对象特征进行特征匹配的具体实施方式可以是:计算目标外形特征的目标特征向量,以及历史外形特征的历史特征向量;并采用距离计算函数(如汉明距离函数)、计算目标特征向量和历史特征向量之间的向量距离。若计算得到的向量距离大于距离阈值,则可确定特征匹配成功;否则,则可确定特征匹配失败。或者,也可以采用CSQ模型将目标外形特征映射为固定长度(如128维)的目标哈希编码(hash code),以及将历史外形特征映射为历史哈希编码;并对目标哈希编码和历史哈希编码进行汉明距离的计算,以进行匹配距离的度量;若计算得到的距离大于预设阈值,则确定特征匹配成功;否则,则可确定特征匹配失败。

再一种具体实现中,计算机设备也可并发地(即并行地)分别对每个属性信息和其对应的目标历史对象的对象特征进行特征匹配,得到每个属性信息对应的特征匹配结果。若任一属性信息对应的特征匹配结果指示该任一属性信息和其对应的目标历史对象的对象特征之间特征匹配成功,则确定目标对象和目标历史对象相匹配,即可确定对象匹配成功;也就是说,在此情况下,需确定目标对象的每个属性信息均与其对应的目标历史对象的对象特征相匹配,才可确定对象匹配成功。或者,统计用于指示特征匹配成功的特征匹配结果的数量,若统计的数量大于数量阈值,则确定目标对象和目标历史对象相匹配,即可确定对象匹配成功;也就是说,在此情况下,只要目标对象存在数量阈值个(如2个)属性信息与其对应的目标历史对象的对象特征相匹配,则可确定对象匹配成功。

需要说明的是,当目标视频为目标游戏的游戏视频时,目标视频中的各个对象均是指目标游戏中的虚拟角色对象时;由于主人态用户的虚拟角色对象通常会显示在游戏视频的首帧图像中的,且主人态用户的虚拟角色对象的生命值指示元素的显示颜色通常是唯一的;因此可首先通过目标对象的生命值指示元素的目标显示颜色是否为主人态用户所对应的生命值指示元素的显示颜色,来识别目标对象是新的对象还是历史对象。其中,主人态用户是指在制作目标视频时所录制的终端屏幕所对应的玩家用户,或在制作目标视频时所录制的终端屏幕所对应的观众用户所观看的玩家用户。例如,目标视频是通过对玩家用户a的终端屏幕中所显示的游戏画面的进行录制所得到的,则主人态用户便为玩家用户a;又如,若目标视频是通过对观看玩家用户a的游戏过程的观看用户b的终端屏幕中所显示的游戏画面进行屏幕录制所得到的,则主人态用户便为玩家用户a。

此情况下,至少两个属性信息还可包括:目标对象的生命值指示元素的目标显示颜色,该生命值指示元素用于指示目标对象的剩余生命量。相应的,计算机设备在执行步骤s22之前,还可优先获取基准显示颜色。其中,基准显示颜色是指:目标游戏中的主人态用户所使用的虚拟角色对象的生命值指示元素的显示颜色;然后,判断目标显示颜色是否为该基准显示颜色。若目标显示颜色为基准显示颜色,则可直接确定目标对象为历史对象;若目标显示颜色不为基准显示颜色,则再执行步骤s22。通过此实施方式,可有效降低重识别难度;且在通过显示颜色确定目标对象为历史对象后,无需执行后的运动特征匹配、外形特征匹配等较复杂的特征匹配操作,可有效节省处理资源。

s23,若对象匹配成功,则确定目标对象和目标历史对象为同一个对象;若对象匹配失败,则继续遍历,并在确定各个历史跟踪器所跟踪的历史对象与目标对象均不匹配时,确定目标对象为新的对象。

S405,根据重识别结果确定目标对象对应的目标跟踪器。

在具体实施过程中,若重识别结果指示目标对象为新的对象,则可为目标对象初始化一个新跟踪器,并将初始化的新跟踪器作为目标对象的目标跟踪器。若重识别结果指示目标对象为历史对象,则可重新启动历史跟踪该目标对象的历史跟踪器,并将重新启动的历史跟踪器作为目标跟踪器。需要说明的是,由前述可知,跟踪器使用的是基于孪生网络的SiamRPN++算法框架;由于基于Siamese网络框架的跟踪器在获取模板后通常不再更新,这使得目标视频为游戏视频时,并不利于在虚拟角色对象的动作形态多变的条件下发挥性能;因此当目标视频为游戏视频时,若需要重新启动目标对象对应的历史跟踪器,可计算机设备控制该重新启动的历史跟踪器不再使用第一次初始化的模板,而是选择根据当前图像的检测结果重新设置模板,即将该重新启动的历史跟踪器中的模板更新为当前图像中所检测到目标对象的目标检测结果。

S406,调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪。

在本发明实施例中,剩余图像可包括目标视频中位于当前图像后的所有图像。在具体实施过程中,计算机设备可在剩余图像包括的各帧图像中,调用目标跟踪器对目标对象进行对象跟踪。若在剩余图像内的任一帧图像中,目标对象不存在检测结果而存在目标跟踪器所跟踪到的跟踪结果,则可暂停目标跟踪器;若在剩余图像内的任一帧图像中,目标对象存在检测结果以及目标跟踪器所跟踪到的跟踪结果,则可将该检测结果或者跟踪结果所指示的目标对象在该任一帧图像中的位置信息添加至目标跟踪器所存储的轨迹信息中,以更新目标跟踪器中的轨迹信息。

可选的,需要说明的是,当在剩余图像内的任一帧图像中,目标对象存在检测结果以及目标跟踪器所跟踪到的跟踪结果T时,目标跟踪器还可记录其所跟踪到的特征信息,该特征信息中可包括跟踪到的目标对象在剩余图像内的任一帧图像中的外形特征、对象名称的文本特征等信息。需要说明的是,在目标跟踪器进行特征收取过程中,并非在所有帧图像中所跟踪到的特征信息均可以加入到目标跟踪器中的特征集当中;当对象(如游戏中的英雄)发生互相遮盖时,跟踪到的目标对象的特征可能包含另一对象的特征,因此每次在添加特征信息时,可通过加入跟踪框(如跟踪到的对象外包框、跟踪到的名称外包框等)交叠的检测,以在跟踪到的特征中删除交叠的特征后再录入至目标跟踪器,从而提升目标跟踪器所存储的对象特征的准确性。

由于本发明实施例中的目标跟踪器是根据从当前图像这一单帧图像中获取到的多信息(至少两个属性信息)进行跟踪器身份的匹配而确定的,而单帧图像中的信息存在的不确定性,这样可能会导致跟踪器匹配错误的问题,从而导致目标对象的运动轨迹存在轨迹分裂(即同一个对象存在多条运动轨迹)的现象;因此,为了在一定程度上避免轨迹分裂的问题,计算机设备在目标视频中的各帧图像均被处理完后,还可对目标跟踪器所存储的轨迹信息执行离线轨迹融合的后处理,从而得到目标对象的运动轨迹,具体可参见下述步骤S407-S409的相关描述。

S407,当目标视频中的各帧图像均被处理完,则获取目标视频所对应的跟踪器集合。

其中,跟踪器集合中包括:目标跟踪器以及对目标视频进行跟踪处理的其他跟踪器,该其他跟踪器中可包括一个或多个跟踪器。并且,跟踪器集合中的各个跟踪器可以是处于运行状态,也可以是处于暂停状态,本发明实施例对此不作限定。

S408,从其他跟踪器中查找与目标跟踪器相关联的关联跟踪器,该关联跟踪器所跟踪的对象和目标对象为同一对象。

在一种实施方式中,计算机设备中可根据目标跟踪器中存储的对象特征和其他跟踪器中的各个跟踪器中存储的对象特征,分别对目标对象和其他跟踪器中的各个跟踪器所跟踪的对象进行对象匹配,其具体实施方式与上述步骤S404的具体实施方式类似,在此不再赘述。然后,可根据匹配结果将其他跟踪器中用于跟踪目标对象的跟踪器作为关联跟踪器。

再一种实施方式中,若目标视频中的各个对象均属于不同的对象类别,那么只要检测到存在跟踪器所跟踪的对象和目标对象属于同一类别,则可表明该跟踪器所跟踪的对象和目标对象是同一个对象。基于此,计算机设备还可根据目标对象的对象类别来查找关联跟踪器;具体的:计算机设备可根据目标跟踪器中的对象特征确定目标跟踪器所跟踪的目标对象的对象类别,以及分别根据其他跟踪器中的各个跟踪器中的对象特征确定各个跟踪器所跟踪的对象的对象类别;然后,将其他跟踪器中与目标对象的对象类别相同的其他对象所对应的跟踪器作为关联跟踪器。例如,目标对象的对象类别为类别a,其他跟踪器包括3个跟踪器:跟踪对象1的跟踪器1、跟踪对象2的跟踪器2以及跟踪对象3的跟踪器3;并且,对象1属于类别r、对象2属于类别c、对象3属于类别a。那么,可将用于跟踪对象3的跟踪器3确定与目标跟踪器相关联的关联跟踪器。

下面以目标对象为例,对如何根据对象特征确定对象类别的具体实施方式进行阐述:首先,计算机设备可调用CSQ模型将目标跟踪器中存储的对象特征映射为一个哈希编码。由于CSQ模型在模型训练时会学习到多个hash code中心(hash center),且每个hashcode中心具有一个类别;因此,计算机设备可分别计算每个hash code中心和映射得到的哈希编码之间的距离,并将最小距离所指示的hash code中心的类别作为目标对象的对象类别。需要说明的是,在实际应用中可根据不同视频的对象跟踪场景设置不同的训练数据,从而使得CSQ模型学习到不同的类别。例如,针对游戏视频(如王者荣耀的游戏视频)的对象跟踪场景,可设置103个类别(包含101个英雄和2个辅助类别),辅助类别为所有英雄都可能出现的草丛类和光效类,旨在减少草丛、光效遮盖对英雄特征匹配和分类的影响,提升模型对英雄图片的分类检索能力。

S409,若成功查找到一个或多个关联跟踪器,则将一个或多个关联跟踪器中所存储的轨迹信息和目标跟踪器所存储的轨迹信息进行轨迹融合处理,得到目标对象在目标视频中的运动轨迹。

需要说明的是,若未成功查找到关联跟踪器,则可表明目标对象只存在一个跟踪器(即目标跟踪器);那么此情况下,便可直接将目标跟踪器中所存储的轨迹信息所指示的轨迹,作为目标对象在目标视频中的运动轨迹。

本发明实施例在对目标视频进行对象跟踪的过程中,可通过将对象跟踪、对象检测和对象重识别相结合,实现对新的目标对象进行较好的对象跟踪处理。具体的,若目标视频中的当前图像包括目标对象(即在当前图像中存在目标检测结果但不存在跟踪结果的对象),则可获取目标对象的至少两个属性信息;并可结合该至少两个属性信息对目标对象进行重识别处理,以通过多个属性信息的分析融合来提升重识别结果的准确性以及鲁棒性。然后,可根据重识别结果较为准确地确定出目标对象对应的目标跟踪器,使得可调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,从而较为准确地得到目标对象在目标视频中的运动轨迹。

请参见图6,是本发明实施例提供的另一种对象跟踪方法的流程示意图,该对象跟踪方法可以由上述所提及的计算机设备执行。请参见图6,该对象跟踪方法可包括以下步骤S601-S607:

S601,获取目标视频中的当前图像,目标视频中包括一个或多个对象。

S602,若当前图像中包括目标对象,则为目标对象启动一个临时跟踪器。

S603,调用临时跟踪器在目标视频的目标图像中对目标对象进行对象跟踪处理,目标图像是位于当前图像之后的一帧或多帧图像,且目标图像和当前图像构成连续的图像序列。

S604,若在目标图像中均成功跟踪到目标对象,则从临时跟踪器中获取目标对象的至少两个属性信息。

S605,根据至少两个属性信息对目标对象进行重识别处理。

需要说明的是,步骤S601-S605中的部分步骤的具体实施方式可参见上述发明实施例中的步骤S401-S404的相关描述,在此不再赘述。

S606,根据重识别结果确定目标对象对应的目标跟踪器。

若重识别结果指示目标对象为新的对象,则可将临时跟踪器转换成永久跟踪器,并将转换得到的永久跟踪器作为目标对象对应的目标跟踪器。具体的,由前述可知,临时跟踪器是指具有临时的跟踪器标识的跟踪器;那么将临时跟踪器转换成永久跟踪器时,可生成一个永久的跟踪器标识(如目标对象在目标视频中的编号或者跟踪器名称等),并将临时跟踪器的跟踪器标识从该临时的跟踪器标识更新为该生成的永久的跟踪器标识,从而实现将临时跟踪器转换成永久跟踪器。

若重识别结果指示目标对象为历史对象,则将临时跟踪器转换成永久跟踪器;具体的,可获取历史跟踪该目标对象的历史跟踪器的跟踪器标识,并将临时跟踪器的跟踪器标识从该临时的跟踪器标识更新为该获取到的跟踪器标识,从而实现将临时跟踪器转换成永久跟踪器。然后,可将历史跟踪目标对象的历史跟踪器中所存储的轨迹信息转移至永久跟踪器中,将具有跟踪信息的永久跟踪器作为目标跟踪器。可选的,也可先将历史跟踪目标对象的历史跟踪器中所存储的轨迹信息转移至临时跟踪器中,将具有跟踪信息的临时跟踪器转换成永久跟踪器,得到目标跟踪器。或者,轨迹信息的转移和跟踪器的转换还可同步执行,本申请对此不作限定。

S607,调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,以得到目标对象在目标视频中的运动轨迹。

在本发明实施例中,剩余图像可包括目标视频中位于目标图像之后的所有图像。在具体实施过程中,计算机设备可在剩余图像包括的各帧图像中,调用目标跟踪器对目标对象进行对象跟踪。若在剩余图像内的任一帧图像中,目标对象不存在检测结果而存在目标跟踪器所跟踪到的跟踪结果,则可暂停目标跟踪器;若在剩余图像内的任一帧图像中,目标对象存在检测结果以及目标跟踪器所跟踪到的跟踪结果,则可将该检测结果或者跟踪结果所指示的目标对象在该任一帧图像中的位置信息添加至目标跟踪器所存储的轨迹信息中,以更新目标跟踪器中的轨迹信息。当目标视频中的各帧图像均被处理完,则可直接获取目标对象所对应的最终跟踪器;并根据最终跟踪器所存储的轨迹信息所指示的目标对象在目标视频中的各帧图像中的位置信息,得到目标对象的运动轨迹。

其中,最终跟踪器是指在剩余图像中最后对目标对象进行对象跟踪的跟踪器。具体的,在剩余图像的对象跟踪过程中,若目标跟踪器存储的轨迹未被转移至其他的临时跟踪器中,则最终跟踪器就是目标跟踪器;相反,若目标跟踪器存储的轨迹信息被转移至其他的临时跟踪器中,则最终跟踪器可为其他的临时跟踪器。

在本发明实施例中,由于在确定当前图像存在目标对象后,并未急于确定目标跟踪器,而是在临时跟踪器运行一段时间后,根据临时跟踪器中存储的从多帧图像中获取到的多信息来确定目标跟踪器的,可有效提升跟踪器匹配的准确性;并且,在确定目标对象存在历史跟踪器时,通过将历史跟踪器中的轨迹信息转移至临时跟踪器进行存储,可实现在在线跟踪流程中对目标对象的轨迹融合,从而避免目标对象的运动轨迹存在轨迹分裂的现象。

在实际应用中,可根据实际需求将上述图2-图6所示的对象跟踪方法运用到任一视频中,如游戏视频、影视视频、监控视频等。下面以游戏视频为例,对上述所提及的对象跟踪方法的具体运用过程进行阐述:

(一)在线跟踪流程:

第一步:可从游戏视频中获取当前图像,并对当前图像进行对象检测,以得到一个或多个第一英雄(即检测到的虚拟角色对象)的检测结果;一个检测结果包括一个英雄外包框、一个血条框(即生命值指示元素的元素外包框)以及一个名字框(即名称外包框)。具体的,可通过检测血条(如生命值指示元素)的位置,进而根据几何关系(即前述所提及的标识和对象的位置显示关系)推测出第一英雄的位置与玩家ID(即对象名称)的位置。具体的,参见图7a所示,可对当前图像进行血条检测,从而确定出一个或多个血条框,一个血条框对应一个第一英雄。针对任一血条框,可根据任一血条框在当前图像中的显示位置进行位置预测,从而确定出该任一血条框所对应的第一英雄的英雄框(即对象外包框)以及名字框,如图7b所示。

其中,血条检测可使用快速的一阶段检测模型YOLO v3。同YOLO之前的版本相比,v3拥有提取特征更好的backbone(骨干)网络,将类别预测方面的单标签分类修改为多标签分类,并进行了多尺度融合方式的预测,对小目标的检测效果更好。实际的血条检测模型训练时,还可通过更换backbone来获得tiny版本的血条检测模型(包括模型参数较少的模型)和full版本的血条检测模型(包括模型参数较多的模型),从而使得在实际应用中可根据模型大小和指标需求来衡量选取合适的血条检测模型。

另外,还可对当前图像进行对象跟踪,得到一个或多个第二英雄的跟踪结果;一个跟踪结果包括一个英雄外包框、一个血条框以及一个名字框。

第二步:对第一步中获取到的各个检测结果和跟踪结果进行结果匹配,若根据匹配结果确定当前图像存在目标英雄(即目标对象),则可首先禁止不同血条颜色的检测结果与跟踪器之间的匹配,即可在获取到的所有跟踪结果中,将其所包括的血条颜色(即生命值指示元素的显示颜色)与目标英雄的目标检测结果中的血条颜色不同的跟踪结果(可称为无效跟踪结果)给过滤掉;通过过滤这些无效跟踪结果,可以减少特征匹配时所需消耗的处理资源,并提升后续的特征匹配效率。然后,再按照血条颜色是否匹配(即如血条颜色是否为绿色(即基准显示颜色))、玩家ID特征(即目标文本特征)是否匹配、运动位置是否匹配、外形特征是否匹配的顺序进行重识别,以识别目标英雄是否为新的英雄,如图7c所示。若以上特征均不符合,则说明目标英雄为新出现的英雄,需要新开一个跟踪类(即启动一个新的跟踪器)进行之后的跟踪工作,如图7d所示;若存在一个特征符合,则说明目标英雄为历史出现过的英雄,即说明目标英雄不是新的英雄,此时可重新启动目标英雄对应的历史跟踪器以进行之后的跟踪工作。其中,每个特征的特征匹配方式如下:

①英雄外形特征匹配

为了使外观模型包含重识别匹配时的特征距离度量和轨迹融合时的英雄分类两个能力,该模块在求取英雄视觉特征时使用图像视频检索模型CSQ,其目标是为输入的图像映射为固定长度的hash code特征。运用在英雄外观特征的匹配时,模型在backbone提取特征后映射为128维的哈希编码,通过对跟踪器特征映射的hash code与检测英雄包围框图片的hash code进行汉明距离的计算,可以进行匹配距离的度量,同时设置一定的阈值可以确认检测结果与跟踪器是否成功匹配。

在获取某一英雄图像的类别时,可以通过求取英雄图像特征距离最小的hashcenter得到其对应类别。在实际训练时,设置了103个类别(包含101个英雄和2个辅助类别),辅助类别为所有英雄都可能出现的草丛类和光效类,旨在减少草丛、光效遮盖对英雄特征匹配和分类的影响,提升模型对英雄图片的分类检索能力。

②血条特征匹配

血条特征匹配是指:血条颜色和基准显示颜色之间的匹配。考虑到血条灰色部分三通道的灰度值可能存在差异,因此本申请在求取血条特征(即血条颜色)时只截取血条显示区域中的部分区域图像,并对截取的部分区域图像进行颜色识别,得到血条颜色,使得颜色结果更鲁棒。其中,部分区域图像的截取范围可根据经验值设置;例如,若在血条中,血量(即剩余生命量)的变化趋势是从右往左的,即用户视觉上可感觉血量在血条中是从右往左减少的,则部分区域图像的截取范围可以是:血条左侧1/4的区域;又如,若在血条中,血量(即剩余生命量)的变化趋势是从左往右的,即用户视觉上可感觉血量在血条中是从左往右减少的,则部分区域图像的截取范围可以是:血条右侧1/4的区域,依次类推。

③玩家ID特征匹配

玩家ID特征(即目标文本特征)为截取文字区域(即前述所提及的文本图像)的HOG特征,具体求取流程如下。首先将根据血条位置推理得到的玩家ID图像(即名称区域图像)的三通道灰度值分别进行阈值二值化处理,再进行与操作获取单通道的二值化图像,二值化图像在x方向(水平方向)和y方向(竖直方向)上的投影会出现峰值(即各个像素点的目标像素值的总和大于阈值的像素行或像素列),以此为依据截取更精确的文字区域,对此区域resize到相同大小(即前述所提及的固定尺寸),求取HOG特征。因为玩家ID特征间的差异和文字长度、纹理复杂程度相关,也会受到遮盖和背景的影响,存在着一定不确定性,使用单一固定的阈值并不能满足匹配需求,因此可采用上述公式1.1或1.2计算动态阈值,以进行匹配。

④运动位置匹配

运动位置匹配是指:将目标位置坐标和预测位置坐标进行匹配。因为游戏场景下英雄的外形频繁变化,跟踪器有一定概率丢失目标,为弥补当外形信息缺失时跟踪系统的匹配能力,可为每一个跟踪器引入了匀速线性卡尔曼滤波器的运动预测和上一帧跟踪结果的运动信息。

若外包框的目标位置坐标包括左上角坐标(x

x

其中,观测向量可作为预测位置坐标。英雄在游戏界面里一段时间内的行走可以视为一个匀速运动的过程,可以使用卡尔曼滤波器进行预测,每一帧跟踪结束时再使用检测的结果作为观测值,对卡尔曼滤波器进行更新。当英雄发生转向时,卡尔曼滤波器的结果不再可靠,但上一帧的跟踪结果会和当前帧有较大重合。借助这两个运动信息,可以减少重识别中外形信息的计算量,也使得跟踪更加准确。

(二)离线融合流程:

在游戏视频中的各帧图像均被处理完后,可对产生的多条跟踪轨迹使用匹配模块的图像检索模型CSQ求取英雄类别,将时间上不重合且为同一英雄类别的轨迹进行融合。需要说明的是,上述均是基于图4所示的对象跟踪方法进行阐述的;但在其他实施例中,也可通过图6所示的对象跟踪方法实现对游戏视频的对象跟踪,此情况下可实现在在线跟踪流程中融合轨迹信息,无需执行离线融合流程。

本发明实施例可结合视觉信息与运动信息的优势,使用在线跟踪与离线轨迹融合的设计,达到对复杂多变、光效遮盖情况多发的游戏场景下游戏人物的跟踪目的;通过离线轨迹融合可以在一定程度上解决在线跟踪过程中因重识别能力不足、跟踪器丢失目标带来的轨迹分裂、跟踪目标交换ID(即对象名称)等问题。并且,在线跟踪过程中通过多信息融合的方法可有效提升对象跟踪的准确率;把目标跟踪、检测和重识别相结合,以及把血条、玩家名字、运动特征、外观特征信息相结合,通过多种有用信息的分析融合可有效提升跟踪结果的鲁棒性。另外,在对象检测时,通过使用辅助信息(如血条、对象名称)的检测,进而实现游戏人物位置的检测,可有效降低游戏人物检测的难度。除此之外,本发明实施例在离线轨迹融合过程所涉及的跟踪目标分类中加入了非游戏人物的辅助类别,有效解决了在重识别与轨迹分类过程中因草丛和光效遮挡引发的特征混淆问题。

基于上述对象跟踪方法实施例的描述,本发明实施例还公开了一种对象跟踪装置,所述对象跟踪装置可以是运行于上述所提及的计算机设备中的一个计算机程序(包括程序代码)。该对象跟踪装置可以执行图2、图4或者图6所示的方法。请参见图8,所述对象跟踪装置可以运行如下单元:

获取单元801,用于获取目标视频中的当前图像,所述当前图像为所述目标视频中未处理的一帧图像,所述目标视频中包括一个或多个对象;

所述获取单元801,还用于若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;

处理单元802,用于根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;

所述处理单元802,还用于调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹。

在一种实施方式中,所述处理单元802还可用于:

对所述当前图像进行对象检测,得到M个检测结果,M为自然数;一个检测结果至少包括:一个第一对象的对象外包框,所述第一对象为对所述当前图像进行对象检测所检测到的对象;

调用N个处于运行状态的跟踪器对所述当前图像进行对象跟踪,得到N个跟踪结果,N为自然数;一个跟踪结果至少包括:一个第二对象的对象外包框,所述第二对象为对所述当前图像进行对象跟踪所跟踪到的对象;

分别根据第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比,确定所述第m个检测结果和所述每个跟踪结果之间的匹配度,m∈[1,M];

若所述第m个检测结果和各个跟踪结果之间的匹配度均小于阈值,则确定所述当前图像中包括目标对象,所述目标对象为所述第m个检测结果所对应的第一对象。

再一种实施方式中,所述目标视频中的每个对象均具有对象标识;相应的,所述处理单元802在用于对所述当前图像进行对象检测,得到M个检测结果时,可具体用于:

对所述当前图像进行标识检测,得到M个对象标识,并确定每个对象标识在所述当前图像中的标识显示位置;

根据标识和对象之间的位置显示关系,以及第m个对象标识在当前图像中的标识显示位置,预测第m个第一对象在所述当前图像中的对象显示位置,所述第m个第一对象为所述第m个对象标识指示的对象;

在所述第m个第一对象在所述当前图像中的对象显示位置处,确定所述第m个第一对象的对象外包框。

再一种实施方式中,所述处理单元802在用于根据所述至少两个属性信息对所述目标对象进行重识别处理时,可具体用于:

获取与所述目标视频关联的至少一个历史跟踪器,并遍历所述至少一个历史跟踪器;其中,所述历史跟踪器是处于暂停状态的跟踪器,一个历史跟踪器用于跟踪一个历史对象,所述历史对象为在所述目标视频中位于所述当前图像之前的至少一帧图像中出现过的对象;

根据所述至少两个属性信息,和当前遍历的目标历史跟踪器所跟踪的目标历史对象的对象特征,对所述目标对象和所述目标历史对象进行对象匹配;

若对象匹配成功,则确定所述目标对象和所述目标历史对象为同一个对象;

若对象匹配失败,则继续遍历,并在确定各个历史跟踪器所跟踪的历史对象与所述目标对象均不匹配时,确定所述目标对象为新的对象;所述新的对象为在所述目标视频中位于所述当前图像之前的各帧图像中均未出现的对象。

再一种实施方式中,所述处理单元802在用于根据所述至少两个属性信息,和当前遍历的目标历史跟踪器所跟踪的目标历史对象的对象特征,对所述目标对象和所述目标历史对象进行对象匹配时,可具体用于:

从所述至少两个属性信息中未被选取的属性信息中选取目标属性信息;

获取当前遍历的目标历史跟踪器所跟踪的目标历史对象的历史对象特征,所述历史对象特征为所述目标历史跟踪器所存储的目标历史对象的对象特征中,与所述目标属性信息对应的对象特征;

对所述目标属性信息和所述历史对象特征进行特征匹配;

若特征匹配成功,则确定对象匹配成功;若特征匹配失败,则再次执行从所述至少两个属性信息中未被选取的属性信息中选取目标属性信息的步骤,直至各个属性信息均被选取完。

再一种实施方式中,所述目标对象存在目标检测结果,且所述目标检测结果中包括所述目标对象的对象外包框;

所述至少两个属性信息包括以下任意两种或三种:所述目标对象的对象名称的目标文本特征、所述目标对象的目标外形特征,以及所述目标检测结果中的对象外包框在所述当前图像中的目标位置坐标;

其中,所述目标位置信息的选取顺序晚于所述目标文本特征的选取顺序,且早于所述目标外形特征的选取顺序。

再一种实施方式中,所述目标属性信息为所述目标文本特征,所述历史对象特征为所述目标历史对象的对象名称的历史文本特征;相应的,所述处理单元802在用于对所述目标属性信息和所述历史对象特征进行特征匹配时,可具体用于:

计算所述目标文本特征和所述历史文本特征之间的特征差值;

若所述特征差值小于或等于所述目标历史跟踪器对应的动态阈值,则确定特征匹配成功;若所述特征差值大于所述动态阈值,则确定特征匹配失败;

其中,所述动态阈值是根据所述目标历史对象的一个或多个文本特征变化值计算得到的,任一文本特征变化值为所述目标历史对象的第一对象名称的文本特征和第二对象名称的文本特征之间的差值;

所述第一对象名称是从历史图像中检测到的所述目标历史对象的对象名称,所述第二对象名称是由所述目标历史跟踪器从所述历史图像中跟踪到的所述目标历史对象的对象名称;所述历史图像是指所述目标视频中位于所述当前图像之前,且由所述目标历史跟踪器成功跟踪到所述目标历史对象的一帧图像。

再一种实施方式中,所述目标属性信息为所述目标位置坐标,所述历史对象特征为所述目标历史对象的运动特征;相应的,所述处理单元802在用于对所述目标属性信息和所述历史对象特征进行特征匹配时,可具体用于:

根据所述目标历史对象的运动特征,预测得到所述目标历史对象的对象外包框在所述当前图像中的预测位置坐标;

若所述目标位置坐标和所述预测位置坐标相匹配,则确定特征匹配成功;若所述目标位置坐标和所述预测位置坐标不匹配,则确定特征匹配失败。

再一种实施方式中,所述目标视频中的各个对象均是指目标游戏中的虚拟角色对象;所述至少两个属性信息还包括:所述目标对象的生命值指示元素的目标显示颜色,所述生命值指示元素用于指示所述目标对象的剩余生命量;相应的,处理单元802还可用于:

获取基准显示颜色,所述基准显示颜色是指所述目标游戏中的主人态用户所使用的虚拟角色对象的生命值指示元素的显示颜色;

若所述目标显示颜色为所述基准显示颜色,则确定所述目标对象为历史对象;

若所述目标显示颜色不为所述基准显示颜色,则执行根据所述至少两个属性信息,和当前遍历的当前跟踪器所跟踪的当前历史对象的对象特征,对所述目标对象和所述当前历史对象进行对象匹配的步骤。

再一种实施方式中,所述获取单元801在用于若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息时,可具体用于:

若所述当前图像中包括目标对象,则根据所述目标对象的目标检测结果从所述当前图像中裁剪出待检测的目标区域图像;

对所述目标区域图像进行特征提取处理,得到所述目标对象的至少两个属性信息。

再一种实施方式中,所述目标对象存在目标检测结果,且所述目标检测结果包括:所述目标对象的对象名称的名称外包框,所述目标区域图像包括:所述目标检测结果中的名称外包框所对应的名称区域图像,所述至少两个属性信息包括:所述目标对象的对象名称的目标文本特征;相应的,所述获取单元801在用于对所述目标区域图像进行特征提取处理,得到所述目标对象的至少两个属性信息时,可具体用于:

获取所述名称区域图像所对应的二值化图像;

根据所述二值化图像在目标方向上的投影,从所述名称区域图像中截取出文本图像;

对所述文本图像进行特征提取,得到所述目标文本特征。

再一种实施方式中,所述获取单元801在用于获取所述名称区域图像所对应的二值化图像时,可具体用于:

遍历所述名称区域图像中的各个像素点,并获取当前遍历的当前像素点在目标颜色空间中的各个颜色通道下的灰度值;

对当前像素点在各个颜色通道下的灰度值进行二值化处理,得到所述当前像素点在所述各个颜色通道下的二值化结果;

对所述当前像素点在所述各个颜色通道下的二值化结果执行与操作,得到所述当前像素点的目标像素值;

当所述名称区域图像中的各个像素点均被遍历,则采用所述各个像素点的目标像素值构建所述名称区域图像所对应的二值化图像。

再一种实施方式中,所述目标方向包括水平方向和竖直方向,所述投影包括:所述二值化图像在所述水平方向上的P行像素点的目标像素值,以及所述二值化图像在所述竖直方向上的Q行像素点的目标像素值;其中,P和Q均为正整数;相应的,所述获取单元801在用于根据所述二值化图像在目标方向上的投影,从所述名称区域图像中截取出文本图像时,可具体用于:

计算第p行中各个像素点的目标像素值的第一总和,若所述第一总和大于第一阈值,则将所述第p行中的各个像素点添加至第一集合中;p∈[1,P];

计算第q列中各个像素点的目标像素值的第二总和,若所述第二总和大于第二阈值,则将所述第q列中的各个像素点添加至第二集合中;q∈[1,Q];

求取所述第一集合和所述第二集合之间的交集,并在所述名称区域图像中截取所述交集中的各个像素点所构成的图像作为文本图像。

再一种实施方式中,处理单元802还可用于:

当所述目标视频中的各帧图像均被处理完,则获取所述目标视频所对应的跟踪器集合,所述跟踪器集合中包括:所述目标跟踪器以及对所述目标视频进行跟踪处理的其他跟踪器;

从所述其他跟踪器中查找与所述目标跟踪器相关联的关联跟踪器,所述关联跟踪器所跟踪的对象和所述目标对象为同一对象;

若成功查找到一个或多个关联跟踪器,则将所述一个或多个关联跟踪器中所存储的轨迹信息和所述目标跟踪器所存储的轨迹信息进行轨迹融合处理,得到所述目标对象在所述目标视频中的运动轨迹。

再一种实施方式中,获取单元801在用于若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息时,可具体用于:

若所述当前图像中包括目标对象,则为所述目标对象启动一个临时跟踪器;

调用所述临时跟踪器在所述目标视频的目标图像中对所述目标对象进行对象跟踪处理,所述目标图像是位于当前图像之后的一帧或多帧图像,且所述目标图像和所述当前图像构成连续的图像序列;

若在所述目标图像中均成功跟踪到所述目标对象,则从所述临时跟踪器中获取所述目标对象的至少两个属性信息。

再一种实施方式中,处理单元802在用于根据重识别结果确定所述目标对象对应的目标跟踪器时,可具体用于:

若所述重识别结果指示所述目标对象为新的对象,则将所述临时跟踪器转换成永久跟踪器,并将转换得到的永久跟踪器作为所述目标对象对应的目标跟踪器;

若所述重识别结果指示所述目标对象为历史对象,则将所述临时跟踪器转换成永久跟踪器,并将历史跟踪所述目标对象的历史跟踪器中所存储的轨迹信息转移至所述永久跟踪器中,将具有所述跟踪信息的永久跟踪器作为所述目标跟踪器;其中,所述历史对象为在所述目标视频中位于所述当前图像之前的至少一帧图像中出现过的对象。

根据本申请的一个实施例,图2、图4以及图6所示的方法所涉及的各个步骤均可以是由图8所示的对象跟踪装置中的各个单元来执行的。例如,图2中所示的步骤S201-S202均可由图8中所示的获取单元801,步骤S203-S204均可由处理单元802来执行。又如,图4中所示的步骤S401-S403均可由图8中所示的获取单元801,步骤S404-S409均可由处理单元802来执行。再如,图4中所示的步骤S601-S604均可由图8中所示的获取单元801,步骤S605-S607均可由处理单元802来执行,等等。

根据本申请的另一个实施例,图8所示的对象跟踪装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,基于对象跟踪装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。

根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2、图4或图6中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图8中所示的对象跟踪装置设备,以及来实现本发明实施例的对象跟踪方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。

本发明实施例在对目标视频进行对象跟踪的过程中,可通过将对象跟踪、对象检测和对象重识别相结合,实现对新的目标对象进行较好的对象跟踪处理。具体的,若目标视频中的当前图像包括目标对象(即在当前图像中可成功检测到但未成功跟踪到的对象),则可获取目标对象的至少两个属性信息;并可结合该至少两个属性信息对目标对象进行重识别处理,以通过多个属性信息的分析融合来提升重识别结果的准确性以及鲁棒性。然后,可根据重识别结果较为准确地确定出目标对象对应的目标跟踪器,使得可调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,从而较为准确地得到目标对象在目标视频中的运动轨迹。

基于上述方法实施例以及装置实施例的描述,本发明实施例还提供一种计算机设备。请参见图9,该计算机设备至少包括处理器901、输入接口902、输出接口903以及计算机存储介质904。其中,计算机设备内的处理器901、输入接口902、输出接口903以及计算机存储介质904可通过总线或其他方式连接。

计算机存储介质904可以存储在计算机设备的存储器中,所述计算机存储介质904用于存储计算机程序,所述计算机程序包括程序指令,所述处理器901用于执行所述计算机存储介质904存储的程序指令。处理器901(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能;在一个实施例中,本发明实施例所述的处理器901可以用于进行一系列的对象跟踪处理,具体包括:获取目标视频中的当前图像,所述当前图像为所述目标视频中未处理的一帧图像,所述目标视频中包括一个或多个对象;若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹,等等。

本发明实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了计算机设备的操作系统。并且,在该存储空间中还存放了适于被处理器901加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机存储介质。

在一个实施例中,可由处理器901加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关对象跟踪方法实施例中的方法的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器901加载并执行如下步骤:

获取目标视频中的当前图像,所述当前图像为所述目标视频中未处理的一帧图像,所述目标视频中包括一个或多个对象;

若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息;其中,所述目标对象为在所述当前图像中成功检测到,且未成功跟踪到的对象;

根据所述至少两个属性信息对所述目标对象进行重识别处理,并根据重识别结果确定所述目标对象对应的目标跟踪器;

调用所述目标跟踪器在所述目标视频中未处理的剩余图像中对所述目标对象进行对象跟踪,以得到所述目标对象在所述目标视频中的运动轨迹。

在一种实施方式中,所述一条或多条指令还可以由处理器901加载并具体执行:

对所述当前图像进行对象检测,得到M个检测结果,M为自然数;一个检测结果至少包括:一个第一对象的对象外包框,所述第一对象为对所述当前图像进行对象检测所检测到的对象;

调用N个处于运行状态的跟踪器对所述当前图像进行对象跟踪,得到N个跟踪结果,N为自然数;一个跟踪结果至少包括:一个第二对象的对象外包框,所述第二对象为对所述当前图像进行对象跟踪所跟踪到的对象;

分别根据第m个检测结果中的对象外包框和每个跟踪结果中的对象外包框之间的交并比,确定所述第m个检测结果和所述每个跟踪结果之间的匹配度,m∈[1,M];

若所述第m个检测结果和各个跟踪结果之间的匹配度均小于阈值,则确定所述当前图像中包括目标对象,所述目标对象为所述第m个检测结果所对应的第一对象。

再一种实施方式中,所述目标视频中的每个对象均具有对象标识;相应的,在对所述当前图像进行对象检测,得到M个检测结果时,所述一条或多条指令可由处理器901加载并具体执行:

对所述当前图像进行标识检测,得到M个对象标识,并确定每个对象标识在所述当前图像中的标识显示位置;

根据标识和对象之间的位置显示关系,以及第m个对象标识在当前图像中的标识显示位置,预测第m个第一对象在所述当前图像中的对象显示位置,所述第m个第一对象为所述第m个对象标识指示的对象;

在所述第m个第一对象在所述当前图像中的对象显示位置处,确定所述第m个第一对象的对象外包框。

再一种实施方式中,在根据所述至少两个属性信息对所述目标对象进行重识别处理时,所述一条或多条指令可由处理器901加载并具体执行:

获取与所述目标视频关联的至少一个历史跟踪器,并遍历所述至少一个历史跟踪器;其中,所述历史跟踪器是指处于暂停状态的跟踪器,一个历史跟踪器用于跟踪一个历史对象,所述历史对象为在所述目标视频中位于所述当前图像之前的至少一帧图像中出现过的对象;

根据所述至少两个属性信息,和当前遍历的目标历史跟踪器所跟踪的目标历史对象的对象特征,对所述目标对象和所述目标历史对象进行对象匹配;

若对象匹配成功,则确定所述目标对象和所述目标历史对象为同一个对象;

若对象匹配失败,则继续遍历,并在确定各个历史跟踪器所跟踪的历史对象与所述目标对象均不匹配时,确定所述目标对象为新的对象;所述新的对象为在所述目标视频中位于所述当前图像之前的各帧图像中均未出现的对象。

再一种实施方式中,在根据所述至少两个属性信息,和当前遍历的目标历史跟踪器所跟踪的目标历史对象的对象特征,对所述目标对象和所述目标历史对象进行对象匹配时,所述一条或多条指令可由处理器901加载并具体执行:

从所述至少两个属性信息中未被选取的属性信息中选取目标属性信息;

获取当前遍历的目标历史跟踪器所跟踪的目标历史对象的历史对象特征,所述历史对象特征为所述目标历史跟踪器所存储的目标历史对象的对象特征中,与所述目标属性信息对应的对象特征;

对所述目标属性信息和所述历史对象特征进行特征匹配;

若特征匹配成功,则确定对象匹配成功;若特征匹配失败,则再次执行从所述至少两个属性信息中未被选取的属性信息中选取目标属性信息的步骤,直至各个属性信息均被选取完。

再一种实施方式中,所述目标对象存在目标检测结果,且所述目标检测结果中包括所述目标对象的对象外包框;

所述至少两个属性信息包括以下任意两种或三种:所述目标对象的对象名称的目标文本特征、所述目标对象的目标外形特征,以及所述目标检测结果中的对象外包框在所述当前图像中的目标位置坐标;

其中,所述目标位置信息的选取顺序晚于所述目标文本特征的选取顺序,且早于所述目标外形特征的选取顺序。

再一种实施方式中,所述目标属性信息为所述目标文本特征,所述历史对象特征为所述目标历史对象的对象名称的历史文本特征;相应的,在对所述目标属性信息和所述历史对象特征进行特征匹配时,所述一条或多条指令可由处理器901加载并具体执行:

计算所述目标文本特征和所述历史文本特征之间的特征差值;

若所述特征差值小于或等于所述目标历史跟踪器对应的动态阈值,则确定特征匹配成功;若所述特征差值大于所述动态阈值,则确定特征匹配失败;

其中,所述动态阈值是根据所述目标历史对象的一个或多个文本特征变化值计算得到的,任一文本特征变化值为所述目标历史对象的第一对象名称的文本特征和第二对象名称的文本特征之间的差值;

所述第一对象名称是从历史图像中检测到的所述目标历史对象的对象名称,所述第二对象名称是由所述目标历史跟踪器从所述历史图像中跟踪到的所述目标历史对象的对象名称;所述历史图像是指所述目标视频中位于所述当前图像之前,且由所述目标历史跟踪器成功跟踪到所述目标历史对象的一帧图像。

再一种实施方式中,所述目标属性信息为所述目标位置坐标,所述历史对象特征为所述目标历史对象的运动特征;相应的,在对所述目标属性信息和所述历史对象特征进行特征匹配时,所述一条或多条指令可由处理器901加载并具体执行:

根据所述目标历史对象的运动特征,预测得到所述目标历史对象的对象外包框在所述当前图像中的预测位置坐标;

若所述目标位置坐标和所述预测位置坐标相匹配,则确定特征匹配成功;若所述目标位置坐标和所述预测位置坐标不匹配,则确定特征匹配失败。

再一种实施方式中,所述目标视频中的各个对象均是指目标游戏中的虚拟角色对象;所述至少两个属性信息还包括:所述目标对象的生命值指示元素的目标显示颜色,所述生命值指示元素用于指示所述目标对象的剩余生命量;相应的,所述一条或多条指令还可由处理器901加载并具体执行:

获取基准显示颜色,所述基准显示颜色为所述目标游戏中的主人态用户所使用的虚拟角色对象的生命值指示元素的显示颜色;

若所述目标显示颜色为所述基准显示颜色,则确定所述目标对象为历史对象;

若所述目标显示颜色不为所述基准显示颜色,则执行根据所述至少两个属性信息,和当前遍历的当前跟踪器所跟踪的当前历史对象的对象特征,对所述目标对象和所述当前历史对象进行对象匹配的步骤。

再一种实施方式中,在若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息时,所述一条或多条指令可由处理器901加载并具体执行:

若所述当前图像中包括目标对象,则根据所述目标对象的目标检测结果从所述当前图像中裁剪出待检测的目标区域图像;

对所述目标区域图像进行特征提取处理,得到所述目标对象的至少两个属性信息。

再一种实施方式中,所述目标对象存在目标检测结果,且所述目标检测结果包括:所述目标对象的对象名称的名称外包框,所述目标区域图像包括:所述目标检测结果中的名称外包框所对应的名称区域图像,所述至少两个属性信息包括:所述目标对象的对象名称的目标文本特征;相应的,在对所述目标区域图像进行特征提取处理,得到所述目标对象的至少两个属性信息时,所述一条或多条指令可由处理器901加载并具体执行:

获取所述名称区域图像所对应的二值化图像;

根据所述二值化图像在目标方向上的投影,从所述名称区域图像中截取出文本图像;

对所述文本图像进行特征提取,得到所述目标文本特征。

再一种实施方式中,在获取所述名称区域图像所对应的二值化图像时,所述一条或多条指令可由处理器901加载并具体执行:

遍历所述名称区域图像中的各个像素点,并获取当前遍历的当前像素点在目标颜色空间中的各个颜色通道下的灰度值;

对当前像素点在各个颜色通道下的灰度值进行二值化处理,得到所述当前像素点在所述各个颜色通道下的二值化结果;

对所述当前像素点在所述各个颜色通道下的二值化结果执行与操作,得到所述当前像素点的目标像素值;

当所述名称区域图像中的各个像素点均被遍历,则采用所述各个像素点的目标像素值构建所述名称区域图像所对应的二值化图像。

再一种实施方式中,所述目标方向包括水平方向和竖直方向,所述投影包括:所述二值化图像在所述水平方向上的P行像素点的目标像素值,以及所述二值化图像在所述竖直方向上的Q行像素点的目标像素值;其中,P和Q均为正整数;相应的,在根据所述二值化图像在目标方向上的投影,从所述名称区域图像中截取出文本图像时,所述一条或多条指令可由处理器901加载并具体执行:

计算第p行中各个像素点的目标像素值的第一总和,若所述第一总和大于第一阈值,则将所述第p行中的各个像素点添加至第一集合中;p∈[1,P];

计算第q列中各个像素点的目标像素值的第二总和,若所述第二总和大于第二阈值,则将所述第q列中的各个像素点添加至第二集合中;q∈[1,Q];

求取所述第一集合和所述第二集合之间的交集,并在所述名称区域图像中截取所述交集中的各个像素点所构成的图像作为文本图像。

再一种实施方式中,所述一条或多条指令还可以由处理器901加载并具体执行:

当所述目标视频中的各帧图像均被处理完,则获取所述目标视频所对应的跟踪器集合,所述跟踪器集合中包括:所述目标跟踪器以及对所述目标视频进行跟踪处理的其他跟踪器;

从所述其他跟踪器中查找与所述目标跟踪器相关联的关联跟踪器,所述关联跟踪器所跟踪的对象和所述目标对象为同一对象;

若成功查找到一个或多个关联跟踪器,则将所述一个或多个关联跟踪器中所存储的轨迹信息和所述目标跟踪器所存储的轨迹信息进行轨迹融合处理,得到所述目标对象在所述目标视频中的运动轨迹。

再一种实施方式中,在若所述当前图像中包括目标对象,则获取所述目标对象的至少两个属性信息时,所述一条或多条指令可由处理器901加载并具体执行:

若所述当前图像中包括目标对象,则为所述目标对象启动一个临时跟踪器;

调用所述临时跟踪器在所述目标视频的目标图像中对所述目标对象进行对象跟踪处理,所述目标图像是位于当前图像之后的一帧或多帧图像,且所述目标图像和所述当前图像构成连续的图像序列;

若在所述目标图像中均成功跟踪到所述目标对象,则从所述临时跟踪器中获取所述目标对象的至少两个属性信息。

再一种实施方式中,在根据重识别结果确定所述目标对象对应的目标跟踪器时,所述一条或多条指令可由处理器901加载并具体执行:

若所述重识别结果指示所述目标对象为新的对象,则将所述临时跟踪器转换成永久跟踪器,并将转换得到的永久跟踪器作为所述目标对象对应的目标跟踪器;

若所述重识别结果指示所述目标对象为历史对象,则将所述临时跟踪器转换成永久跟踪器,并将历史跟踪所述目标对象的历史跟踪器中所存储的轨迹信息转移至所述永久跟踪器中,将具有所述跟踪信息的永久跟踪器作为所述目标跟踪器;其中,所述历史对象为在所述目标视频中位于所述当前图像之前的至少一帧图像中出现过的对象。

本发明实施例在对目标视频进行对象跟踪的过程中,可通过将对象跟踪、对象检测和对象重识别相结合,实现对新的目标对象进行较好的对象跟踪处理。具体的,若目标视频中的当前图像包括目标对象(即在当前图像中可成功检测到但未成功跟踪到的对象),则可获取目标对象的至少两个属性信息;并可结合该至少两个属性信息对目标对象进行重识别处理,以通过多个属性信息的分析融合来提升重识别结果的准确性以及鲁棒性。然后,可根据重识别结果较为准确地确定出目标对象对应的目标跟踪器,使得可调用目标跟踪器在目标视频中未处理的剩余图像中对目标对象进行对象跟踪,从而较为准确地得到目标对象在目标视频中的运动轨迹。

需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2、图4或图6所示的对象跟踪方法实施例方面的各种可选方式中提供的方法。

并且,应理解的是,以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

相关技术
  • 对象跟踪方法、装置、计算机设备及存储介质
  • 目标对象跟踪方法、装置、存储介质和计算机设备
技术分类

06120112669441