目标对象跟踪方法、装置、设备及计算机可读存储介质与流程

文档序号:23422016发布日期:2020-12-25 11:47阅读:124来源:国知局
目标对象跟踪方法、装置、设备及计算机可读存储介质与流程

本申请实施例涉及互联网技术领域,涉及但不限于一种目标对象跟踪方法、装置、设备及计算机可读存储介质。



背景技术:

目标跟踪技术是计算机视觉领域研究的热点,应用于人机交互、智能视频监控和交通检测等方面。

目前,目标跟踪技术通常使用光流、递归神经网络(rnn,recurrentneuralnetwork)或长短期记忆网络(lstm,longshort-termmemory)来进行目标跟踪时的模板更新,通常将模板从先前的帧传播到当前的帧以实现模板匹配。

尽管目前的目标跟踪方法能够利用时间信息来改善跟踪性能,但目前的目标跟踪方法只能捕获短时间内目标外观的变化,而忽略了目标外观的长期时间变化。由于目标很容易在短时间内发生严重的遮挡或较大的变形,这会使目标跟踪性能下降,因此,目前的目标跟踪方法的准确率较低。



技术实现要素:

本申请实施例提供一种目标对象跟踪方法、装置、设备及计算机可读存储介质,涉及人工智能技术领域。由于同时考虑初始模板和当前累积模板,实现对目标对象的实时跟踪,如此,能够在比较低的时间复杂度下捕获目标对象外观的长程变化,提高目标对象的跟踪性能和对目标对象跟踪的准确率。

本申请实施例的技术方案是这样实现的:

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

接收目标跟踪请求;所述目标跟踪请求中包括初始模板、当前累积模板和待跟踪图像,所述初始模板中包括所述目标对象;

响应于所述目标跟踪请求,对所述初始模板、所述当前累积模板和所述待跟踪图像对应的待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入;所述待跟踪区域中包括至少两个子区域;

对所述初始特征嵌入和所述当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;

对所述模板聚合特征嵌入和所述待跟踪特征嵌入进行互相关处理,得到每一所述子区域与所述目标对象之间的相似度;

根据所述相似度,在所述至少两个子区域中确定所述目标跟踪请求的跟踪结果,并输出所述跟踪结果。

本申请实施例提供一种目标对象跟踪装置,包括:

接收模块,用于接收目标跟踪请求;所述目标跟踪请求中包括初始模板、当前累积模板和待跟踪图像,所述初始模板中包括所述目标对象;

特征提取模块,用于响应于所述目标跟踪请求,对所述初始模板、所述当前累积模板和所述待跟踪图像对应的待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入;所述待跟踪区域中包括至少两个子区域;

聚合处理模块,用于对所述初始特征嵌入和所述当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;

互相关处理模块,用于对所述模板聚合特征嵌入和所述待跟踪特征嵌入进行互相关处理,得到每一所述子区域与所述目标对象之间的相似度;

确定模块,用于根据所述相似度,在所述至少两个子区域中确定所述目标跟踪请求的跟踪结果,并输出所述跟踪结果。

本申请实施例提供一种目标对象跟踪设备,包括:

存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现上述的目标对象跟踪方法。

本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行所述可执行指令时,实现上述的目标对象跟踪方法。

本申请实施例具有以下有益效果:同时考虑初始模板和当前累积模板,对初始模板的初始特征嵌入和当前累积模板的当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;并对模板聚合特征嵌入和待跟踪区域的待跟踪特征嵌入进行互相关处理,以确定待跟踪区域中每一子区域与目标对象之间的相似度,进而实现对目标对象的实时跟踪。如此,由于同时考虑初始模板和当前累积模板,实现对目标对象的实时跟踪,能够在比较低的时间复杂度下捕获目标对象外观的长程变化,提高目标对象的跟踪性能和对目标对象跟踪的准确率。

附图说明

图1是本申请实施例提供的目标对象跟踪系统的一个可选的架构示意图;

图2是本申请实施例提供的服务器的结构示意图;

图3是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图;

图4是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图;

图5是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图;

图6是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图;

图7是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图;

图8是本申请实施例提供的模板扩散网络训练方法的一个可选的流程示意图;

图9是本申请实施例提供的基于模板扩散网络的快速鲁棒目标对象跟踪方法流程图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。除非另有定义,本申请实施例所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本申请实施例所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。

为了更好地理解本申请实施例中提供的目标对象跟踪方法,首先对相关技术中的目标对象跟踪方法进行说明:

对于视觉跟踪任务,在目前主流的基于孪生网络的视觉跟踪方法中,首先在数据集中采样大量的图片对对孪生网络进行离线训练,然后在线跟踪时采用初始帧的模板与当前帧的搜索区域,通过孪生网络进行匹配以定位目标所在的位置。然而,视觉跟踪是一个动态的过程,基于孪生网络的视觉跟踪方法仅仅采用初始帧的模板(即初始模板)进行匹配无法适应目标对象的表观变化。

相关技术中,为了适应目标在跟踪过程中的表观变化,图卷积跟踪法(gct,graphconvolutionaltracking)充分利用模板的时空结构信息来构建图卷积网络以实现对目标对象的跟踪;流跟踪(flowtrack)在孪生网络中引入光流以及时空注意力机制来对模板进行有效聚合从而实现对目标对象的跟踪。为了提高孪生网络的在线适应能力,动态孪生网络(例如dsiamm)通过学习从初始模板到上一帧模板的快速变换,并提出了一个动态的孪生网络以适应跟踪过程中目标对象的表观变化;记忆力跟踪网络(例如memtrack)学习了一个动态记忆力网络,在跟踪过程中通过对记忆力模块进行读写来捕获目标表观变化。为了能够有效地对模板进行更新,梯度引导网络(gradnet)提出了一种梯度引导的孪生网络,以利用梯度信息来更新模板;在更新网络(例如updatenet和leupdate)中,研究人员分别采用了卷积神经网络(cnn,convolutionalneuralnetworks)和rnn对孪生网络的模板进行更新。

当前的这些跟踪方法通常使用光流、rnn或lstm来进行模板更新,通常将模板从先前的帧传播到当前的帧以实现模板匹配。尽管这些跟踪方法能够利用时间信息来改善跟踪性能,但它们仍然存在一些缺陷。例如,光流只能在连续的帧中反映运动信息,但所反应的运动信息会随着时间的流逝而积累误差。rnn通常采用截断的反向传播技术来减少计算复杂性并缓解梯度消失问题,这限制了rnn建模长期依赖关系的能力。lstm经常使用门控机制来缓解梯度消失问题,同时门控机制仍然存在梯度爆炸的问题。此外,这些跟踪方法只能捕获短时间内目标外观的变化,而忽略了目标外观的长期时间变化。由于目标很容易在短时间内发生严重的遮挡或较大的变形,这可能会使跟踪性能下降。

