多目标跟踪方法和装置

文档序号:29351333发布日期:2022-03-22 21:33阅读:171来源:国知局
多目标跟踪方法和装置

1.本技术的实施例涉及机器学习技术领域,尤其涉及一种多目标跟踪方法和装置。


背景技术:

2.在实现对多目标连续跟踪的技术中,往往依靠连续帧之间像素的差异,或单纯利用目标之间的特征差异进行跟踪,不仅跟踪效率不高,其跟踪的准确性也极其不稳定。
3.基于此,需要一种能够实现稳定,快捷实现多目标跟踪的方案。


技术实现要素:

4.有鉴于此,本技术的目的在于提出一种多目标跟踪方法和装置。
5.基于上述目的,本技术提供了多目标跟踪方法,包括:
6.对包括有至少一个当前目标的当前帧图像进行特征提取,得到当前帧图像对应的初步特征;
7.根据当前帧图像的前若干帧图像,获取每个前帧目标分别对应的运动信息,并为每个前帧目标分别预测得到第一预测位置;
8.根据第一预测位置对初步特征进行增强,得到增强特征;对增强特征进行对象识别,得到每个当前目标分别对应的位置识别信息和特征识别信息;
9.提取每个前帧目标的轨迹信息,对于每个前帧目标,确定其在当前帧时刻的前一帧图像中的位置信息和特征信息;根据位置信息,为每个目标对象分别预测得到第二预测位置;
10.对于每个当前目标,将其与全部的轨迹信息分别组合,得到若干匹配组;
11.对于每个匹配组,将该匹配组包括的当前目标的位置识别信息、特征识别信息与该匹配组包括的轨迹信息确定出的第二预测位置、特征信息分别进行匹配,得到位置匹配度和特征匹配度,并根据位置匹配度和特征匹配度得到联合匹配度;
12.根据若干匹配组及其分别对应的联合匹配度,得到多目标跟踪识别结果。
13.基于同一发明构思,本技术还提供了一种多目标跟踪装置,包括:特征提取与位置跟踪模块、图像增强与检测模块、位置与特征匹配模块和联合匹配跟踪模块;
14.初步特征提取模块,被配置为:对包括有至少一个当前目标的当前帧图像进行特征提取,得到当前帧图像对应的初步特征;
15.第一预测模块,被配置为:根据当前帧图像的前若干帧图像,获取每个前帧目标分别对应的运动信息,并为每个前帧目标分别预测得到第一预测位置;
16.对象识别模块,被配置为:根据第一预测位置对初步特征进行增强,得到增强特征;对增强特征进行对象识别,得到每个当前目标分别对应的位置识别信息和特征识别信息;
17.第二预测模块,被配置为:提取每个前帧目标的轨迹信息,对于每个前帧目标,确定其在当前帧时刻的前一帧图像中的位置信息和特征信息;根据位置信息,为每个目标对
象分别预测得到第二预测位置;
18.位置与特征匹配模块模块,被配置为:对于每个当前目标,将其与全部的轨迹信息分别组合,得到若干匹配组;以及
19.对于每个匹配组,将该匹配组包括的当前目标的位置识别信息、特征识别信息与该匹配组包括的轨迹信息确定出的第二预测位置、特征信息分别进行匹配,得到位置匹配度和特征匹配度,并根据位置匹配度和特征匹配度得到联合匹配度;
20.联合匹配模块,被配置为:根据若干匹配组及其分别对应的联合匹配度,得到多目标跟踪识别结果。
21.从上面所述可以看出,本技术提供的多目标跟踪方法和装置,基于前帧的轨迹信息对当前帧时刻的位置进行预测,实现了对当前帧目标在特征识别上的加强,并综合考虑了位置概率、偏移预测、长宽预测和目标特征,来进行当前目标的检测,并联合了当前目标与前帧目标之间的位置与特征的匹配,使得对当前目标与前帧目标在轨迹上的匹配更加准确,从而实现准确对多个目标进行追踪。
附图说明
22.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1为本技术实施例的多目标跟踪方法的流程图;
24.图2为本技术实施例的多目标跟踪装置模块示意图;
25.图3为本技术实施例的多目标跟踪方法的逻辑架构图;
26.图4为本技术实施例的多目标跟踪的增强特征流程图;
27.图5为本技术实施例的多目标跟踪的当前目标的信息检测流程图;
28.图6为本技术实施例的多目标跟踪的匹配方法流程图;
29.图7为本技术实施例的多目标跟踪的未成功匹配的当前目标处理流程图。
具体实施方式
30.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
31.需要说明的是,除非另外定义,本技术的实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术的实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
32.如背景技术部分所述,相关的多目标跟踪方法还难以满足实际场景的需要。
33.申请人在实现本技术的过程中发现,相关的多目标跟踪方法存在的主要问题在
于:往往单纯依靠特征对目标进行区分,以实现目标的跟踪。依靠目标检测算法提取目标的语义特征,通过对比不同目标间的特征相似性来区分不同目标,能够有效的对行人进行跟踪。但是在养殖动物的场景下,同一种类,不同的动物目标间的特征十分相似,且对于同一个目标,由于其体态体位等因素导致其不同时段的特征差异大,单纯的动物外观特征不足以支持将不同的动物个体准确识别出来并对个体间进行区分,因此单纯利用目标特征进行检测与跟踪在养殖动物场景下存在一定的漏检误检以及编号匹配出错的现象,对最终的跟踪效果产生不利的影响。
34.可以理解,该方法可以通过任何具有计算、处理能力的装置、设备、平台、设备集群来执行。
35.以下,通过具体的实施例,并结合图3来详细说明本技术的技术方法。
36.参考图1,本技术一个实施例的多目标跟踪方法,包括以下步骤:
37.步骤s101、对包括有至少一个当前目标的当前帧图像进行特征提取,得到所述当前帧图像对应的初步特征。
38.在本技术中,可以将养殖场对所养殖羊群的跟踪作为选取的实施例,并利用影像监控设备作为图像数据的采集装置,该采集装置连接有存储图像数据的数据库,其中,数据库将采集装置所采集的图像数据以帧的形式进行存储,并且数据库连接有卷积神经网络和卷积长短期记忆网络。
39.进一步地,将采集设备在当前时刻所采集的图像作为当前帧图像,并表示为t帧,将当前帧图像中的每一只羊作为一个当前目标。
40.在本实施例中,数据库可以采取dla(深度学习加速器)-34卷积神经网络对当前目标在当前帧图像中的图像特征进行提取,得到t帧的初步特征矩阵,作为当前帧图像对应的初步特征。
41.其中,该dla-34卷积神经网络可以由一个特征提取网络与一个尺度特征融合网络构成。
42.进一步地,t帧的初步特征矩阵可以表示为:其中,f
t
为初步特征矩阵,c表示初步特征矩阵的通道数也即维度,m表示矩阵中当前目标的长,n表示矩阵中当前目标的宽。
43.步骤s102、根据所述当前帧图像的前若干帧图像,获取每个所述前帧目标分别对应的运动信息,并为每个前帧目标分别预测得到第一预测位置。
44.根据图3所示,在本技术的实施例中,数据库提取先前采集的前若干帧的图像数据,其中,前若干帧的数量为根据需求所预设的数量;并将出现在前若干帧图像中的同一只羊作为一个前帧目标。
45.进一步地,将全部前帧目标在前若干帧图像中每一帧的位置组成的矩阵作为位置矩阵,对于前帧目标在前若干帧图像中每一帧的位置矩阵,进行时间维度上的拼接,得到前帧目标的历史位置矩阵,并表示为:其中,为历史位置矩阵,a为前若干帧图像的数量。
46.进一步地,将前帧目标的历史位置矩阵输入卷积长短期记忆网络,通过提取时序与空间上的特征,得到前帧目标在前若干帧图像中的运动信息,并将该运动信息具体表达
为运动信息矩阵:其中,h为卷积长短期记忆网络的隐藏层数。
47.进一步地,数据库根据可以根据前若干帧图像中的运动信息确定与其相互相唯一对应的前帧目标。
48.进一步地,数据库将运动信息矩阵转置为能够用于卷积神经网络的形式:并令其经过一个串联的卷积神经网络和卷积长短期记忆网络,并对卷积神经网络和卷积长短期记忆网络进行训练,以对每个前帧目标在当前帧时刻的位置进行预测,得到每个前帧目标的第一预测位置,并构成所有前帧目标在当前帧时刻的第一预测位置矩阵p
t

