目标跟踪方法、装置、计算机设备、存储介质和程序产品与流程

文档序号:30433340发布日期:2022-06-15 18:05阅读:65来源:国知局
目标跟踪方法、装置、计算机设备、存储介质和程序产品与流程

1.本技术涉及人工智能技术领域,特别是涉及一种目标跟踪方法、装置、计算机设备、存储介质和程序产品。


背景技术:

2.在城市交通、重点场所监视、犯罪分子的追踪等方面,智能监控起着重要的作用,其中,目标跟踪是智能监控的核心研究内容。
3.现有的目标跟踪方法是根据目标的表观特征在前后帧中进行匹配,进而跟踪到目标,其中,表观特征是指目标的外观特征,以人为例,表观特征包括人物头发的颜色、性别、头发长短、身高和所穿衣服类型等信息。
4.但是,现有的目标跟踪方法中,在目标被遮挡或者有相似干扰等问题的情况下,会导致目标跟踪失败,因此,跟踪的可靠性不高。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种目标跟踪方法、装置、计算机设备、存储介质和程序产品。
6.第一方面,本技术提供了一种目标跟踪方法,该方法包括:对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置;对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置;从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
7.在其中一个实施例中,对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置,包括:获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧;将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征;对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
8.在其中一个实施例中,将模板帧和当前帧分别输入至孪生网络的模板支和检测支,包括:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中。
9.在其中一个实施例中,第一图像块的尺寸为m*m,第二图像块的尺寸为2m*2m,其中,m是根据边界框的宽和高计算得到的。
10.在其中一个实施例中,对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定目标在当前帧中的第一候选位置,包括:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。
11.在其中一个实施例中,基于第二响应图,确定第一候选位置,包括:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
12.在其中一个实施例中,对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置,包括:获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧;将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
13.在其中一个实施例中,将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置,包括:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态;根据第二隐藏状态确定第二候选位置。
14.在其中一个实施例中,从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置,包括:计算当前帧与当前帧的前一帧之间的平均重叠精度,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比;若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置;若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
15.在其中一个实施例中,计算当前帧与当前帧的前一帧之间的平均重叠精度,包括:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。
16.第二方面,本技术还提供了一种目标跟踪装置,该装置包括:第一确定模块,用于对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置;第二确定模块,用于对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置;第三确定模块,用于从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
17.在其中一个实施例中,第一确定模块,具体用于:获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧;将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征;对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
18.在其中一个实施例中,第一确定模块,具体用于:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中。
19.在其中一个实施例中,第一图像块的尺寸为m*m,第二图像块的尺寸为2m*2m,其中,m是根据边界框的宽和高计算得到的。
20.在其中一个实施例中,第一确定模块,具体用于:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。
21.在其中一个实施例中,第一确定模块,具体用于:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
22.在其中一个实施例中,第二确定模块,具体用于:获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧;将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
23.在其中一个实施例中,第二确定模块,具体用于:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态;根据第二隐藏状态确定第二候选位置。
24.在其中一个实施例中,第三确定模块,具体用于:计算当前帧与当前帧的前一帧之间的平均重叠精度,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比;若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置;若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
25.在其中一个实施例中,第三确定模块,具体用于:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。
26.第三方面,本技术还提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现上述第一方面任一项所述的方法的步骤。
27.第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面任一项所述的方法的步骤。
28.第五方面,本技术还提供了一种计算机程序产品。该计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面任一项所述的方法的步骤。
29.本技术实施例提供的技术方案带来的有益效果至少包括:
30.在本技术实施例中,在对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置的基础上,还对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置,并从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。由此可见,本技术实施例除了利用表观特征来对目标进行跟踪外,还利用运动轨迹来对目标进行跟踪,如此,在目标被遮挡或者有相似干扰等问题的情况下,可以使用运动轨迹来辅助跟踪,提高了目标跟踪的可靠性。
附图说明
31.图1为本技术实施例提供的一种实施环境示意图;
32.图2为本技术实施例提供的一种目标跟踪方法的流程图;
33.图3为本技术实施例提供的一种确定第一候选位置的技术过程的流程图;
34.图4为本技术实施例提供的一种确定第二候选位置的技术过程的流程图;
35.图5为本技术实施例提供的一种确定目标位置的技术过程的流程图;
36.图6为本技术实施例提供的一种平均重叠精度的示意图;
37.图7为本技术实施例提供的一种目标跟踪方法的流程图;
38.图8为本技术实施例提供的一种联合表观特征与运动轨迹的目标跟踪的结构框图;
39.图9为本技术实施例提供的一种目标跟踪装置的框图;
40.图10为本技术实施例提供的一种计算机设备的内部结构图。
具体实施方式
41.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
42.在城市交通、重点场所监视、犯罪分子的追踪等方面,智能监控起着重要的作用,其中,目标跟踪是智能监控的核心研究内容。
43.现有的目标跟踪方法是根据目标的表观特征在前后帧中进行匹配,进而跟踪到目标,其中,表观特征是指目标的外观特征,以人为例,表观特征包括人物头发的颜色、性别、头发长短、身高和所穿衣服类型等信息。
44.但是,现有的目标跟踪方法中,在目标被遮挡或者有相似干扰等问题的情况下,会导致目标跟踪失败,因此,跟踪的可靠性不高。
45.有鉴于此,本技术实施例提供了一种目标跟踪方法、装置、计算机设备、存储介质和程序产品,利用该目标跟踪方法可以提高跟踪到目标的可靠性。
46.请参见图1,其示出了本技术实施例提供的目标跟踪方法所涉及的实施环境的示意图。如图1所示,本技术实施例提供的目标跟踪方法的执行主体可以是一台计算机设备,也可以为由多台计算机设备组成的计算机设备集群。不同的计算机设备之间可以通过有线或无线方式的进行通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。
47.请参见图2,其示出了本技术实施例提供的一种目标跟踪方法的流程图,该目标跟踪方法可以应用于图1所示的计算机设备中。如图2所示,该目标跟踪方法可以包括以下步骤:
48.步骤201、计算机设备对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置。
49.其中,表观特征是指目标的外观特征。可选的,可以通过全卷积神经网络来提取待跟踪的目标的表观特征,也可以通过其它神经网络来提取待跟踪的目标的表观特征,本技术对此不做限定,只要能提取到表观特征即可。
50.可选的,计算机设备可以根据目标的表观特征,确定目标在当前帧的第一候选位置。例如,目标为红色的一个三角形的箱子,则其表观特征为红色、三角形和箱子,计算机设备可以根据这三个表观特征确定出目标在当前帧中的第一候选位置。
51.步骤202、计算机设备对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置。
52.可选的,除了通过目标的表观特征确认目标的位置之外,还可以基于目标当前帧之前的历史帧的运动轨迹预测出目标在当前帧中的第二候选位置。可选的,当前帧以及历
史帧为视频帧,可以通过监控设备,如摄像头等设备实时地获取到视频帧。
53.步骤203、计算机设备从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
54.可选的,因目标的运动轨迹有可能发生突变,而目标的表观特征变化不大,因此,可以以表观特征确定的第一候选位置为主,以运动轨迹预测确定的第二候选位置为辅,也即,在第一候选位置准确的情况下,将第一候选位置作为目标位置,在第一候选位置不准确的情况下,分析第二候选位置的准确性,若第二候选位置准确,则将第二候选位置作为目标位置。
55.导致第一候选位置不准确的原因主要包括:在当前帧中,存在目标被遮挡等问题,以致无法提取到或者无法完全提取到目标的表观特征。导致第二候选位置不准确的原因主要是运动轨迹发生突变,以致无法准确预测目标的运动轨迹。
56.在本技术实施例中,在对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置的基础上,还对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置,并从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。由此可见,本技术实施例除了利用表观特征来对目标进行跟踪外,还利用运动轨迹来对目标进行跟踪,如此,在目标被遮挡或者有相似干扰等问题的情况下,可以使用运动轨迹来辅助跟踪,提高了目标跟踪的可靠性。
57.在本技术的可选实施例中,该目标跟踪方法可以应用于银行等金融领域,在应用于银行场所的情形下,该目标跟踪方法可以包括以下步骤:
58.首先,获取银行布置的目标摄像头在预设时长内拍摄到的视频帧。
59.其中,视频帧包括当前帧和时序在当前帧之前的多个历史帧;预设时长可以为根据实际需要人工确定的时长。例如,待跟踪的目标在2021年1月20日10时0分至15分可能进入目标摄像头的拍摄范围之内,则可以只获取该时间段内目标摄像头拍摄到的视频帧。
60.其次,从包括待跟踪的目标的某一历史帧中提取该目标的表观特征,并根据该表观特征确定该目标在当前帧中的第一候选位置。
61.在本可选的实施例中,需要获取目标在当前帧中的目标位置,为此,可以从包括目标的某一历史帧中提取该目标的表观特征,在此基础上,根据该表观特征确定该目标在当前帧中的第一候选位置。例如,目标为一个红色的三角形箱子,要确定当前帧中该箱子的目标位置,先从包含该箱子的历史帧中提取该箱子的表观特征,即为红色、三角形和箱子,再根据红色、三角形和箱子这三个表观特征确定该箱子在当前帧中的第一候选位置。
62.再次,根据历史帧中目标的运动轨迹,对目标进行运动轨迹预测,并根据运动轨迹预测结果确定目标在当前帧中的第二候选位置。
63.最后,从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置,也即确定目标在银行中的目标位置。
64.根据表观特征确定的第一候选位置和根据运动轨迹预测到的第二候选位置,并不一定是目标在当前帧中的目标位置,因目标在当前帧中可能被遮挡,导致根据表观特征确定的第一候选位置并不准确,或者,目标的运动轨迹存在突变,导致根据运动轨迹预测到的第二候选位置不准确,因此,需要判断第一候选位置和第二候选位置的准确性,若第一候选位置准确则以第一候选位置作为目标在当前帧中的目标位置;若第一候选位置不准确,则
再判断第二候选位置的准确性,若第二候选位置准确则以第二候选位置作为目标在当前帧中的目标位置。
65.举例来说,现实生活中,银行作为高危场所是重点监视场所,需要实时地利用摄像头进行监控,在存在银行盗窃等场景的情况下,需要根据摄像头拍摄到的监控视频来追踪行为人,现有技术中,通常是基于当前帧之前的历史帧中的行为人的表观特征,来判断行为人在当前帧中所处的位置,但是,在当前帧中存在行为人被遮挡或者存在相似行为人的情况下,无法在当前帧中确定行为人的位置,导致行为人在当前帧中跟踪失败。而本技术实施例中,除了基于行为人的表观特征确定行为人在当前帧中所处的位置之外,还可以通过行为人在当前帧之前的多个历史帧中行为人的运动轨迹来预测行为人在当前帧中的位置,其中,基于运动轨迹来预测行为人在当前帧中的位置,并不受行为人在当前帧中被遮挡或者存在相似行为人的影响。因运动轨迹有可能发生突变,而行为人的表观特征变化不大,因此,若不存在在行为人被遮挡或者存在相似行为人等情形,可以根据行为人的表观特征确定行为人在当前帧中所处的位置;若存在行为人被遮挡或者存在相似行为人等情形,可以根据行为人的运动轨迹来预测行为人在当前帧中的位置,因此,与现有技术相比,本技术实施例在存在在行为人被遮挡或者存在相似行为人的情形下,还可以跟踪到行为人在当前帧中的位置,提高了目标跟踪的可靠性。
66.请参见图3,其示出了本技术实施例提供的一种确定第一候选位置的技术过程。如图3所示,该技术过程可以包括以下步骤:
67.步骤301、计算机设备获取模板帧。
68.其中,模板帧为时序在当前帧之前的,且,包含目标的视频帧。
69.步骤302、计算机设备将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征。
70.其中,孪生网络由两个结构相同且权值共享的全卷积网络组成,这两个全卷积网络一个为模板支,另一个为检测支,且全卷积网络由五个卷积层和两个池化层组成。可选的,将模板帧和当前帧分别输入至孪生网络的模板支和检测支,包括:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中,其中,边界框用于框出待跟踪的目标。此外,在裁剪的过程中,若超出了帧图像的边界,则使用帧图像的平均颜色作为填充。
71.可选的,第一图像块的尺寸可以为m*m,第二图像块的尺寸可以为2m*2m,其中,m是根据边界框的宽和高计算得到的。m的计算公式如下:
72.(w+p)
×
(h+p)=m273.其中,w、h分别为边界框的宽和高,p=(w+h)/2。
74.可选的,可以将尺寸可以为m*m的第一图像块缩放为127
×
127大小,将尺寸可以为2m*2m的第二图像块缩放为255
×
255大小,并将127
×
127大小和255
×
255大小的图像块分别输入至孪生网络的模板支和检测支中,进而得到模板支输出的第一表观特征和检测支输出的第二表观特征。其中,模板支和检测支内部提取特征的过程如下表:
[0075][0076]
在本技术实施例中,将第一图像块输入至模板支中,得到模板支输出的第一表观特征,该第一表观特征为第一图像块所对应的表观特征,因第一图像块中包括目标,因此,该第一表观特征也为目标所对应的表观特征;将第二图像块输入至检测支中,得到检测支输出的第二表观特征,该第二表观特征为第二图像块所对应的表观特征。
[0077]
步骤303、计算机设备对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
[0078]
其中,互相关运算的结果反映第一表观特征和第二表观特征之间的相似性。因第一表观特征为目标对应的表观特征,因此,可以根据当前帧所对应的第二表观特征与第一表观特征的互相关运算的结果确定第一候选位置。
[0079]
在本技术的可选实施例中,对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置,可以包括:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。可选的,基于第二响应图,确定第一候选位置,包括:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
[0080]
其中,互相关运算的计算公式如下:
[0081][0082]
其中,表示互相关运算,r为互相关运算的结果,为第一响应图,为第一表观特征、为第二表观特征。
[0083]
例如,将尺寸为127
×
127和尺寸为255
×
255的图像块分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征的尺寸为6
×
6,检测支输出的第二表观特征的尺寸为22
×
22,将该第一表观特征与该第二表观特征进行互相关运算,得到第一响应图r的尺寸为17
×
17,再基于双三次插值算法将尺寸为17
×
17的第一响应图转换到尺寸为
272
×
272的第二响应图,并获取最大响应值r
app
所对应的位置信息,基于该位置信息可以确定目标在当前帧中的第一候选位置为l
app
=(x
app
,y
app
)。
[0084]
在本技术实施例中,将模板帧和当前帧分别进行裁剪再提取裁剪后的图像块的表观特征,可以减小计算机设备的运算量,提高表观特征提取的速度。
[0085]
请参见图4,其示出了本技术实施例提供的一种确定第二候选位置的技术过程。如图4所示,该技术过程可以包括以下步骤:
[0086]
步骤401、计算机设备获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧。
[0087]
步骤402、计算机设备将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
[0088]
其中,长短时记忆网络的输入为目标的位置坐标、隐藏状态和记忆单元,输出为隐藏状态和记忆单元,且,前一时间步的输出作为后一时间步的输入,并不断循环计算,直到得到最终的输出结果。
[0089]
在本技术的可选实施例中,将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置,可以包括:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态,并根据第二隐藏状态确定第二候选位置。
[0090]
例如,可以获取时序在当前帧之前的前八帧中目标的位置坐标x={(x
t
,y
t
)},其中,t=t
last-7
,
……
,t
last
,t
last
表示待当前帧的前一帧,按时序顺序先后将目标的这八个位置坐标输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态,接着,将第一隐藏状态和前一帧中目标的位置坐标输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态,并根据第二隐藏状态确定第二候选位置为l
mot
=(x
mot
,y
mot
)。
[0091]
在本技术实施例中,通过多个历史帧中目标的位置坐标可以预测到目标在当前帧中的第二候选位置,弥补了上述将第一候选位置作为目标位置不准确的情况,提高了目标跟踪的可靠性。
[0092]
上文中确定了目标在当前帧中的第一候选位置以及目标在当前帧中的第二候选位置,在本技术实施例中对第一候选位置以及第二候选位置进行融合,以得到目标在当前帧中的目标位置。请参见图5,其示出了本技术实施例提供的一种确定目标位置的技术过程。如图5所示,该技术过程可以包括以下步骤:
[0093]
步骤501、计算机设备计算当前帧与当前帧的前一帧之间的平均重叠精度。
[0094]
其中,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比。可选的,计算当前帧与当前帧的前一帧之间的平均重叠精度包括:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。其中,平均重叠精度的计算公式如下:
[0095][0096]
其中,iou为平均重叠精度,b
curr
为当前帧中的边界框区域,b
last
为前一帧中的边界框区域。
[0097]
为了清楚的解释平均重叠精度,可以用图6表示平均重叠精度,其中,|
·
|表示区域的面积。
[0098]
步骤502、若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置。
[0099]
步骤503、若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
[0100]
其中,第一预设阈值和第二预设阈值可以是根据大量的实验数据并在一定平台进行实验后得到的值,在本技术实施例中,第一预设阈值和第二预设阈值可以是固定的值。需要说明的是,响应值越低,表示跟踪结果是正确的概率越低,平均重叠精度越低表明跟踪结果是正确的概率越低。其中,对第一候选位置以及第二候选位置进行融合,以确定目标位置的公式如下:
[0101][0102]
其中,r
app
为最大响应值,thr为第一预设阈值,thi为根据第二预设阈值,l为目标位置,l
app
为第一候选位置,l
mot
为第二候选位置;若r
app
《thr,iou《thi,则以l
mot
作为目标在当前帧中的目标位置,否则,以l
app
作为目标在当前帧中的目标位置。
[0103]
在本技术实施例中,对得到的第一候选位置和第二候选位置进行了融合,基于第一候选位置和第二候选位置的联合结果来确定目标在当前帧中的目标位置,提高了目标跟踪的可靠性。
[0104]
请参见图7,其示出了本技术实施例提供的一种目标跟踪方法的流程图,该目标跟踪方法可以应用于图1所示的计算机设备中。如图7所示,该目标跟踪方法可以包括以下步骤:
[0105]
步骤701、计算机设备获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧。
[0106]
步骤702、计算机设备基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标。
[0107]
步骤703、计算机设备基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块。
[0108]
步骤704、计算机设备将第一图像块和第二图像块分别输入至模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征。
[0109]
步骤705、计算机设备对第一表观特征和第二表观特征进行互相关运算,得到第一响应图。
[0110]
步骤706、计算机设备基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小。
[0111]
步骤707、计算机设备获取第二响应图中最大响应值所对应的位置信息,基于位置信息,确定第一候选位置。
[0112]
步骤708、计算机设备获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧。
[0113]
步骤709、计算机设备将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态。
[0114]
步骤710、计算机设备将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态,根据第二隐藏状态确定第二候选位置。
[0115]
步骤711、计算机设备从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
[0116]
请参见图8示出的本技术实施例提供的一种联合表观特征与运动轨迹的目标跟踪的结构框图。如图8所示,将模板帧以及当前帧进行图像预处理,其中,图像预处理指的是对模板帧以及当前帧进行裁剪,并将裁剪后得到的图像块,分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征,接着,对第一表观特征和第二表观特征进行互相关运算,得到响应图,根据响应图中最大响应值所对应的位置信息,确定目标在当前帧中的第一候选位置l
app
;并且,长短时记忆网络基于目标在历史帧中的运行轨迹,确定目标在当前帧中的第二候选位置l
mot
;再基于第一候选位置和第二候选位置的联合结果来确定目标在当前帧中的目标位置l。
[0117]
本技术实施例除了利用表观特征来对目标进行跟踪外,还利用运动轨迹来对目标进行跟踪,如此,在目标被遮挡或者有相似干扰等问题的情况下,可以使用运动轨迹来辅助跟踪,提高了目标跟踪的可靠性。
[0118]
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0119]
请参见图9,其示出了本技术实施例提供的一种目标跟踪装置900的框图,该目标跟踪装置可以配置于上述的计算机设备中。如图9所示,该目标跟踪装置900包括第一确定模块901、第二确定模块902以及第三确定模块903。
[0120]
其中,第一确定模块901,用于对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置;第二确定模块902,用于对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置;第三确定模块903,用于从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
[0121]
在其中一个实施例中,第一确定模块901,具体用于:获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧;将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征;对第一表观特
征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
[0122]
在其中一个实施例中,第一确定模块901,具体用于:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中。
[0123]
在其中一个实施例中,第一图像块的尺寸为m*m,第二图像块的尺寸为2m*2m,其中,m是根据边界框的宽和高计算得到的。
[0124]
在其中一个实施例中,第一确定模块901,具体用于:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。
[0125]
在其中一个实施例中,第一确定模块901,具体用于:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
[0126]
在其中一个实施例中,第二确定模块902,具体用于:获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧;将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
[0127]
在其中一个实施例中,第二确定模块902,具体用于:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态;根据第二隐藏状态确定第二候选位置。
[0128]
在其中一个实施例中,第三确定模块903,具体用于:计算当前帧与当前帧的前一帧之间的平均重叠精度,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比;若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置;若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
[0129]
在其中一个实施例中,第三确定模块903,具体用于:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。
[0130]
本技术实施例提供的目标跟踪装置,可以实现上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
[0131]
上述目标跟踪装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0132]
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通
信)或其他技术实现。该计算机程序被处理器执行时以实现一种目标跟踪方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0133]
本领域技术人员可以理解,图10中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0134]
在本技术的一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置;对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置;从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
[0135]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧;将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征;对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
[0136]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中。
[0137]
在本技术的一个实施例中,第一图像块的尺寸为m*m,第二图像块的尺寸为2m*2m,其中,m是根据边界框的宽和高计算得到的。
[0138]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。
[0139]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
[0140]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧;将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
[0141]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态;根据第二隐藏状态确定第二候选位置。
[0142]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:计算当
前帧与当前帧的前一帧之间的平均重叠精度,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比;若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置;若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
[0143]
在本技术的一个实施例中,该处理器执行计算机程序时还实现以下步骤:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。
[0144]
本技术实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
[0145]
在本技术的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置;对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置;从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
[0146]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧;将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征;对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
[0147]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中。
[0148]
在本技术的一个实施例中,第一图像块的尺寸为m*m,第二图像块的尺寸为2m*2m,其中,m是根据边界框的宽和高计算得到的。
[0149]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。
[0150]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
[0151]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧;将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
[0152]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长
短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态;根据第二隐藏状态确定第二候选位置。
[0153]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算当前帧与当前帧的前一帧之间的平均重叠精度,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比;若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置;若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
[0154]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。
[0155]
本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
[0156]
在本技术的一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:对待跟踪的目标进行表观特征提取,并根据表观特征提取的结果确定目标在当前帧中的第一候选位置;对目标进行运动轨迹预测,并根据运动轨迹预测的结果确定目标在当前帧中的第二候选位置;从第一候选位置和第二候选位置中,确定目标在当前帧中的目标位置。
[0157]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取模板帧,模板帧为时序在当前帧之前的,且,包含目标的视频帧;将模板帧和当前帧分别输入至孪生网络的模板支和检测支中,得到模板支输出的第一表观特征和检测支输出的第二表观特征;对第一表观特征和第二表观特征进行互相关运算,并根据互相关运算的结果确定第一候选位置。
[0158]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:基于模板帧中的边界框的中心,对模板帧进行裁剪,得到第一图像块,边界框用于框出待跟踪的目标;基于当前帧的前一帧中的边界框的中心,对当前帧进行裁剪,得到第二图像块;将第一图像块和第二图像块分别输入至模板支和检测支中。
[0159]
在本技术的一个实施例中,第一图像块的尺寸为m*m,第二图像块的尺寸为2m*2m,其中,m是根据边界框的宽和高计算得到的。
[0160]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对第一表观特征和第二表观特征进行互相关运算,得到第一响应图;基于双三次插值算法将第一响应图转换为第二响应图,第二响应图中的响应值表征第一表观特征和第二表观特征之间相似度的大小;基于第二响应图,确定第一候选位置。
[0161]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取第二响应图中最大响应值所对应的位置信息;基于位置信息,确定第一候选位置。
[0162]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取多个历史帧,历史帧为时序在当前帧之前的,且,包含目标的视频帧;将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,根据长短时记忆网络的输出确定第二候选位置。
[0163]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:将多个历史帧中目标的位置坐标按时序顺序先后输入至长短时记忆网络中,得到长短时记忆网络输出的第一隐藏状态;将第一隐藏状态以及当前帧的前一帧中目标的位置坐标,输入至长短时记忆网络中,得到长短时记忆网络输出的第二隐藏状态;根据第二隐藏状态确定第二候选位置。
[0164]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算当前帧与当前帧的前一帧之间的平均重叠精度,平均重叠精度为当前帧中的边界框与前一帧中的边界框之间面积的交并比;若最大响应值不小于第一预设阈值或者平均重叠精度不小于第二预设阈值,则确定第一候选位置为目标在当前帧中的目标位置;若最大响应值小于第一预设阈值且平均重叠精度小于第二预设阈值,则确定第二候选位置为目标在当前帧中的目标位置。
[0165]
在本技术的一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算当前帧中的边界框与前一帧中的边界框的交集面积;计算当前帧中的边界框与前一帧中的边界框的并集面积;计算交集面积与并集面积的比值,得到平均重叠精度。
[0166]
本实施例提供的计算机程序产品,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
[0167]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0168]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0169]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1