根据以上分析,为了解决相关技术中的目标对象跟踪方法所存在的至少一个问题,本申请实施例提出一种基于模板扩散网络(tdnet,templatediffusionnetwork)的快速鲁棒性目标对象跟踪方法,能够以较低的计算复杂度捕捉到目标随时间而产生的表观变化。本申请实施例所提出的tdnet将特征聚合模块(fam,featureaggregationmodule)嵌入到深度孪生网络中,以适应跟踪过程中目标对象外观随时间而产生的变化。fam本质上是一个简单而有效的注意力模块,能够有效地在通道和空间上构建模板特征嵌入之间的对应关系,建立初始模板和当前累积模板的长程依赖性。这样,本申请实施例所提出的tdnet能够以较低的计算成本有效地处理长程目标对象外观变化。在标准数据集上进行的实验表明,与几种最新的实时跟踪器相比,提出的tdnet可以显著提高跟踪性能,同时保持120每秒传输帧数(fps,framespersecond)的速度。

本申请实施例提供的目标对象跟踪方法,首先,接收目标跟踪请求;目标跟踪请求中包括初始模板、当前累积模板和待跟踪图像,初始模板中包括所述目标对象;然后,响应于目标跟踪请求,对初始模板、当前累积模板和待跟踪图像对应的待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入;然后,对初始特征嵌入和当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;对模板聚合特征嵌入和待跟踪特征嵌入进行互相关处理,得到待跟踪区域中的每一子区域与目标对象之间的相似度;最后,根据相似度,在至少两个子区域中确定目标跟踪请求的跟踪结果,并输出跟踪结果。如此,由于同时考虑初始模板和当前累积模板,实现对目标对象的实时跟踪,能够在比较低的时间复杂度下捕获目标对象外观的长程变化,提高目标对象的跟踪性能和对目标对象跟踪的准确率。

下面说明本申请实施例的目标对象跟踪设备的示例性应用,在一种实现方式中,本申请实施例提供的目标对象跟踪设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人、智能视频监控或交通监测装置等任意的终端,在另一种实现方式中,本申请实施例提供的目标对象跟踪设备还可以实施为服务器。下面,将说明目标对象跟踪设备实施为服务器时的示例性应用。

参见图1,图1是本申请实施例提供的目标对象跟踪系统10的一个可选的架构示意图。为实现对视频文件中目标对象的跟踪,本申请实施例提供的目标对象跟踪系统10中包括终端100、网络200和服务器300,其中,终端100上运行有视频播放应用或者具有视频录制单元,通过视频播放应用播放实时录制的视频或者预先录制的视频,并通过本申请实施例的方法,对视频中的目标对象进行跟踪。

本申请实施例的方法中,在获取到视频之后,终端100将视频的当前帧确定为待跟踪区域,并获取用户在视频中选择出的包括有目标对象的一帧图像,将这一帧图像确定为初始模板,终端100通过网络200向服务器300发送待跟踪区域和初始模板;服务器300根据上一时刻的跟踪结果,确定当前累积模板,并对获取的初始模板、当前累积模板和待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入;然后,对初始特征嵌入和当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;对模板聚合特征嵌入和待跟踪特征嵌入进行互相关处理,得到待跟踪区域中的每一子区域与目标对象之间的相似度;根据相似度在至少两个子区域中确定目标对象所在的目标子区域;将目标子区域确定为目标对象的跟踪结果;并将跟踪结果标记出来,将标记有跟踪结果的标记图像发送给终端100,终端100在当前界面上显示标记有跟踪结果的标记图像。通过本申请实施例的方法,可以对视频中的每一帧图像进行目标对象跟踪,如此,可以实现在终端100上实时标记显示目标对象。

本申请实施例提供的目标对象跟踪方法还涉及人工智能技术领域,可以通过人工智能技术中的计算机视觉技术和机器学习技术来实现。其中,计算机视觉技术(cv,computervision)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。本申请实施例,通过计算机视觉技术,实现对视频中的任意一帧图像进行目标对象的跟踪,以确定出图像中目标对象所在的位置或者确定图像中是否存在目标对象。

机器学习(ml,machinelearning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。本申请实施例中,通过机器学习技术实现对模板扩散网络的训练和网络参数的优化。

图2是本申请实施例提供的服务器300的结构示意图,图2所示的服务器300包括:至少一个处理器310、存储器350、至少一个网络接口320和用户接口330。服务器300中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统340。

处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。

用户接口330包括使得能够呈现媒体内容的一个或多个输出装置331,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口330还包括一个或多个输入装置332,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。

存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本申请实施例描述的存储器350旨在包括任意适合类型的存储器。在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。

操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;

网络通信模块352,用于经由一个或多个(有线或无线)网络接口320到达其他计算设备,示例性的网络接口320包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universalserialbus)等;

输入处理模块353,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。

在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2示出了存储在存储器350中的一种目标对象跟踪装置354,该目标对象跟踪装置354可以是服务器300中的目标对象跟踪装置,其可以是程序和插件等形式的软件,包括以下软件模块:接收模块3541、特征提取模块3542、聚合处理模块3543、互相关处理模块3544和确定模块3545,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。

在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的目标对象跟踪方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。

下面将结合本申请实施例提供的服务器300的示例性应用和实施,说明本申请实施例提供的目标对象跟踪方法。参见图3,图3是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图,将结合图3示出的步骤进行说明。

步骤s301,接收目标跟踪请求。

本申请实施例中,终端上运行有视频播放应用或目标跟踪应用,在终端播放视频的过程中,用户可以通过终端向服务器发送目标跟踪请求,目标跟踪请求用于请求对视频的任一帧中的目标对象进行跟踪,以呈现出目标对象在视频中的位置变化。

目标跟踪请求中包括初始模板、当前累积模板和待跟踪图像,初始模板中包括待跟踪的目标对象。

这里,初始模板是用户输入的选择模板,初始模板可以是待跟踪图像对应的视频中的某一帧图像,或者可以是预设的图像库中的任意一帧图像。初始模板中包括目标对象,用户可以预先确定要跟踪的目标对象,然后选择出包括有该目标对象的初始模板。