49.具体地,预测第一位置利用的是前若干帧的前帧目标的位置信息在时序上的变化,目标信息同时还包含大小和特征等信息,所以利用前帧目标在前若干帧的相关信息对当前帧时刻所可能具备的相关信息进行预测。进一步地,采取如下的ssim(结构相似性)损失函数来监督第一预测位置矩阵p
t
的训练:
[0050][0051]
其中,p
t

为位置标签矩阵,为第一预测位置矩阵的均值,为位置标签矩阵的均值,为第一预测位置矩阵的方差,为位置标签矩阵的方差,为第一预测位置矩阵和位置标签矩阵的协方差,c1和c2是用来维持稳定的常数。
[0052]
进一步地,位置标签矩阵采用如下公式得到:
[0053][0054]
其中,当wi《hi时,否则,
[0055]
步骤s103、根据所述第一预测位置对所述初步特征进行增强,得到增强特征;对所述增强特征进行对象识别,得到每个所述当前目标分别对应的位置识别信息和特征识别信息。
[0056]
根据图4和图3所示,在本技术的实施例中,首先利用如下的增强公式,对初步特征矩阵进行增强,得到增强特征,并表达为矩阵f
t


[0057][0058]
通过将第一预测位置矩阵p
t
与初步特征矩阵f
t
融合,使得在当前目标出现与正常体态差异较大的情况时,通过预测前帧目标的位置对当前目标的特征进行增强,便对体态差异过大的当前目标进行检测。缓解因为动物体态差异大,导致对当前目标产生的漏检与误检的问题。
[0059]
进一步地,数据库进行检测信息组的构建。
[0060]
首先,数据库查看是否具备前若干帧图像的增强特征,当具备该增强特征时,将其输入卷积神经网络中的动物对象检测网络。
[0061]
如图5所示,首先,将增强特征输入动物对象检测网络中的位置预测网络层,可以
得到位置概率矩阵的预测,表达为:
[0062]
其中,将得到的位置概率矩阵与预设的概率阈值ε1比较,对于位置概率矩阵中的每一个位置,若其概率值大于概率阈值,则将该位置定义为存在当前目标,并进一步将该位置的当前目标记为i,若其概率值小于等于概率阈值,则定义该位置不存在当前目标。
[0063]
同时,将增强特征输入动物对象检测网络中的偏移预测网络层,可以得到在每一个位置上所存在的当前目标的偏移预测矩阵代表当前目标的偏移量。
[0064]
进一步地,将增强特征输入动物对象检测网络中的长宽预测网络层,可以得到在每一个位置上所存在的当前目标的长宽预测矩阵代表当前目标的长宽尺寸。
[0065]
进一步地,将所述增强特征输入动物对象检测网络中的特征提取网络层,得到在每一个位置上所存在的当前目标的特征识别矩阵代表全部当前目标的特征,其中d表示特征的维度;其中,当前目标i在其位置上的特征表示为特征向量:ei∈rd。
[0066]
当数据库中所存储的前若干帧图像不满足a帧的数量要求时,则无法提取前若干帧图像的运动信息矩阵,进一步地,便无法计算前若干帧图像的第一预测位置,因此,当数据中所存储的前若干帧图像不满足a帧的数量要求时,则直接将初步特征矩阵输入动物对象检测网络中。
[0067]
进一步地,提取当前目标i在其位置上的位置坐标向量:并提取该位置对应的偏移向量:并利用如下公式,计算当前目标i的坐标向量[xi,yi]:
[0068][0069][0070]
进一步地,提取当前目标i在其位置上的长宽向量:[wi,hi],并结合坐标向量,以及特征向量,一同构成当前目标的检测信息组:
[0071]
进一步地,将检测信息组中的特征向量ei作为当前目标i的特征识别信息;将位置向量和长宽向量构成当前目标i的位置识别信息,并表达为位置识别信息向量:po=[xi,yi,wi,hi}。
[0072]
步骤s104、根据每个所述前帧目标的轨迹信息,对于每个所述前帧目标,确定其在前一帧图像中的位置信息和特征信息;根据所述位置信息,为每个所述目标对象分别预测得到第二预测位置。
[0073]
在本实施例中,首先,由数据库提取前帧目标的激活状态的轨迹信息,在本实施例中也可以用轨迹信息矩阵表达,在轨迹信息矩阵中提取前一帧的特征信息:
[0074]
在本实施例中,若当前帧时刻的前一帧图像中的某个目标曾与某轨迹信息成功匹配,则将该前帧目标的轨迹信息也即轨迹信息矩阵定义为激活状态;若某个轨迹信息未与当前帧时刻的前一帧图像中的任何目标匹配成功,则将该前帧目标的轨迹信息也即轨迹信息矩阵定义为非激活状态。
[0075]
进一步地,由数据库在前帧目标的激活状态的轨迹信息矩阵中提取前一帧的信息:
[0076]
其中,k表示轨迹的编号;
[0077]
状态中所保存的变量:x为该轨迹在前一帧中的纵坐标,x