目标对象可以是任意一种类型的可移动或可发生形变的对象,例如,目标对象可以是某个人、某个动物或某辆车等对象,或者,目标对象还可以是手。本申请实施例的方法可以应用于任意一种目标对象跟踪系统中,例如该系统可以是道路交通监控系统,则对应的目标对象是某一辆车;或者,该系统可以是视频监控系统,则对应的目标对象可以是某个人;或者,该系统可以是手势监控和识别系统,则对应的目标对象可以是手,通过对视频中的手的运动和形变进行跟踪和监控,从而实现智能的手势识别。

当前累积模板是根据当前时刻之前的历史时间段内的历史累积模板所确定的模板,即对历史模板进行逐步累积之后所得到的模板。当前累积模板考虑了目标对象的外观随时间而产生的长程变化。

待跟踪区域是待跟踪图像所对应的图像区域,待跟踪图像可以是待跟踪的视频中的任意一帧视频帧,待跟踪区域中包括至少两个子区域,每两个子区域之间的图像大小可以相同也可以不同,或者,每个子区域的图像大小与初始目标的大小相同,且与当前累积模板的大小相同。

步骤s302,响应于目标跟踪请求,对初始模板、当前累积模板和待跟踪图像对应的待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入。

这里,待跟踪区域中包括至少两个子区域。本申请实施例中,可以采用任意一种特征提取网络对输入的初始模板、当前累积模板和待跟踪区域进行特征提取,以对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入。

步骤s303,对初始特征嵌入和当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入。

这里,聚合处理是指将初始特征嵌入和当前累积特征嵌入中与通道相关的特征、和与空间相关的特征分别进行聚合后得到的累加特征。

步骤s304,对模板聚合特征嵌入和待跟踪特征嵌入进行互相关处理,得到每一子区域与目标对象之间的相似度。

这里,互相关处理是指通过模板聚合特征嵌入和待跟踪特征嵌入,计算待跟踪区域中的每一子区域与目标对象之间的相似度,或者是计算待跟踪区域中的每一子区域中存在目标对象的概率值。

步骤s305,根据相似度,在至少两个子区域中确定目标跟踪请求的跟踪结果,并输出所述跟踪结果。

这里,将具有最高相似度的子区域确定为目标子区域,或者,将相似度大于相似度阈值的子区域确定为目标子区域,或者,按照相似度由大到小的顺序对待跟踪区域中的全部子区域进行排序,形成子区域序列,并将子区域序列中第一个子区域确定为目标子区域。

本申请实施例中,将目标子区域确定为目标对象的跟踪结果,即将目标子区域确定为目标跟踪请求的跟踪结果。在确定出目标子区域之后,还可以在待跟踪区域中标记出目标子区域,例如可以采用边界框标记出目标子区域,或者对除了目标子区域之外的其他区域进行虚化处理,仅重点显示目标子区域。

本申请实施例的目标对象跟踪方法,可以对视频中的某一目标对象进行跟踪,在视频播放过程中,在每一帧视频帧中均标记出所确定出的目标对象所在的目标子区域,如此,在视频的连续播放过程中,用户看到的则是边界框圈中目标对象,且边界框的位置随着目标对象位置的变化而相应的连续变化。

本申请实施例提供的目标对象跟踪方法,同时考虑初始模板和当前累积模板,对初始模板的初始特征嵌入和当前累积模板的当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;并对模板聚合特征嵌入和待跟踪区域的待跟踪特征嵌入进行互相关处理,以确定待跟踪区域中每一子区域与目标对象之间的相似度,进而实现对目标对象的实时跟踪。如此,由于同时考虑初始模板和当前累积模板,实现对目标对象的实时跟踪,能够在比较低的时间复杂度下捕获目标对象外观的长程变化,提高目标对象的跟踪性能和对目标对象跟踪的准确率。

在一些实施例中,目标对象跟踪方法可以应用于目标对象跟踪系统,目标对象跟踪系统中至少包括终端和服务器,终端上具有视频采集装置,终端例如可以是交通监测终端,为了对终端所实时采集的视频中的目标对象进行实时跟踪,本申请实施例的方法可以通过以下步骤实现,如图4所示,是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图,方法包括以下步骤:

步骤s401,终端采集获得待跟踪视频。

待跟踪视频中包括目标对象,当本申请实施例的方法应用于交通检测系统时,目标对象可以是具有某一牌照的车辆。

步骤s402,终端获取用户的选择操作。

在一些实施例中,选择操作对应视频中的任一视频帧,该视频帧中包括目标对象,选择操作用于选择将该视频帧作为初始模板进行目标对象的实时跟踪。举例来说,可以在当前采集的视频中,将目标对象首次出现的视频帧选择作为初始模板,或者,可以将清晰拍摄的任意一帧包括有目标对象的视频帧选择作为初始模板,从而实现对该目标对象的实时跟踪。

在另一些实施例中,选择操作可以不对应视频中的任一视频帧,通过选择操作选择图像库中的一帧预设图像,通过对当前采集的视频进行实时跟踪,确定该视频中是否存在该预设图像中的目标对象。举例来说,可以在图像库中存储有不同车辆(包括车牌号码)的照片,那么在进行目标车辆跟踪时,可以将该目标车辆的图像选择作为初始模板,对该目标车辆进行实时跟踪。

步骤s403,终端向服务器发送目标跟踪请求,目标跟踪请求中包括初始模板和视频,或者目标跟踪请求中包括初始模板和当前采集的视频帧。

这里,如果需要对预先录制好的视频中的目标对象进行跟踪,则可以将初始模板和视频发送给服务器,服务器对视频中的每一帧中出现的目标对象进行跟踪;如果需要对当前采集的视频帧中的目标对象进行跟踪,则可以将实时采集的视频帧依次发送给服务器来跟踪目标对象。

步骤s404,服务器将视频中的当前视频帧或者当前采集的视频帧对应的区域,确定为待跟踪区域。所述待跟踪区域中包括至少两个子区域。

步骤s405,服务器根据上一帧视频帧的跟踪结果,确定当前累积模板。

这里,当前累积模板是累积了历史视频帧中的模板信息和上一帧视频帧的跟踪结果的累积模板,也就是说,当前累积模板不仅考虑历史视频帧中的模板信息,还考虑了上一帧跟踪结果所确定出的目标对象所在的位置。

步骤s406,服务器对初始模板、当前累积模板和待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入。

步骤s407,服务器对初始特征嵌入和当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入。

步骤s408,服务器对模板聚合特征嵌入和待跟踪特征嵌入进行互相关处理,得到待跟踪区域中的每一子区域与目标对象之间的相似度。

步骤s409,服务器根据相似度,在至少两个子区域中确定目标对象所在的目标子区域。

步骤s410,服务器将目标子区域确定为目标对象的跟踪结果。

步骤s411,服务器根据跟踪结果,将目标子区域在视频中的当前视频帧或者当前采集的视频帧中进行标记,得到标记图像。

这里,可以将目标子区域在当前视频帧或当前采集的视频帧中圈出来,或者,将目标子区域的图像进行突出显示,例如提高目标子区域的亮度等,以得到标记图像。

步骤s412,服务器将标记图像发送给终端。

步骤s413,终端在当前界面上显示由标记图像所形成的跟踪视频。

本申请实施例提供的目标对象跟踪,终端将采集的视频发送给服务器,服务器对视频中的目标对象进行实时跟踪,在跟踪过程中,同时考虑初始模板和当前累积模板,能够在比较低的时间复杂度下捕获目标对象外观的长程变化,提高目标对象的跟踪性能和对目标对象跟踪的准确率,并且将跟踪结果实时在终端上向用户进行展示,提高了用户的使用体验,为交通监测系统的违法拍摄提供了监测的便捷性。

基于图3,图5是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图,如图5所示,在一些实施例中,步骤s303可以通过以下步骤实现:

步骤s501,对初始特征嵌入和当前累积特征嵌入进行空间特征聚合处理,得到空间聚合特征。

这里,空间特征聚合处理是指为了突出显示待跟踪图像保留在模板中的特征嵌入,并抑制待跟踪图像的背景区域相对应的特征嵌入,聚合初始模板和当前累积模板对应的初始特征嵌入和当前累积特征嵌入之中空间上相似的语义特征。

在一些实施例中,步骤s501中确定空间聚合特征可以通过以下步骤实现:

步骤s5011,获取初始特征嵌入的第一空间嵌入函数、和当前累积特征嵌入的第二空间嵌入函数。步骤s5012,根据第一空间嵌入函数和第二空间嵌入函数,确定初始特征嵌入与当前累积特征嵌入之间的空间相似性矩阵。步骤s5013,获取当前累积特征嵌入的第三空间嵌入函数和第一调整参数。步骤s5014,根据空间相似性矩阵、第三空间嵌入函数和第一调整参数,确定空间聚合特征在每一特征通道上的值,以得到所述空间聚合特征。

这里,第三空间嵌入函数与第二空间嵌入函数不同。

在一些实施例中,步骤s5011至步骤s5014中确定空间聚合特征es,可以通过以下公式(1-1)和(1-2)实现:

其中,bmn表示空间相似性矩阵b中第m行第n列的元素,b∈rn×n;z0表示初始特征嵌入,其中,z0∈rh×w×c表示当前累积特征嵌入,其中,r表示实数域,h表示模板高度,w表示模板宽度,c表示特征通道数;φs(z0)m表示初始特征嵌入z0的第m个特征通道的空间嵌入函数;表示当前累积特征嵌入的第n个特征通道的第一空间嵌入函数;n表示空间相似性矩阵b的大小;

表示输出的空间聚合特征es的第m个特征通道的值;β为第一调整参数,用于调整空间聚合特征es的值;表示当前累积特征嵌入的第n个特征通道的第二空间嵌入函数,且不同;表示初始特征嵌入z0在第m个特征通道的特征值。

步骤s502,对初始特征嵌入和当前累积特征嵌入进行通道特征聚合处理,得到通道聚合特征。

这里,由于模板(包括初始模板和当前累积模板)之中目标对象及其周围背景的特征通道是相互关联的,即某些特征通道协作表示相似的语义(例如目标对象、遮挡物或背景干扰),因此空间特征聚合处理是指聚合初始模板和当前累积模板特征之中语义相似的特征通道。

在一些实施例中,步骤s502中确定通道聚合特征可以通过以下步骤实现:

步骤s5021,获取初始特征嵌入的第一通道嵌入函数、和当前累积特征嵌入的第二通道嵌入函数。步骤s5022,根据第一通道嵌入函数和第二通道嵌入函数,确定初始特征嵌入与当前累积特征嵌入之间的通道相似性矩阵。步骤s5023,获取当前累积特征嵌入的第三通道嵌入函数和第二调整参数。步骤s5024,根据通道相似性矩阵、第三通道嵌入函数和第二调整参数,确定通道聚合特征在每一特征通道上的值,以得到通道聚合特征。

这里,第三通道嵌入函数与第二通道嵌入函数不同。

在一些实施例中,步骤s502中确定通道聚合特征ec,可以通过以下公式(1-3)和(1-4)实现:

其中,aij表示通道相似性矩阵a中第i行第j列的元素;z0表示初始特征嵌入,其中,z0∈rh×w×c表示当前累积特征嵌入,其中,r表示实数域,h表示模板高度,w表示模板宽度,c表示特征通道数;φc(z0)i表示初始特征嵌入z0的第i个特征通道的通道嵌入函数;表示当前累积特征嵌入的第j个特征通道的第一通道嵌入函数;

表示输出的通道聚合特征ec的第i个特征通道的值;γ为第二调整参数,用于调整通道聚合特征ec的值;表示当前累积特征嵌入的第j个特征通道的第二通道嵌入函数,且不同;表示初始特征嵌入z0在第i个特征通道的特征值。

步骤s503,根据空间聚合特征和通道聚合特征,确定模板聚合特征嵌入。

在一些实施例中,步骤s503可以通过以下步骤实现:

步骤s5031,获取初始特征嵌入。

步骤s5032,对初始特征嵌入、空间聚合特征和通道聚合特征的每一相应位置的元素进行求和,得到对应位置的元素和。

步骤s5033,根据全部位置的元素和,确定模板聚合特征嵌入。

这里,初始特征嵌入、空间聚合特征和通道聚合特征是三个具有相同维度的嵌入向量,在确定模板聚合特征嵌入时,将三个嵌入向量按照元素位置进行求和,即将三个嵌入向量中相同位置的元素进行求和得到元素和,然后将得到的元素和赋值于模板聚合特征嵌入的响相应位置,如此能够得到一个与初始特征嵌入、空间聚合特征和通道聚合特征具有相同维度的模板聚合特征嵌入。

基于图3,图6是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图,在一些实施例中,在对初始模板和当前累积模板进行特征提取之前,还包括确定初始模板和当前累积模板的方法,如图6所示,在步骤s301之前,方法还包括以下步骤:

步骤s601,获取当前时刻之前且与当前时刻相邻的历史时刻的历史累积模板、和根据历史时刻的跟踪结果确定的历史模板。