为纵坐标的变化率;
[0078]
y为该轨迹在前一帧中的横坐标,y

为横坐标的变化率;
[0079]
w为该轨迹在前一帧中的宽度,w

为宽度的变化率;
[0080]
以及,h为该轨迹在前一帧中的高度,h

为高度的变化率。
[0081]
在本实施例中,使用匀速预测算法对前帧目标的位置预测,即假设在养殖场的羊在一定时间段内的运动为匀速运动,其公式为:
[0082]
x
p
=x+x

·
dt
[0083]yp
=y+y

·
dt
[0084]wp
=w+w

·
dt
[0085]hp
=h+h

·
dt
[0086]
进一步地,得到第二预测位置,并表达为向量p
p
=[x
p
,y
p
,w
p
,h
p
}。
[0087]
步骤s105、对于每个所述当前目标,将其与全部的所述轨迹信息分别组合,得到若干匹配组。
[0088]
在本公开的实施例中,数据库针对每个当前目标,令其与每个轨迹信息组成一对匹配组,则基于每个当前目标可以得到与轨迹信息数量相同的匹配组。
[0089]
例如,在本实施例中,假设当前帧图像中具备10只羊作为10个当前目标,前若干帧图像中具备5只羊作为5个前帧目标,则对于每只当前帧图像中的羊,均与前若干帧图像中的每只羊组合成一对匹配组,也即,5个匹配组。
[0090]
进一步地,对于全部10只当前帧图像中的羊,一共可以得到50个匹配组。
[0091]
步骤s106、对于每个所述匹配组,将该匹配组包括的所述当前目标的所述位置识别信息、所述特征识别信息与该匹配组包括的轨迹信息确定出的所述第二预测位置、特征信息分别进行匹配,得到位置匹配度和特征匹配度,并根据所述位置匹配度和所述特征匹配度得到联合匹配度。
[0092]
根据图3和图6所示,在本技术的实施例中,数据库可以根据上述得到的位置识别信息和第二预测位置,采取如下的位置匹配算法,计算位置匹配度:
[0093]
p
dst
=(p
p-po)s(p
p-po)
t
[0094]
其中,s为协方差矩阵,p
dst
表示位置匹配度,p
p
表示第二预测位置向量,po表示位置识别信息向量;
[0095]
进一步地,对于每组匹配组,均采取如上的方式,计算当前目标与前帧目标的位置匹配度,当某组的位置匹配度小于预设的位置匹配度阈值时,则舍该匹配组。
[0096]
进一步地,由数据库在前帧目标的激活状态的轨迹信息矩阵中提取前一帧的特征信息:
[0097]
进一步地,利用如下的余弦距离公式,基于特征信息与特征识别信息,计算每组前帧目标的与当前目标之间的特征匹配度:
[0098][0099]
其中,e
dst
表示特征匹配度,表示特征信息,ei表示特征识别信息。
[0100]
进一步地,当某组的特征匹配度小于预设的特征匹配度阈值时,则舍该匹配组。
[0101]
根据图3和图7所示,在本实施例中,基于上述得到的位置匹配度和特征匹配度,利用如下的联合匹配算法,计算每租匹配组当前目标与前帧目标之间的联合匹配度:
[0102][0103]
其中,g
dst
表示联合匹配度,p
dst
表示位置匹配度,e
dst
表示特征匹配度,为权重系数。
[0104]
在本实施例中,权重系数可以根据需求进行设置;对于每一次当前目标与前帧目标的匹配,既要考虑到在连续帧中目标外观上会存在一致性,同时也要考虑到其运动轨迹也会存在一致性。因此使用一个权重灵活的根据养殖场的条件,对外观上的重要性与运动轨迹上的重要性进行分配。
[0105]
进一步地,根据预设的联合匹配度阈值,当某组的联合匹配度小于预设的联合匹配度阈值时,则舍去该匹配组。
[0106]
步骤s107、根据若干所述匹配组及其分别对应的所述联合匹配度,得到多目标跟踪识别结果。
[0107]
根据图3所示,在本技术的实施例中,可以利用匹配算法,为前阵目标的轨迹信息与当前目标做一对一的唯一匹配,在本实施例中,数据库对每个当前目标,基于得到的联合匹配度,在未被舍去的剩余的匹配组中,采取匈牙利匹配算法或km匹配算法对前帧目标与当前目标之间的进行唯一匹配。
[0108]
进一步地,将匹配成功的当前目标加入与其匹配的前帧目标的轨迹信息中,并构成新的轨迹信息矩阵。
[0109]
进一步地,对于没有成功匹配的当前目标,可以分为两类,第一类是该目标曾经在历史轨迹矩阵中出现过,但由于遮挡或对象检测网络的漏检等原因,导致其在前一帧没有出现,因此其轨迹信息在时序上出现了中断。第二类是该当前目标是第一次出现,自然无法与前一帧的前帧目标相匹配。针对第一种情况,由于轨迹信息在时序上出现了中断,因此利用轨迹信息预测当前帧时刻的第一预测位置和第二预测位置的准确度较低,所以只考虑前帧目标与当前目标在特征间的相似度。
[0110]
具体地,提取出处于未激活状态的轨迹信息,也即该轨迹信息所代表的轨迹在时间维度上处于非连续状态,并提取其距当前帧时刻最近一次帧的特征并与当前目标的特征识别信息进行特征匹配度的计算,若匹配度大于等于匹配度阈值,则说明轨迹成功延续,将当前目标加入与其匹配的前帧目标的轨迹信息中,构成新的轨迹信息,并将该轨迹信息矩阵定义为激活状态;如果依然存在没有成功匹配,则认为这些当前目标都是在当前帧新发现的羊,因此为该当前目标创建新的轨迹信息,并构建新的轨迹信息矩阵,并将该轨迹信息矩阵置于激活状态。
[0111]
进一步地,如果某一轨迹信息长期处于非激活状态,并且非激活状态所维持的时
间大于预设的时间阈值,则认为该轨迹信息所对应的前帧目标,也即之前识别的羊已经长期从采集图像数据的场景中离开,因此将该轨迹信息从数据库中删除。
[0112]
进一步地,综合上述三类情况,得到最终的跟踪结果,并结束对该帧图像中多个当前目标的跟踪。
[0113]
在本实施例中,也可以通过对前帧目标进行编号的形式,并将该标号赋予其轨迹信息,并使用该编号进行匹配,以使匹配过程简化清晰。
[0114]
从上面所述可以看出,本技术提供的多目标跟踪方法,基于前帧的轨迹信息对当前帧时刻的位置进行预测,实现了对当前帧目标在特征识别上的加强,并综合考虑了位置概率、偏移预测、长宽预测和目标特征,来进行当前目标的检测,并联合了当前目标与前帧目标之间的位置与特征的匹配,使得对当前目标与前帧目标在轨迹上的匹配更加准确,从而实现准确对多个目标进行追踪
[0115]
需要说明的是,本技术的实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术的实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
[0116]
需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0117]
基于同一发明构思,与上述任意实施例方法相对应的,本技术的实施例还提供了一种多目标跟踪装置。
[0118]
参考图2,所述多目标跟踪装置,包括:初步特征提取模块、第一预测模块、对象识别模块、第二预测模块、匹配模块和跟踪识别模块;
[0119]
其中,所述初步特征提取模块201,被配置为:对包括有至少一个当前目标的当前帧图像进行特征提取,得到所述当前帧图像对应的初步特征;
[0120]
所述第一预测模块202,被配置为:根据所述当前帧图像的前若干帧图像,获取每个所述前帧目标分别对应的轨迹信息,并为每个前帧目标分别预测得到第一预测位置;
[0121]
所述对象识别模块203,被配置为:根据所述第一预测位置对所述初步特征进行增强,得到增强特征;对所述增强特征进行对象识别,得到每个所述当前目标分别对应的位置识别信息和特征识别信息;
[0122]
所述第二预测模块204,被配置为:根据每个所述前帧目标的轨迹信息,对于每个所述前帧目标,确定其在前一帧图像中的位置信息和特征信息;根据所述位置信息,为每个所述目标对象分别预测得到第二预测位置;
[0123]
所述匹配模块205,被配置为:对于每个所述当前目标,将其与全部的所述轨迹信息分别组合,得到若干匹配组;以及
[0124]
对于每个所述匹配组,将该匹配组包括的所述当前目标的所述位置识别信息、所述特征识别信息与该匹配组包括的轨迹信息确定出的所述第二预测位置、特征信息分别进行匹配,得到位置匹配度和特征匹配度,并根据所述位置匹配度和所述特征匹配度得到联
合匹配度;
[0125]
所述跟踪识别模块206,被配置为:根据若干所述匹配组及其分别对应的所述联合匹配度,得到多目标跟踪识别结果。
[0126]
作为一个可选的实施例,所述初步特征提取模块201,具体被配置为,可以将养殖场对所养殖羊群的跟踪作为选取的实施例,并利用影像监控设备作为图像数据的采集装置,该采集装置连接有存储图像数据的数据库,其中,数据库将采集装置所采集的图像数据以帧的形式进行存储,并且数据库连接有卷积神经网络和卷积长短期记忆网络。
[0127]
进一步地,将采集设备在当前时刻所采集的图像作为当前帧图像,并表示为t帧,将当前帧图像中的每一只羊作为一个当前目标。
[0128]
在本实施例中,数据库可以采取dla(深度学习加速器)-34卷积神经网络对当前目标在当前帧图像中的图像特征进行提取,得到t帧的初步特征矩阵,作为当前帧图像对应的初步特征。
[0129]
其中,该dla-34卷积神经网络可以由一个特征提取网络与一个尺度特征融合网络构成。
[0130]
进一步地,t帧的初步特征矩阵可以表示为:其中,f
t
为初步特征矩阵,c表示初步特征矩阵的通道数也即维度,m表示矩阵中当前目标的长,n表示矩阵中当前目标的宽。
[0131]
作为一个可选的实施例,所述第一预测模块202,具体被配置为,数据库提取先前采集的前若干帧的图像数据,其中,前若干帧的数量为根据需求所预设的数量;并将出现在前若干帧图像中的同一只羊作为一个前帧目标。
[0132]
进一步地,将全部前帧目标在前若干帧图像中每一帧的位置组成的矩阵作为位置矩阵,对于前帧目标在前若干帧图像中每一帧的位置矩阵,进行时间维度上的拼接,得到前帧目标的历史位置矩阵,并表示为:其中,为历史位置矩阵,a为前若干帧图像的数量。
[0133]
进一步地,将前帧目标的历史位置矩阵输入卷积长短期记忆网络,通过提取时序与空间上的特征,得到前帧目标在前若干帧图像中的运动信息,并将该运动信息具体表达为运动信息矩阵:其中,h为卷积长短期记忆网络的隐藏层数。
[0134]
进一步地,数据库根据可以根据前若干帧图像中的运动信息确定与其相互相唯一对应的前帧目标。
[0135]
进一步地,数据库将运动信息矩阵转置为能够用于卷积神经网络的形式:并令其经过一个串联的卷积神经网络和卷积长短期记忆网络,并对卷积神经网络和卷积长短期记忆网络进行训练,以对每个前帧目标在当前帧时刻的位置进行预测,得到每个前帧目标的第一预测位置,并构成所有前帧目标在当前帧时刻的第一预测位置矩阵p
t