步骤s602,根据历史累积模板和历史模板,确定当前累积模板。

在一些实施例中,步骤s602可以通过以下公式(1-5)实现:

其中,表示所述当前累积模板;η表示学习率;表示所述历史累积模板;zt-1表示所述历史模板。这里需要说明的是,当前时刻为t时刻,t-1时刻表示当前时刻之前且与当前时刻相邻的历史时刻,由于当前累积模板是基于t-1时刻的信息计算得到的,所以当前累积模板表示为t-2时刻表示t-1时刻之前且与t-1时刻相邻的另一历史时刻。

步骤s603,在对待跟踪区域进行在线跟踪之前的初始化阶段,对当前时刻之前且与当前时刻相邻的历史时刻的历史累积模板进行初始化处理,得到初始化模板。

这里,初始化阶段是为了将历史时刻的历史累积模板初始化为初始模板,以进行本次的目标跟踪过程。

步骤s604,将初始化模板确定为初始模板。

在一些实施例中,初始模板和当前累积模板聚合形成一聚合模板,模板聚合特征嵌入是聚合模板的特征嵌入表示;基于图3,图7是本申请实施例提供的目标对象跟踪方法的一个可选的流程示意图,如图7所示,步骤s304可以通过以下步骤实现:

步骤s701,确定每一子区域在待跟踪特征嵌入中对应的子特征嵌入。

步骤s702,在待跟踪区域中,通过滑动聚合模板,以确定每一子区域与目标对象之间的相似度。

这里,通过滑动聚合模板,将当前滑动到的与待跟踪图像的待跟踪区域对应的子区域,与目标对象之间进行相似度计算,以确定出当前滑动到的子区域与目标对象之间的相似度。在滑动聚合模板时,每一次的滑动步长可以相同,且滑动步长小于聚合模板的尺寸,即前一次滑动到的子区域可以与后一次滑动到的子区域之间有重叠。本申请实施例中,可以按照预设的方向,且从待跟踪区域的边界位置开始滑动。

在一些实施例中,确定每一子区域与目标对象之间的所述相似度,可以通过以下公式(1-6)计算:

其中,f(z,x)表示子区域x与目标对象z之间的相似度函数,通过在待跟踪区域上滑动聚合模板,以计算每一子区域与目标对象之间的相似度得分;表示全卷积孪生网络的特征嵌入函数,用于对子区域x或目标对象z进行特征提取和特征嵌入,其中,表示针对于目标对象z的全卷积孪生网络的特征嵌入函数,表示针对于子区域x的全卷积孪生网络的特征嵌入函数;*表示互相关运算其中,互相关是指对两个函数分别作复数共轭和反向平移并使其相乘的无穷积分,或者说,第一个函数依次作复共轭和平移后与第二个函数相乘的无穷积分。

请继续参照图7,在确定出每一子区域与目标对象之间的相似度之后,方法还包括以下步骤:

步骤s703,根据每一子区域与目标对象之间的相似度,确定每一子区域的响应值;其中,所述相似度越高,对应子区域的响应值越大。

步骤s704,根据响应值,绘制与待跟踪区域对应的响应图。

响应图上不仅包括待跟踪区域中的每一子区域,还可以包括每一子区域的响应值,即将每一子区域的响应值添加到响应图中的相应位置,如此可以更加直观的看出每一子区域与目标对象之间的相似度的大小,从而能够快速的确定出目标子区域。

对应地,步骤s305可以通过以下步骤实现:

步骤s705,在响应图中,将最大响应值所对应的子区域,确定为目标子区域。步骤s706,将目标子区域确定为目标跟踪请求的跟踪结果。

本申请实施例提供的目标对象跟踪方法,还可以采用基于人工智能技术所训练得到的模板扩散网络来实现,即采用模板扩散网络进行特征提取、聚合处理和互相关处理,以得到待跟踪区域中的每一子区域与目标对象之间的相似度。

图8是本申请实施例提供的模板扩散网络训练方法的一个可选的流程示意图,如图8所示,训练方法包括以下步骤:

步骤s801,将样本初始模板、样本累积模板和样本跟踪区域输入至模板扩散网络中;样本初始模板中包括样本目标对象。

步骤s802,通过模板扩散网络中的特征提取网络,对样本初始模板、样本累积模板和样本跟踪区域分别进行特征提取,对应得到样本初始特征嵌入、样本累积特征嵌入和样本跟踪特征嵌入。

这里,模板扩散网络中可以具有一个特征提取网络,通过这一个特征提取网络分别对将样本初始模板、样本累积模板和样本跟踪区域进行特征提取,或者,模板扩散网络中可以具有三个特征提取网络,每个特征提取网络对应一种输入数据,通过这三个特征提取网络分别同时对将样本初始模板、样本累积模板和样本跟踪区域进行特征提取。

步骤s803,通过模板扩散网络中的空间特征聚合网络,对样本初始特征嵌入和样本累积特征嵌入进行空间特征聚合处理,得到样本空间聚合特征。

空间特征聚合网络用于聚合样本初始模板和样本累积模板之中空间上相似的语义特征。

步骤s804,通过模板扩散网络中的通道特征聚合网络,对样本初始特征嵌入和所述样本累积特征嵌入进行通道特征聚合处理,得到样本通道聚合特征。

通道特征聚合网络用于聚合样本初始模板和样本累积模板之中语义相似的特征通道。通道特征聚合网络与空间特征聚合网络的输入相同,且输出的样本空间聚合特征和样本通道聚合特征的维度相同。

步骤s805,通过模板扩散网络中的聚合特征融合单元,对样本空间聚合特征和样本通道聚合特征进行融合,得到样本模板聚合特征嵌入。

这里,在聚合特征融合单元进行特征融合时,还可以将样本初始特征嵌入采用跳连接分支,融合至样本空间聚合特征和样本通道聚合特征中,得到样本模板聚合特征嵌入。

本申请实施例中,可以将样本空间聚合特征、样本通道聚合特征和样本初始特征嵌入中,相同位置的元素进行按位求和,然后将求和的结果作为样本模板聚合特征嵌入在对应位置的元素,通过对全部位置进行求和,进而生成样本模板聚合特征嵌入。

步骤s806,通过模板扩散网络中的互相关处理单元,对样本模板聚合特征嵌入和样本跟踪特征嵌入进行互相关处理,得到样本跟踪区域中的每一子样本区域与样本目标对象之间的样本相似度。

本申请实施例中,样本模板聚合特征嵌入对应样本初始模板和样本累积模板之间的样本聚合模板,即样本聚合模板的特征嵌入即样本模板聚合特征嵌入。互相关处理是指在样本跟踪区域上滑动样本聚合模板,以计算相应位置(即子样本区域)与样本目标对象之间的样本相似度得分。

步骤s807,将每一子样本区域的样本相似度输入至预设损失模型中,得到损失结果。

这里,预设损失模型用于将样本相似度与预设的相似度进行比较,得到损失结果,其中,预设的相似度可以是用户预先设置的每一子样本区域与样本目标对象之间的相似度。

本申请实施例中,预设损失模型中包括损失函数,通过损失函数可以计算样本相似度与预设的相似度之间的差值或距离,并根据该差值或距离确定上述损失结果。当样本相似度与预设的相似度之间的差值或距离越大时,表明模型的训练结果与真实值的差距较大,需要进行进一步的训练;当样本相似度与预设的相似度之间的差值或距离越小时,表明模型的训练结果更加接近真实值。

步骤s808,根据损失结果,对特征提取网络、空间特征聚合网络和通道特征聚合网络中的参数进行修正,得到修正后的模板扩散网络。

这里,当上述差值或距离大于预设阈值时,则损失结果表明当前的模板扩散网络中的特征提取网络,不能准确的对样本初始模板、样本累积模板和样本跟踪区域分别进行特征提取,得到准确的样本初始特征嵌入、样本累积特征嵌入和样本跟踪特征嵌入,和/或,空间特征聚合网络不能准确的对样本初始特征嵌入和样本累积特征嵌入进行空间特征聚合处理,得到准确的样本空间聚合特征,和/或,通道特征聚合网络不能准确的对样本初始特征嵌入和样本累积特征嵌入进行通道特征聚合处理,得到准确的样本通道聚合特征。因此,需要对当前的模板扩散网络进行修正。那么,可以根据上述差值或距离,对特征提取网络、空间特征聚合网络和通道特征聚合网络中的至少一个中的参数进行修正,直至模板扩散网络输出的样本相似度与预设的相似度之间的距离满足预设条件时,将对应的模板扩散网络确定为训练好的模板扩散网络。

本申请实施例提供的模板扩散网络的训练方法,由于将样本初始模板、样本累积模板和样本跟踪区域输入至模板扩散网络中,依次通过特征提取网络、空间特征聚合网络和通道特征聚合网络进行特征提取、空间特征聚合处理和通道特征聚合处理,然后将样本模板聚合特征嵌入和样本跟踪特征嵌入进行互相关处理,得到样本跟踪区域中的每一子样本区域与样本目标对象之间的样本相似度,并将样本相似度输入至预设损失模型中,得到损失结果。因此,能够根据损失结果对特征提取网络、空间特征聚合网络和通道特征聚合网络中的至少一个中的参数进行修正,所得到的模板扩散网络能够准确的确定出待跟踪区域中的每一子区域与目标对象之间的相似度,从而准确的对待跟踪区域进行目标对象跟踪,提高用户的使用体验。

下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。

本申请实施例提供一种目标对象跟踪方法,本申请实施例提出一种简单而有效的方法,来捕获长期时间依赖性,本申请实施例提出的方法学习任意帧模板特征嵌入之间的相似度矩阵。

为了保证短期跟踪一致性并避免长期跟踪漂移,受非局部神经网络的启发,本申请实施例提出的特征聚合模块,将第一帧的初始模板传播到当前帧维护的当前累积模板中。本申请实施例将此特征聚合模块插入到一个深层的孪生网络中,并提出了一个有效的模板扩散网络(tdnet)用于视觉跟踪。提出的tdnet能够以较低的时间复杂度来捕获目标外观的长程变化。在目前流行的基准数据集上进行的实验结果表明,所提出的tdnet跟踪方法能够在同类方法中取得良好的性能,并且能够以120fps的实时速度运行。

图9是本申请实施例提供的基于模板扩散网络的快速鲁棒目标对象跟踪方法流程图,即目标对象跟踪方法的流程图,如图9所示,

首先,采用特征提取网络901(即特征提取器,例如可以是全卷积的alexnet)将初始模板z0,累积模板(即当前累积模板)和搜索区域xt(即待跟踪区域)编码为相应的特征嵌入z0∈rh×w×c(即初始特征嵌入)、(即当前累积特征嵌入)和xt∈rh′×w′×c(即待跟踪特征嵌入)。需要说明的是,这里的累积模板由以下公式(2-1)更新而得:

其中,为t-2帧的累积模板,为t-1帧的累积模板,zt-1为t-1帧基于跟踪结果所得的模板,η为学习率;其中c表示模板的通道数或搜索区域。h/h′和w/w′分别表示模板或搜索区域的高度和宽度。

然后,将z0∈rh×w×c输入至模板扩散网络的两个并行分支:空间注意力分支902和通道注意力分支903,以在空间和通道上关注特定目标的特征嵌入。同时,将z0∈rh×w×c输入到跳连接分支904中,以保留初始模板的特征嵌入。空间注意力分支902、通道注意力分支903和跳连接分支904这三个分支的输出按元素进行求和处理905,以生成新的特征嵌入znew∈rh×w×c,由于znew∈rh×w×c有效融合了初始模板z0和累积模板的信息,所以能够适应目标对象表观的长程变化。

最后,将znew∈rh×w×c和xt∈rh′×w′×c互相关处理906,以进行相似性度量,从而生成用于目标定位的响应图r∈rp×q,其中,p和q分别表示响应图的高度和宽度,响应图中最大响应值所对应的候选区域为目标对象的跟踪结果。

本申请实施例所提出的tdnet采用交叉熵损失进行端对端地训练。这里,本申请实施例可以选择任意两个模板进行模板聚合。对于离线训练,本申请实施例可以从视频序列中随机选择两个模板(作为初始模板和累积模板)进行训练。对于在线跟踪,本申请实施例选择初始模板和累积模板以进行模板聚合,这是因为从第一帧裁剪的初始模板可以确保目标对象在该模板之中,而不断更新的累积模板考虑了目标对象的外观随时间而产生的变化。

在一些实施例中,本申请实施例所提出的tdnet可以将特征聚合模块有效嵌入到全卷积孪生网络之中,其中,全卷积孪生网络学习一个相似度函数f(z,x),通过在搜索区域x上滑动模板z以计算相应位置的相似度得分,当整个搜索区域滑动完成后,由这些不同位置的相似度得分构成响应图r∈rp×q。相似度计算是通过互相关计算在所有滑动所得到的候选区域上(在搜索区域x上)进行,其中,互相关计算如以下公式(2-2)所示:

其中,*表示互相关运算,表示全卷积孪生网络的特征嵌入函数,表示滑动模板z在全卷积孪生网络的特征嵌入函数。表示搜索区域x在全卷积孪生网络的特征嵌入函数。通过使用上述公式(2-2),选择搜索区域中最相似的候选区域作为目标对象的跟踪结果。

尽管大多数基于孪生网络的跟踪方法都可以取得良好的性能和快速的运行速度,但是这些方法在跟踪过程中仅仅使用从第一帧裁剪的初始模板进行匹配,从而无法捕获目标表观随时间的长程变化。然而,本申请实施例中,来自不同空间位置、通道以及时间帧的模板特征嵌入能够提供丰富的信息来模拟目标的表观变化,例如各种旋转,多种变形以及不同程度遮挡。对于在线跟踪,模板特征嵌入应该跨时间帧在空间和通道上进行自适应聚合。

本申请实施例所提出的tdnet由一个全卷积孪生网络和一个特征聚集模块组成,其中,tdnet的特征聚集模块的目标是聚集不同模板上特定目标对象的特征,与此同时,抑制背景区域中与目标对象无关的特征。由于非局部操作能够在一张图像中捕获目标对象的远程依赖关系,本申请实施例可以基于非局部操作提出两个互补的特征聚集模块:空间特征聚集模块(sfam,spatialfeatureaggregationmodule)和通道特征聚集模块(cfam,channelfeatureaggregationmodule),分别对应图9中的空间注意力分支902和通道注意力分支903。

在通道特征聚集模块中,对于视觉跟踪,众所周知,对于全卷积孪生网络所提取的特征,不同通道通常是具有类别或目标选择作用的。本申请实施例认为模板之中目标对象及其周围背景的特征通道是相互关联的,即某些特征通道协作表示相似的语义(例如目标对象、遮挡物或背景干扰)。

本申请实施例设计了一个cfam来聚合初始模板和累积模板特征之中语义相似的特征通道。给定初始模板z0的特征嵌入z0∈rh×w×c和累积模板的特征嵌入其中c为特征通道数,h和w分别是特征图的高度和宽度,本申请实施例按以下公式(2-3)和(2-4)计算z0与之间的通道相似性矩阵a∈rc×c

其中,aij表示通道相似性矩阵a中第i行第j列的元素,φc(·)和θc(·)分别是z0与的通道嵌入函数,φc(z0)i表示初始特征嵌入z0的第i个特征通道的通道嵌入函数,表示当前累积特征嵌入的第j个特征通道的第一通道嵌入函数。aij用于表示φc(z0)的第i个特征通道对的第j个特征通道的影响。

是输出特征嵌入ec(即输出的通道聚合特征)的第i个特征通道的值;gc(·)是的另一种通道嵌入函数,表示当前累积特征嵌入的第j个特征通道的第二通道嵌入函数,且不同;表示初始特征嵌入z0在第i个特征通道的特征值;γ为第二调整参数,用于调整通道聚合特征ec的值,即能够调整cfam对ec的影响。

在空间特征聚集模块中,对于基于全卷积孪生网络的目标跟踪,在模板中,目标区域相对应的特征嵌入明显比背景区域中的特征嵌入更为重要。为了突出显示保留在模板目标区域中的特征嵌入并抑制背景区域相对应的特征嵌入,本申请实施例设计了一个sfam来聚合初始模板和累积模板特征之中空间上相似的语义特征。sfam的输入与cfam相同,都是特征嵌入z0∈rh×w×c(从初始模板z0提取)和特征嵌入(从累积模板提取)。给定z0和按如下公式(2-5)和(2-6)计算z0和之间的空间相似性矩阵b∈rn×n

其中,bmn表示空间相似性矩阵b中第m行第n列的元素,φs(·)和θs(·)分别是z0和的空间嵌入函数,φs(z0)m表示初始特征嵌入z0的第m个特征通道的空间嵌入函数,表示当前累积特征嵌入的第n个特征通道的第一空间嵌入函数。bmn用于表示φs(z0)的第m个特征通道对的第n个特征通道的影响。

是输出特征嵌入es(即输出的空间聚合特征)的第m个特征通道的值;gs(·)是的另一种空间嵌入函数,表示当前累积特征嵌入的第n个特征通道的第二空间嵌入函数;β为第一调整参数,用于调整空间聚合特征es的值,即能够调整sfam对es的影响。

在模板扩散网络的训练和测试过程中,本申请实施例所提出的tdnet,需要对tdnet进行离线训练并且用tdnet进行在线跟踪。

在离线训练过程中,本申请实施例使用got10k目标跟踪数据集中的视频帧作为训练数据。got10k包含大约10000个视频,总共有超过150万个注释好的边界框,可用于训练和评估基于孪生网络的跟踪方法。在目标对象的每个视频片段中,本申请实施例随机选择三张图像作为训练样本,其中前两帧被视为模板,其余的一帧被选择为待跟踪区域。本申请实施例使用动量为0.9且权重衰减为5.0×10-4的随机梯度下降(sgd,stochasticgradientdescent)优化器来训练本申请实施例所提出的tdnet,迭代50次,最小批量为8,学习率从10-2至10-5呈指数衰减。

在在线跟踪过程中,本申请实施例在初始化阶段,将累积模板初始化为初始模板,并将初始模板和累积模板输入到tdnet中。在这种情况下,特征聚集模块将成为自注意力模块。在跟踪阶段,不仅保留初始模板以有效地保存最可靠的信息,而且还以一定的学习率更新累积模板以考虑目标的表观变化信息。将生成模板的特征嵌入与当前待搜索区域的特征嵌入互相关处理后,通过在响应图中搜索最大响应值来确定跟踪结果。需要说明的是,本申请实施例适用于单目标视觉跟踪。

表1是本申请实施例与其它几种实时的目标跟踪方法在otb100数据集的精度、成功率和速度的对比表。其中tdnet为本申请实施例的方法。从表1可以看出,本申请实施例提供的tdnet的方法相对于目前的目标跟踪方法,具有较高的精度和成功率,且速度仅次于siamfc-gk方法。

表1

下面继续说明本申请实施例提供的目标对象跟踪装置354实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器350的目标对象跟踪装置354中的软件模块可以是服务器300中的目标对象跟踪装置,包括:

接收模块3541,用于接收目标跟踪请求;所述目标跟踪请求中包括初始模板、当前累积模板和待跟踪图像,所述初始模板中包括所述目标对象;