[0136]
具体地,预测第一位置利用的是前若干帧的前帧目标的位置信息在时序上的变化,目标信息同时还包含大小和特征等信息,所以利用前帧目标在前若干帧的相关信息对当前帧时刻所可能具备的相关信息进行预测。进一步地,采取如下的ssim(结构相似性)损
失函数来监督第一预测位置矩阵p
t
的训练:
[0137][0138]
其中,p
t

为位置标签矩阵,为第一预测位置矩阵的均值,为位置标签矩阵的均值,为第一预测位置矩阵的方差,为位置标签矩阵的方差,为第一预测位置矩阵和位置标签矩阵的协方差,c1和c2是用来维持稳定的常数。
[0139]
进一步地,位置标签矩阵采用如下公式得到:
[0140][0141]
其中,当wi《hi时,否则,
[0142]
作为一个可选的实施例,所述对象识别模块203,具体被配置为,首先利用如下的增强公式,对初步特征矩阵进行增强,得到增强特征,并表达为矩阵f
t


[0143][0144]
通过将第一预测位置矩阵p
t
与初步特征矩阵f
t
融合,使得在当前目标出现与正常体态差异较大的情况时,通过预测前帧目标的位置对当前目标的特征进行增强,便对体态差异过大的当前目标进行检测。缓解因为动物体态差异大,导致对当前目标产生的漏检与误检的问题。
[0145]
进一步地,数据库进行检测信息组的构建。
[0146]
首先,数据库查看是否具备前若干帧图像的增强特征,当具备该增强特征时,将其输入卷积神经网络中的动物对象检测网络。
[0147]
首先,将增强特征输入动物对象检测网络中的位置预测网络层,可以得到位置概率矩阵的预测,表达为:
[0148]
其中,将得到的位置概率矩阵与预设的概率阈值ε1比较,对于位置概率矩阵中的每一个位置,若其概率值大于概率阈值,则将该位置定义为存在当前目标,并进一步将该位置的当前目标记为i,若其概率值小于等于概率阈值,则定义该位置不存在当前目标。
[0149]
同时,将增强特征输入动物对象检测网络中的偏移预测网络层,可以得到在每一个位置上所存在的当前目标的偏移预测矩阵代表当前目标的偏移量。
[0150]
进一步地,将增强特征输入动物对象检测网络中的长宽预测网络层,可以得到在每一个位置上所存在的当前目标的长宽预测矩阵代表当前目标的长宽尺寸。
[0151]
进一步地,将所述增强特征输入动物对象检测网络中的特征提取网络层,得到在每一个位置上所存在的当前目标的特征识别矩阵代表全部当前目标的特征,其中d表示特征的维度;其中,当前目标i在其位置上的特征表示为特征向量:ei∈rd。
[0152]
当数据库中所存储的前若干帧图像不满足a帧的数量要求时,则无法提取前若干
帧图像的运动信息矩阵,进一步地,便无法计算前若干帧图像的第一预测位置,因此,当数据中所存储的前若干帧图像不满足a帧的数量要求时,则直接将初步特征矩阵输入动物对象检测网络中。
[0153]
进一步地,提取当前目标i在其位置上的位置坐标向量:并提取该位置对应的偏移向量:并利用如下公式,计算当前目标i的坐标向量[xi,yi]:
[0154][0155][0156]
进一步地,提取当前目标i在其位置上的长宽向量:[wi,hi],并结合坐标向量,以及特征向量,一同构成当前目标的检测信息组:
[0157]
进一步地,将检测信息组中的特征向量ei作为当前目标i的特征识别信息;将位置向量和长宽向量构成当前目标i的位置识别信息,并表达为位置识别信息向量:po=[xi,yi,wi,hi}。
[0158]
作为一个可选的实施例,所述第二预测模块204,具体被配置为,由数据库提取前帧目标的激活状态的轨迹信息,在本实施例中也可以用轨迹信息矩阵表达,在轨迹信息矩阵中提取前一帧的特征信息:
[0159]
在本实施例中,若当前帧时刻的前一帧图像中的某个目标曾与某轨迹信息成功匹配,则将该前帧目标的轨迹信息也即轨迹信息矩阵定义为激活状态;若某个轨迹信息未与当前帧时刻的前一帧图像中的任何目标匹配成功,则将该前帧目标的轨迹信息也即轨迹信息矩阵定义为非激活状态。
[0160]
进一步地,由数据库在前帧目标的激活状态的轨迹信息矩阵中提取前一帧的信息:
[0161]
其中,k表示轨迹的编号;
[0162]
状态中所保存的变量:x为该轨迹在前一帧中的纵坐标,x

为纵坐标的变化率;
[0163]
y为该轨迹在前一帧中的横坐标,y

为横坐标的变化率;
[0164]
w为该轨迹在前一帧中的宽度,w

为宽度的变化率;
[0165]
以及,h为该轨迹在前一帧中的高度,h

为高度的变化率。
[0166]
在本实施例中,使用匀速预测算法对前帧目标的位置预测,即假设在养殖场的羊在一定时间段内的运动为匀速运动,其公式为:
[0167]
x
p
=x+x

·
dt
[0168]yp
=y+y

·
dt
[0169]wp
=w+w

·
dt
[0170]hp
=h+h

·
dt
[0171]
进一步地,得到第二预测位置,并表达为向量p
p
={x
p
,y
p
,w
p
,h
p
}。
[0172]
作为一个可选的实施例,所述匹配模块205,具体被配置为,数据库针对每个当前目标,令其与每个轨迹信息组成一对匹配组,则基于每个当前目标可以得到与轨迹信息数量相同的匹配组。
[0173]
例如,在本实施例中,假设当前帧图像中具备10只羊作为10个当前目标,前若干帧图像中具备5只羊作为5个前帧目标,则对于每只当前帧图像中的羊,均与前若干帧图像中的每只羊组合成一对匹配组,也即,5个匹配组。
[0174]
进一步地,对于全部10只当前帧图像中的羊,一共可以得到50个匹配组。
[0175]
数据库可以根据上述得到的位置识别信息和第二预测位置,采取如下的位置匹配算法,计算位置匹配度:
[0176]
p
dst
=(p
p-po)s(p
p-po)
t
[0177]
其中,s为协方差矩阵,p
dst
表示位置匹配度,p
p
表示第二预测位置向量,po表示位置识别信息向量;
[0178]
进一步地,对于每组匹配组,均采取如上的方式,计算当前目标与前帧目标的位置匹配度,当某组的位置匹配度小于预设的位置匹配度阈值时,则舍该匹配组。
[0179]
进一步地,由数据库在前帧目标的激活状态的轨迹信息矩阵中提取前一帧的特征信息:
[0180]
进一步地,利用如下的余弦距离公式,基于特征信息与特征识别信息,计算每组前帧目标的与当前目标之间的特征匹配度:
[0181][0182]
其中,e
dst
表示特征匹配度,表示特征信息,ei表示特征识别信息。
[0183]
进一步地,当某组的特征匹配度小于预设的特征匹配度阈值时,则舍该匹配组。
[0184]
在本实施例中,基于上述得到的位置匹配度和特征匹配度,利用如下的联合匹配算法,计算每租匹配组当前目标与前帧目标之间的联合匹配度:
[0185][0186]
其中,g
dst
表示联合匹配度,p
dst
表示位置匹配度,e
dst
表示特征匹配度,为权重系数。
[0187]
在本实施例中,权重系数可以根据需求进行设置;对于每一次当前目标与前帧目标的匹配,既要考虑到在连续帧中目标外观上会存在一致性,同时也要考虑到其运动轨迹也会存在一致性。因此使用一个权重灵活的根据养殖场的条件,对外观上的重要性与运动轨迹上的重要性进行分配。
[0188]
进一步地,根据预设的联合匹配度阈值,当某组的联合匹配度小于预设的联合匹配度阈值时,则舍去该匹配组。
[0189]
作为一个可选的实施例,所述跟踪识别模块206,具体被配置为,数据库可以利用匹配算法,为前阵目标的轨迹信息与当前目标做一对一的唯一匹配,在本实施例中,数据库对每个当前目标,基于得到的联合匹配度,在未被舍去的剩余的匹配组中,采取匈牙利匹配算法或km匹配算法对前帧目标与当前目标之间的进行唯一匹配。
[0190]
进一步地,将匹配成功的当前目标加入与其匹配的前帧目标的轨迹信息中,并构成新的轨迹信息矩阵。
[0191]
进一步地,对于没有成功匹配的当前目标,可以分为两类,第一类是该目标曾经在
历史轨迹矩阵中出现过,但由于遮挡或对象检测网络的漏检等原因,导致其在前一帧没有出现,因此其轨迹信息在时序上出现了中断。第二类是该当前目标是第一次出现,自然无法与前一帧的前帧目标相匹配。针对第一种情况,由于轨迹信息在时序上出现了中断,因此利用轨迹信息预测当前帧时刻的第一预测位置和第二预测位置的准确度较低,所以只考虑前帧目标与当前目标在特征间的相似度。
[0192]
具体地,提取出处于未激活状态的轨迹信息,也即该轨迹信息所代表的轨迹在时间维度上处于非连续状态,并提取其距当前帧时刻最近一次帧的特征并与当前目标的特征识别信息进行特征匹配度的计算,若匹配度大于等于匹配度阈值,则说明轨迹成功延续,将当前目标加入与其匹配的前帧目标的轨迹信息中,构成新的轨迹信息,并将该轨迹信息矩阵定义为激活状态;如果依然存在没有成功匹配,则认为这些当前目标都是在当前帧新发现的羊,因此为该当前目标创建新的轨迹信息,并构建新的轨迹信息矩阵,并将该轨迹信息矩阵置于激活状态。
[0193]
进一步地,如果某一轨迹信息长期处于非激活状态,并且非激活状态所维持的时间大于预设的时间阈值,则认为该轨迹信息所对应的前帧目标,也即之前识别的羊已经长期从采集图像数据的场景中离开,因此将该轨迹信息从数据库中删除。
[0194]
进一步地,综合上述三类情况,得到最终的跟踪结果,并结束对该帧图像中多个当前目标的跟踪。
[0195]
在本实施例中,也可以通过对前帧目标进行编号的形式,并将该标号赋予其轨迹信息,并使用该编号进行匹配,以使匹配过程简化清晰。
[0196]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术的实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0197]
上述实施例的装置用于实现前述任一实施例中相应的多目标跟踪方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0198]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术的实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0199]
另外,为简化说明和讨论,并且为了不会使本技术的实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本技术的实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术的实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术的实施例。因此,这些描述应被认为是说明性的而不是限制性的。
[0200]
尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
[0201]
本技术的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、
修改和变型。因此,凡在本技术的实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1