特征提取模块3542,用于响应于所述目标跟踪请求,对所述初始模板、所述当前累积模板和所述待跟踪图像对应的待跟踪区域分别进行特征提取,对应得到初始特征嵌入、当前累积特征嵌入和待跟踪特征嵌入;所述待跟踪区域中包括至少两个子区域;

聚合处理模块3543,用于对所述初始特征嵌入和所述当前累积特征嵌入进行聚合处理,得到模板聚合特征嵌入;

互相关处理模块3544,用于对所述模板聚合特征嵌入和所述待跟踪特征嵌入进行互相关处理,得到每一所述子区域与所述目标对象之间的相似度;

确定模块3545,用于根据所述相似度,在所述至少两个子区域中确定所述目标跟踪请求的跟踪结果,并输出所述跟踪结果。

在一些实施例中,所述聚合处理模块还用于:对所述初始特征嵌入和所述当前累积特征嵌入进行空间特征聚合处理,得到空间聚合特征;对所述初始特征嵌入和所述当前累积特征嵌入进行通道特征聚合处理,得到通道聚合特征;根据所述空间聚合特征和所述通道聚合特征,确定所述模板聚合特征嵌入。

在一些实施例中,所述聚合处理模块还用于:获取所述初始特征嵌入;对所述初始特征嵌入、所述空间聚合特征和所述通道聚合特征的每一相应位置的元素进行求和,得到对应位置的元素和;根据全部位置的所述元素和,确定所述模板聚合特征嵌入。

在一些实施例中,所述聚合处理模块还用于:获取所述初始特征嵌入的第一空间嵌入函数、和所述当前累积特征嵌入的第二空间嵌入函数;根据所述第一空间嵌入函数和所述第二空间嵌入函数,确定所述初始特征嵌入与所述当前累积特征嵌入之间的空间相似性矩阵;获取所述当前累积特征嵌入的第三空间嵌入函数和第一调整参数;根据所述空间相似性矩阵、所述第三空间嵌入函数和所述第一调整参数,确定所述空间聚合特征在每一特征通道上的值,以得到所述空间聚合特征。

在一些实施例中,所述聚合处理模块还用于:获取所述初始特征嵌入的第一通道嵌入函数、和所述当前累积特征嵌入的第二通道嵌入函数;根据所述第一通道嵌入函数和所述第二通道嵌入函数,确定所述初始特征嵌入与所述当前累积特征嵌入之间的通道相似性矩阵;获取所述当前累积特征嵌入的第三通道嵌入函数和第二调整参数;根据所述通道相似性矩阵、所述第三通道嵌入函数和所述第二调整参数,确定所述通道聚合特征在每一特征通道上的值,以得到所述通道聚合特征。

在一些实施例中,所述装置还包括:获取模块,用于获取当前时刻之前且与所述当前时刻相邻的历史时刻的历史累积模板、和根据所述历史时刻的跟踪结果确定的历史模板;第三确定模块,用于根据所述历史累积模板和所述历史模板,确定所述当前累积模板。

在一些实施例中,所述装置还包括:初始化处理模块,用于在对所述待跟踪区域进行在线跟踪之前的初始化阶段,对当前时刻之前且与所述当前时刻相邻的历史时刻的历史累积模板进行初始化处理,得到初始化模板;初始模板确定模块,用于将所述初始化模板确定为所述初始模板。

在一些实施例中,所述初始模板和所述当前累积模板聚合形成一聚合模板,所述模板聚合特征嵌入是所述聚合模板的特征嵌入表示;所述互相关处理模块还用于:确定每一所述子区域在所述待跟踪特征嵌入中对应的子特征嵌入;在所述待跟踪区域中,通过滑动所述聚合模板,以确定每一所述子区域与所述目标对象之间的所述相似度。

在一些实施例中,所述确定模块还用于:根据所述相似度,在所述至少两个子区域中确定所述目标对象所在的目标子区域;将所述目标子区域确定为所述目标跟踪请求的跟踪结果。

在一些实施例中,所述装置还包括:响应值确定模块,用于根据每一所述子区域与所述目标对象之间的所述相似度,确定每一所述子区域的响应值;其中,所述相似度越高,对应子区域的所述响应值越大;绘制模块,用于根据所述响应值,绘制与所述待跟踪区域对应的响应图;对应地,所述确定模块还用于:在所述响应图中,将最大响应值所对应的子区域,确定为所述目标子区域。

在一些实施例中,所述装置还包括:处理模块,用于采用模板扩散网络进行所述特征提取、所述聚合处理和所述互相关处理,以得到所述待跟踪区域中的每一所述子区域与所述目标对象之间的相似度;其中,所述模板扩散网络采用以下步骤进行训练:将样本初始模板、样本累积模板和样本跟踪区域输入至所述模板扩散网络中;所述样本初始模板中包括样本目标对象;通过所述模板扩散网络中的特征提取网络,对所述样本初始模板、所述样本累积模板和所述样本跟踪区域分别进行特征提取,对应得到样本初始特征嵌入、样本累积特征嵌入和样本跟踪特征嵌入;通过所述模板扩散网络中的空间特征聚合网络,对所述样本初始特征嵌入和所述样本累积特征嵌入进行空间特征聚合处理,得到样本空间聚合特征;通过所述模板扩散网络中的通道特征聚合网络,对所述样本初始特征嵌入和所述样本累积特征嵌入进行通道特征聚合处理,得到样本通道聚合特征;通过所述模板扩散网络中的聚合特征融合单元,对所述样本空间聚合特征和所述样本通道聚合特征进行融合,得到样本模板聚合特征嵌入;通过所述模板扩散网络中的互相关处理单元,对所述样本模板聚合特征嵌入和所述样本跟踪特征嵌入进行互相关处理,得到所述样本跟踪区域中的每一子样本区域与所述样本目标对象之间的样本相似度;将每一子样本区域的所述样本相似度输入至预设损失模型中,得到损失结果;根据所述损失结果,对所述特征提取网络、所述空间特征聚合网络和所述通道特征聚合网络中的参数进行修正,得到修正后的模板扩散网络。

需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。

本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的方法。

本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图3示出的方法。

在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(fram,ferromagneticrandomaccessmemory)、只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmablereadonlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammablereadonlymemory)、带电可擦可编程只读存储器(eeprom,electricallyerasableprogrammablereadonlymemory)、闪存、磁表面存储器、光盘、或光盘只读存储器(cd-rom,compactdisk-readonlymemory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。

在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。

作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hypertextmarkuplanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。

以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1