一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于多个动物的监控视频的目标跟踪方法及相关设备与流程

2022-02-22 17:38:18 来源:中国专利 TAG:


1.本公开涉及人工智能机器学习技术领域,尤其涉及一种基于神经网络模型的基于多个动物的监控视频的目标跟踪方法及相关设备。


背景技术:

2.深度学习网络是最受关注的机器学习技术和架构。随着计算能力的不断发展,深度学习的潜力被开发出来,传统机器学习算法很难解决的问题,被深度学习算法突破。如今,深度学习算法在图像、语音、文本问题等方面取得极高的成就。通过深度学习的方法实现智能化的图像、视频处理,是目前研究的一个热点。本公开旨在通过深度学习技术,解决养殖过程中的监控管理问题,为提供养殖行业的信息化和智能化做出贡献。
3.在传统的养殖监控管理中,管理人员主要依靠人工对养殖场进行监控管理。对于养殖场的情况,管理人员一般通过实地巡查或者监控摄像头了解养殖场的状况。然而,养殖场一般规模相对比较庞大,其场地面积大,监控摄像头的数目一般也很多,但是管理人员的数量和精力都有限,往往无法在全时间段了解养殖场中每一处所发生的事情,无法对所有可能存在的隐患或者已经发生的意外做出及时的应对措施,最后造成经济损失;而雇佣更多的管理人员显然会使得成本上升。因此传统的管理方式效率相对低下,对于大规模的养殖显然是不利的。


技术实现要素:

4.有鉴于此,本公开的目的在于提出一种可减少人力物力的基于多个动物的监控视频的目标跟踪方法及相关设备。
5.基于上述目的,本公开提供了一种基于多个动物的监控视频的目标跟踪方法,所述目标跟踪方法包括:
6.s1:对多个动物进行实时监控获得原始影像;
7.s2:对原始影像进行预处理获取处理图像;
8.s3:提取第t帧处理图像,在第t帧处理图像中检测动物,t为大于0的整数;
9.s4:将检测到的动物标记为检测对象,同时,第t-1帧至t-k帧中已经分配身份标识的动物记为跟踪对象,其中t>k>2;
10.s5:提取跟踪对象和检测对象的属性特征及两者之间的关联特征;
11.s6:根据关联特征,将第t帧图像中的检测对象与第t-1帧至t-k帧中的跟踪对象进行匹配;
12.s7:输出跟踪结果;
13.其中,s6步骤中,响应于基于所述关联特征而确定该检测对象与该跟踪对象匹配,为该检测对象分配与该跟踪对象的身份标识相同的身份标识。
14.作为本公开的进一步改进,步骤s5包括:
15.s51:提取跟踪对象和检测对象的像素特征及空间特征;
16.s52:根据跟踪对象和检测对象的像素特征,获取跟踪对象和检测对象的属性特征;
17.s53:根据跟踪对象和检测对象的像素特征及空间特征,获取跟踪对象和检测对象之间的关联特征;
18.s54:根据属性特征和关联特征的维度设置视频的整体特征;
19.s55:对跟踪对象及检测对象的属性特征、关联特征和整体特征进行迭代更新;
20.s56:基于更新后的属性特征、关联特征和整体特征,再次更新跟踪对象和检测对象之间的关联特征。
21.作为本公开的进一步改进,步骤s51包括:
22.通过神经网络计算提取跟踪对象和检测对象的像素特征,训练神经网络时,跟踪对象和检测对象的评估准则满足以下公式:
23.max∑|f(oi)-f(dj)|,if id(oi)≠id(dj),i=1,2,

,p,
24.min∑|f(oi)-f(dj)|,if id(oi)=id(dj),j=1,2,

,q,
25.其中,oi为跟踪对象,dj为检测对象,p和q分别表示跟踪对象和检测对象的数目,f(
·
)表示神经网络,id(
·
)表示数字标识,提取到的像素特征标记为l;
26.计算跟踪对象和检测对象之间的相对距离:
[0027][0028]
其中,(xi,yi,hi,wi)表示跟踪对象的左上角顶点的横坐标、纵坐标、高度和宽度,(xj,yj,hj,wj)表示检测对象的左上角顶点的横坐标、纵坐标、高度和宽度,计算得到的相对距离记为的空间特征s
ij

[0029]
作为本公开的进一步改进,步骤s52包括:
[0030]
将跟踪对象的像素特征和检测对象的像素特征经过一个卷积神经网络,得到跟踪对象的属性特征ai,i=0,1,2,

,p和检测对象的属性特征bj,j=0,1,2,

,q;
[0031]
步骤s53包括:
[0032]
将跟踪对象的像素特征和检测对象的像素特征之间的余弦相似度和两者之间的空间信息s
ij
,经过一个神经网络,得到跟踪对象和检测对象的关联特征r
ij

[0033]
步骤s54包括:根据属性特征和关联特征的维度调整获得整体特征v。
[0034]
作为本公开的进一步改进,步骤s55包括:
[0035]
通过神经网络对关联特征进行更新,并获得更新后的关联特征
[0036][0037]
其中,fr表示完成关联特征更新的神经网络,i=0,1,2,

,p,j=0,1,2,

,q;
[0038]
通过神经网络对检测对象的属性特征进行更新,并且可获得更新后的属性特征当然,也可一直在神经网络中循环,其中,
[0039][0040]
其中,fb表示完成检测对象属性特征更新的神经网络,i=0,1,2,

,p,j=0,1,
2,

,q;
[0041]
通过神经网络对整体特征进行更新,并且可获得更新后的整体特征v1,当然,也可一直在神经网络中循环,其中,
[0042]
先对跟踪对象的属性特征ai、已经更新过的检测对象的属性特征和两者之间的关联特征进行聚合操作:
[0043][0044][0045][0046]
其中,e(
·
)表示求均值聚合函数,i=0,1,2,

,p,j=0,1,2,

,q;
[0047]
再对整体特征进行更新,
[0048][0049]
其中,fv表示完成整体特征更新的神经网络。
[0050]
作为本公开的进一步改进,步骤s56包括:
[0051]
通过神经网络对关联特征进行最后一次更新获得更新后的关联特征
[0052][0053]
其中,表示完成关联特征最后一次更新的神经网络,α表示属性特征更新的次数,β表示关联特征更新的次数,γ表示整体特征更新的次数,i=0,1,2,

,p,j=0,1,2,

,q。
[0054]
作为本公开的进一步改进,步骤s6包括:
[0055]
s61:将第t帧图像中的检测对象与第t-1帧图像中的跟踪对象进行匹配;
[0056]
s62:将该检测对象与第t-2帧至t-k帧图像中匹配不成功的跟踪对象进行匹配,其中t>k>2;
[0057]
s63:将该检测对象赋予与该跟踪对象同样的身份标识和数字标识;
[0058]
s64:创建新的身份标识,并赋予该检测对象;
[0059]
步骤s61中,响应于确定该第t帧图像中的某检测对象与第t-1帧图像中的某跟踪对象匹配成功,则进入步骤s63并结束;
[0060]
响应于确定该第t帧图像中的某检测对象与第t-1帧图像中的某跟踪对象匹配不成功,则进入步骤s62;
[0061]
步骤s62中,响应于确定该第t帧图像中的某检测对象与第t-2帧至t-k帧图像中的某跟踪对象匹配成功,则进入步骤s63并结束;响应于确定匹配不成功,则进入步骤s64并结束。
[0062]
作为本公开的进一步改进,步骤s3包括:
[0063]
s31:提取第t帧处理图像,通过神经网络采集该处理图像中的浅层纹理特征和深层语义特征;
[0064]
s32:对浅层纹理特征和深层语义特征进行融合获得融合特征图;
[0065]
s33:对融合特征图进行处理获取动物在原始影像中的边界框及是否存在动物的置信度信息。
[0066]
基于上述目的,本公开提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述所述的方法。
[0067]
基于上述目的,本公开提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行上述所述方法。
[0068]
从上面所述可以看出,本公开提供的基于多个动物的监控视频的目标跟踪方法及相关设备,通过深度学习的技术对监控影像进行处理,检测出影像中存在的动物并且跟踪其运动轨迹,以辅助管理人员定位养殖动物的位置,跟踪其生活。本公开能够对监控影像进行分析处理,提取出图像的特征,从而检测识别出图像中存在的动物,并且能够根据相邻帧图像中提取出来的特征,判断出在相邻帧中检测出来的动物是否是属于同一个个体。对于管理人员而言,计算机辅助标识出监控视频中的动物,能够减少其辨识影像中动物所耗费的精力和时间,方便其确认养殖场中动物的数目以及缓解其他可能的问题;对动物运动轨迹的跟踪,有利于管理人员确认某只动物的动向,对于诸如走失等问题,能够提供一定的帮助。对于养殖场而言,本公开能够提高管理的信息化水平,减少其人工成本,提高管理效率。
附图说明
[0069]
为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0070]
图1为本公开基于多个动物的监控视频的目标跟踪方法的流程图;
[0071]
图2为本公开基于多个动物的监控视频的目标跟踪方法中对原始影像进行预处理的流程示意图;
[0072]
图3为为本公开基于多个动物的监控视频的目标跟踪方法中在处理图像中检测动物的流程示意图;
[0073]
图4为为本公开基于多个动物的监控视频的目标跟踪方法中对检测对象的特征提取方法的流程示意图;
[0074]
图5为为本公开基于多个动物的监控视频的目标跟踪方法中对检测对象和跟踪对象的信息进行比对的流程示意图;
[0075]
图6为本公开中电子设备的结构示意图。
具体实施方式
[0076]
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
[0077]
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第
一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
[0078]
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。在此声明,以下实施例仅为本发明所提方法的特例,不是全部的实施例,一切以本发明中的实施例为基础,做出无创造性劳动的细节调整获得的所有其他实施例,都属于本发明保护的范围。
[0079]
如图1至图5所示,本公开提出了一种基于多个动物的监控视频的目标跟踪方法,具体的,该跟踪方法包括以下步骤:
[0080]
s1:对养殖场内进行实时监控获得原始影像;
[0081]
当然,原始影像为视频格式,可以通过提取帧数的方式获取图像格式。
[0082]
s2:对原始影像进行预处理获取处理图像;
[0083]
具体的,本步骤的目的是通过图像处理方法,对原始影像进行预处理,平衡光照分布不均衡和对比度不强的问题。
[0084]
在动物的圈舍之中,阳光会通过窗口照射进去,暴露在阳光下的动物相对而言比较明亮,而在阴影中的动物则相对比较暗淡,两者之间的光照、亮度相差较大,而且与环境之间的对比度差异也比较大,这不利于对图像中动物的分类和动物位置的定位,因此需要对图像进行预处理,尽量使得阳光下的动物和阴影中的动物的光照、对比度趋向于一致。
[0085]
本实施例中,本步骤是通过直方图均衡化的方法对原始影像进行预处理,平衡光照分布和对比度不强的问题,如图2所示,该步骤具体包括:
[0086]
s21:依次提取原始影像中的通道图像,其中通道图像包括r通道图像、g通道图像、b通道图像;
[0087]
s22:对通道图像进行直方图均衡化,具体方法为:
[0088]
首先,获取当前通道图像的初始直方图,可表示为:
[0089][0090]
其中,m
×
n为该影像的尺寸,rk为像素值,其取值范围为[0,l-1],nk为该像素值为rk的像素在该影像中的数量;
[0091]
由于,对于在圈舍中的动物监控影像而言,处于阳光中的动物,其像素值rk比较大,所对应的nk比较大;对于处于阴影中的动物,其像素值rk比较小,所对应的nk比较大。而对于像素值在两者之间的像素,其所对应的nk则较小。直方图均衡化的目的便是让所有像素值所对应的nk,能够有一个差不大相似的大小,从而使得图像的对比度和光照趋于一致。
[0092]
其次,对初始直方图进行计算获取变换直方图,可表示为:
[0093][0094]
其中,sk表示的是像素值为rk的像素经过变换之后得到的像素值。
[0095]
s3:提取第t帧处理图像,在第t帧处理图像中检测动物,其中t>0。
[0096]
本步骤是通过神经网络的方式,在处理图像中检测动物,以方便后续的目标跟踪。本公开中的神经网络可以是常用的神经网络模型,例如vgg,resnet,repvgg,mlp,resnext等,当然,也可以是本公开所属技术领域技术人员所熟知的其他具有相似结构的神经网络。
[0097]
在本实施例中,如图3所示,本步骤具体包括:
[0098]
s31:提取第t帧处理图像,通过神经网络采集该处理图像中的浅层纹理特征和深层语义特征。
[0099]
由于,对于待检测的动物而言,即使个体的大小相差不大,但是因为摄像头拍摄的角度问题,使得在监控影像中待检测的动物呈现近大远小的情况,在图像中显示的个体之间的大小差异较大,因此需要提取多个尺度的图像特征,使用不同的神经网络感受并提取图像特征。对于待检测的动物,其毛发的颜色、身体的形状等特征有利于区分不同种类的动物,可以通过神经网络提取的深层语义特征得到;而区分同一个种类的不同个体,则需要个体的浅层纹理特征,例如动物的所在的位置、脸部的皮肤颜色、毛发的浓密等等信息,这些信息在神经网络的层数较小时可以得到,而随着神经网络的加深会丢失。
[0100]
因此,该步骤s31具体包括:
[0101]
首先,设置下采样模块,将一个带有激活层的步长为s的下采样卷积核和n个带有激活层的保持尺度不变和通道数不变的卷积核作为下采样模块;
[0102]
其次,将第t帧处理图像依次经过上述n 1个下采样模块,获得尺寸不同的特征图;
[0103]
最后,选择m个不同尺寸的特征图,并记为c1,c2,

,cm。
[0104]
从而,经过少量下采样模块处理得到的特征图包含有丰富的纹理特征,可以保留待检测动物的个体的信息;经过多个下采样模块得到的特征图则包含有丰富的语义信息;中间部分得到的特征图同样保留动物的纹理特征和语义特征。每经过一个下采样模块,特征图的尺寸就会发生变化,因而特征图的尺度均有不同,且ci的尺度是c
i 1
的尺度的s
×
s倍,且不同的特征图具有不同的浅层纹理特征和深层语义特征。
[0105]
s32:对浅层纹理特征和深层语义特征进行融合获得融合特征图。
[0106]
由于,对检测而言,浅层的纹理特征和高层的语义特征都是必要的,因此需要将这两个特征进行融合。对于神经网络提取到的不同的特征图,都需要进行两种特征的融合,所以神经网络需要进行自顶向下和自底向上的两种融合方案。
[0107]
因此,该步骤s32具体包括:
[0108]
首先,自顶向下进行特征融合,以将深层语义特征传递给每一个尺度的特征图,
[0109]
pi=conv1x1(ci) upsample(c
i 1
),i=1,2,

,m-1,
[0110]
其中,upsample表示步长为s的上采样模块,可以使用插值或者反卷积的形式,conv1x1表示步长为1、卷积核大小为1的卷积核;
[0111]
然后,自底向上进行特征融合,以将浅层纹理特征传递给每一个尺度的特征图,
[0112]ni 1
=conv1x1(p
i 1
conv3x3(pi)),i=1,2,

,m-1,
[0113]
其中,conv3x3表示步长为s、卷积核大小为3的卷积核,conv1x1表示步长为1、卷积核大小为1的卷积核。
[0114]
s33:对融合特征图进行处理获取动物在原始影像中的边界框及是否存在动物的置信度信息。
[0115]
该步骤的目的是通过步骤s32得到的融合特征图,计算出融合特征图上存在动物的置信度和动物的所属类别与边界框。上述融合特征图共有m个,分别记为:n1,n2,

,nm,并且这些融合特征图各自可通过一个卷积核得到预测图,再通过预测图的信息计算出原始图片上存在的动物信息。
[0116]
具体的,该步骤s33包括:
[0117]
计算获得可能存在的物体的置信度、边界框和物体的种类;
[0118]
对所有拥有相同预测类别的边界框,按照置信度进行排序;
[0119]
取最大置信度的边界框作为一个预测结果;
[0120]
将剩余边界框与所述预测结果计算交并比,如果交并比大于阈值,则舍去该边界框,否则,则保留该边界框;
[0121]
重复前述步骤,直到所有边界框两两之间的交并比都小于阈值。
[0122]
在本实施例中,共有p类动物,假设特征图nj,j=0,1,2,

,m,其下采样倍率为s,维度信息为m
×n×
c,分别表示宽度、高度和通道数,经过一个卷积核后得到的预测为m
×n×c′
,其中c

的数值为num
anchor
×
(5 p),num
anc
表示先验anchor的数目。通道上的数值代表这个anchor下存在动物的置信度conf,动物的边界框中心在特征图上该点的偏移offset
x
,offsety,边界框的高度和宽度的偏置量offseth,offsetw,以及属于p类动物的概率pi。
[0123]
检测目标在原始图像上的位置信息可以用如下公式计算:
[0124]
x
center
=s
×
(i offset
x
),i=0,1,2,

,m-1,
[0125]ycenter
=s
×
(j offsety),j=0,1,2,

,n-1,
[0126][0127][0128]
其中,anchork_w表示第k个anchor的宽,anchork_h表示第k个anchor的高。
[0129]
若物体的置信度小于置信度阈值conf
threshold
,则舍去该置信度并通过如下公式更新置信度:
[0130]
conf=conf
×
max(pi)。
[0131]
然后,对于拥有相同预测类别的所有边界框,根据置信度对他们进行排序,拥有最大置信度的边界框保留作为其中一个预测结果,对于剩下的边界框,计算他们与预测结果的交并比。若边界框与预测结果的交并比大于阈值iou_thres,则认为这两个边界框属于同一个动物个体,则舍去该边界框。否则,则保留该边界框。重复上述过程,直至所有拥有相同预测类别的边界框两两之间的交并比都小于阈值iou_thres,则最终保留下来的边界框即最终的所有预测结果。对于每一个预测结果,其预测的边界信息和类别信息,确定了动物存在于图像中的位置和动物的类别。
[0132]
每一个融合特征图经过一个卷积核后得到预测信息,预测信息包含该像素点上存在的动物的置信度信息、中心坐标信息、高度和宽度信息、所有每一个类别的概率信息,然后通过这些信息计算出在原图上的边界框。通过置信度判断是否存在动物,如果存在则根据最大的类别概率判断所属的动物类别,最后再根据同类别的动物边界框的交并比判断是否是同一个个体,如果是则舍去概率较小的边界框。通过这些步骤得到动物的检测结果。
[0133]
经过上述步骤,可以在第t帧处理的图像中检测到动物或者检测不到动物,经过判
断,若第t帧处理图像中不存在动物,则舍弃该第t帧处理图像,并提取第t 1帧并返回步骤s2进行图像处理;
[0134]
若判断该第t帧处理图像中存在至少一个动物,则进入步骤s4。
[0135]
s4:将检测到的动物记为检测对象,将第t-1帧至t-k帧中已经分配过身份标识和数字标识的动物记为跟踪对象。以便于以下步骤中,将检测对象和跟踪对象进行比对,并将检测对象也尽量添加上身份标识和数字标识,以对动物进行跟踪。
[0136]
s5:提取跟踪对象和检测对象的属性特征及两者之间的关联特征。如图4所示,该s5步骤包括:
[0137]
s51:提取跟踪对象和检测对象的像素特征及空间特征。
[0138]
提取跟踪对象和检测对象的像素特征及空间特征。该步骤的目标是通过基于卷积神经网络的方法,初步提取跟踪对象和检测对象的特征,作为后续步骤的输入。
[0139]
其中,像素特征是指前一帧的跟踪对象oi,i=1,2,

,p,和当前帧的检测对象dj,j=1,2,

,q,经过裁剪之后的切片,其表示的是像素值信息。其中p,q分别表示跟踪对象和检测对象的数目。
[0140]
由于需要对同种类的动物个体进行区分,所以神经网络要尽量增大拥有不同数字标识的跟踪对象和检测对象之间的像素值特征差异,减小拥有相同数字标识的跟踪对象和检测对象之间的像素值特征差异。
[0141]
因此,该步骤s51具体包括:通过神经网络计算提取跟踪对象和检测对象的像素特征,训练神经网络时,跟踪对象和检测对象的评估准则满足以下公式:
[0142]
max∑|f(oi)-f(dj)|,if id(oi)≠id(dj),
[0143]
min∑|f(oi)-f(dj)|,if id(oi)=id(dj),
[0144]
其中,oi为跟踪对象,i=1,2,

,p,dj为检测对象,j=1,2,

,q,p和q分别表示跟踪对象和检测对象的数目,f(
·
)表示神经网络,id(
·
)表示数字标识,提取到的像素特征标记为l;
[0145]
空间特征指的是前一帧的跟踪对象和当前帧检测对象在图像中的位置信息。在视频影像中,相邻两帧图像的时间间隔较小,而且动物运行速度也不会很快,因此在两帧图像上,同一个动物个体所出现的位置,不会相距太远,因此对于跟踪对象oi和检测对象dj而言,如果在原始图像上,两者之间的相对距离大于一个阈值distance_threshold,则可以认为两者之间的空间信息是无效的,可以不提取。对于养殖场中的动物而言,其外观等方面的差异不会很大,所以动物的空间信息对于识别两帧之间的动物是否是同一个个体,作用相对而言会更大。
[0146]
因而,该步骤s51具体还包括:
[0147]
计算跟踪对象和检测对象之间的相对距离:
[0148][0149]
其中,(xi,yi,hi,wi)表示跟踪对象的左上角顶点的横坐标、纵坐标、高度和宽度,(xj,yj,hj,wj)表示检测对象的左上角顶点的横坐标、纵坐标、高度和宽度,计算得到的相对距离记为的空间特征s
ij

[0150]
s52:根据跟踪对象和检测对象的像素特征获取跟踪对象和检测对象的属性特征。
[0151]
本步骤的目标是对上述步骤初步提取的像素特征做进一步的处理,以提取出前一帧的跟踪对象和当前帧的检测对象自身的属性特征。
[0152]
其中,属性特征表示前一帧的跟踪对象和当前帧的检测对象本身的特征,即只取决于本帧图像的信息,与其他帧图像的信息无关。因此,属性特征可以经由像素特征进行处理后得到。
[0153]
具体的,步骤s52包括:
[0154]
将跟踪对象的像素特征和检测对象的像素特征经过一个卷积神经网络,得到跟踪对象的属性特征ai,i=0,1,2,

,p和检测对象的属性特征bj,j=0,1,2,

,q。
[0155]
s53:根据跟踪对象和检测对象的像素特征及空间特征获取获取跟踪对象和检测对象之间的关联特征。
[0156]
本步骤的目标是对上述步骤初步提取的像素特征和空间特征做进一步的处理,以提取出前一帧的跟踪对象和当前帧的检测对象之间的关联特征。
[0157]
关联特征指的是前一帧的跟踪对象和当前帧的检测对象之间存在的内在联系,需要综合考虑两者的像素特征和空间特征,但并不是所有的跟踪对象和检测对象之间都存在这关联特征,因为图像上相对距离较大的跟踪对象和检测对象不可能是同一个个体,即空间信息没有提取的,可以认为两者之间不存在一个关联关系,可以不提取其关联特征。
[0158]
具体的,步骤s53包括:
[0159]
将跟踪对象的像素特征和检测对象的像素特征之间的余弦相似度和两者之间的空间信息s
ij
,经过一个神经网络,得到跟踪对象和检测对象的关联特征r
ij

[0160]
s54:根据属性特征和关联特征的维度提取整体特征。
[0161]
所述步骤s54具体包括:根据属性特征和关联特征的维度调整获得整体特征v。
[0162]
由于,获得上述属性特征和关联特征,均依赖于某一帧或两帧的信息,都是局部信息,仅仅使用局部信息,不能够很好地反映整段视频影像的特点,因此引入一个不依赖于任何帧信息的整体特征,其表示整部视频的特征,其中整体特征的维度为k*q,可以根据属性特征和关联特征的维度进行调整,并且随机初始化为某一个范围内的数值,记得到的整体特征为v。
[0163]
s55:对跟踪对象及检测对象的属性特征、关联特征和整体特征进行迭代更新。
[0164]
上述步骤s54中的属性特征、关联特征、整体特征,由于没有经过信息交互,其表达能力和可信程度不够,需要对两帧图像之间的信息进行融合交互。具体的,需要对跟踪对象的属性特征ai、检测对象的属性特征bj、两者之间的关联特征r
ij
和整体特征v进行迭代更新。
[0165]
具体的,步骤s55包括:
[0166]
通过神经网络对关联特征进行更新,并获得更新后的关联特征
[0167][0168]
其中,fr表示完成关联特征更新的神经网络,i=0,1,2,

,p,j=0,1,2,

,q;
[0169]
首先,通过神经网络对关联特征的更新,关联特征表示跟踪对象和检测对象之间的内在联系,因此需要使用两者的属性特征和最初的关联特征进行更新,同时整体特征也
参与更新,以表示整段视频的信息。
[0170]
通过神经网络对检测对象的属性特征进行更新,并且可获得更新后的属性特征当然,也可以在所述神经网络中进行多次更新,其中,
[0171][0172]
其中,fb表示完成检测对象属性特征更新的神经网络,i=0,1,2,

,p,j=0,1,2,

,q。
[0173]
其次,通过神经网络对检测对象的属性特征进行更新,属性特征的更新仅针对检测对象的属性特征,对于跟踪对象而言,其数字标识已经分配,而检测对象则尚未分配,检测对象的数字标识依赖于跟踪对象,因此需要对检测对象的属性特征进行更新,而跟踪对象的属性特征则可以认为是参考值,不必进行更新。
[0174]
通过神经网络对整体特征进行更新,并且可获得更新后的整体特征v1,当然,也可以在所述神经网络中进行多次更新,其中,
[0175]
先对跟踪对象的属性特征ai、已经更新过的检测对象的属性特征和两者之间的关联特征进行聚合操作:
[0176][0177][0178][0179]
其中,e(
·
)表示求均值聚合函数,i=0,1,2,

,p,j=0,1,2,

,q;
[0180]
再对整体特征进行更新,
[0181][0182]
其中,fv表示完成整体特征更新的神经网络。
[0183]
整体特征需要反应的是整段视频的特征,因此在两帧之间训练的时候,需要使用到两帧之间的所有信息,即跟踪对象的属性特征和检测对象的属性特征以及两者之间的关联特征,同时原来的整体特征也参与迭代更新。
[0184]
并且,由于判断两帧之间的跟踪对象和检测对象是否属于同一个个体主要依赖于两者之间的内在联系,所以关联特征需要用更新过一次的检测对象属性特征、更新过一次的关联特征以及更新过一次的整体特征进行第二次更新。因此,所述步骤s5还包括:
[0185]
s56:通过神经网络对关联特征进行最后一次更新获得更新后的关联特征
[0186][0187]
其中,表示完成关联特征最后一次更新的神经网络,α表示属性特征更新的次数,β表示关联特征更新的次数,γ表示整体特征更新的次数,i=0,1,2,

,p,j=0,1,2,

,q。
[0188]
经过上述步骤s1至步骤s5,已经获得了跟踪对象和检测对象的若干特征,从而可通过这些特征对检测对象进行匹配。
[0189]
s6:根据关联特征,将第t帧图像中的检测对象与第t-1帧至t-k帧中的跟踪对象进行匹配,其中t>k>2。
[0190]
s7:输出跟踪结果。
[0191]
其中,s6步骤中,若匹配成功,则将该检测对象赋予与对应跟踪对象同样同样的身份标识和数字标识;若匹配不成功,则创建新的身份标识,并赋予该检测对象。
[0192]
由于前一帧的跟踪对象已经拥有分配过的数字标识,而当前帧的检测对象尚未分配数字标识。步骤s53中得到的关联特征反映的是跟踪对象和检测对象之间的内在联系,可以作为分配数字标识的依据。因而,通过对象匹配算法进行匹配,结合跟踪对象的数字标识,为每一个检测对象分配数字标识。如果跟踪对象oi与检测对象dj相匹配,那么为检测对象分配与跟踪对象相同的数字标识。
[0193]
而且该检测对象的属性特征与该跟踪对象的相似度大于一个阈值,则认为两者是同一个个体,赋予相同的数字标识,否则则认为该跟踪对象已经消失。
[0194]
具体的,如图5所示,该步骤s6包括:
[0195]
s61:将第t帧图像中的检测对象与第t-1帧图像中的跟踪对象进行匹配;
[0196]
s62:将该检测对象与第t-2帧至t-k帧图像中匹配不成功的跟踪对象进行匹配,其中t>k>2;
[0197]
s63:将该检测对象赋予与该跟踪对象同样的身份标识和数字标识;
[0198]
s64:创建新的身份标识,并赋予该检测对象;
[0199]
步骤s61中,若该第t帧图像中的某检测对象与第t-1帧图像中的某跟踪对象匹配成功,则进入步骤s63并结束;
[0200]
若该第t帧图像中的某检测对象与第t-1帧图像中的某跟踪对象匹配不成功,则进入步骤s62;
[0201]
步骤s62中,若该第t帧图像中的某检测对象与第t-2帧至t-k帧图像中的某跟踪对象匹配成功,则进入步骤s63并结束;若匹配不成功,则进入步骤s64并结束。
[0202]
若,前一帧的跟踪对象中没有与当前帧的检测对象相匹配的对象,则需要将当前帧的检测对象与第t-1帧至t-k帧中的跟踪对象进行匹配。若匹配成功,则需要为该检测对象赋予与该跟踪对象同样的数字标识。若均未匹配成功,则说明该检测对象是新出现的动物,需要为该检测对象赋予新的身份标识。
[0203]
并且,步骤s6中,若有一跟踪对象与当前任何一个检测对象均不匹配,则储存该跟踪对象的属性特征以继续进行匹配。
[0204]
另外,在本实施例中,需要首先对获得的关联特征的数值进行二值化,得到值为[0,1]的关联特征。其中,0表示检测对象与跟踪对象之间不可能是同一个个体,1表示检测对象与跟踪对象可能是同一个个体,问题转化为最大匹配问题。通过匈牙利算法可以解决这个问题,最后得到并输出跟踪结果。
[0205]
从上述实施例可以看出,本公开中基于多个动物的监控视频的目标跟踪方法,通过深度学习的技术对监控影像进行处理,检测出影像中存在的动物并且跟踪其运动轨迹,以辅助管理人员定位养殖动物的位置,跟踪其生活。本公开能够对监控影像进行分析处理,
提取出图像的特征,从而检测识别出图像中存在的动物,并且能够根据相邻帧图像中提取出来的特征,判断出在相邻帧中检测出来的动物是否是属于同一个个体。对于管理人员而言,计算机辅助标识出监控视频中的动物,能够减少其辨识影像中动物所耗费的精力和时间,方便其确认养殖场中动物的数目以及缓解其他可能的问题;对动物运动轨迹的跟踪,有利于管理人员确认某只动物的动向,对于可能存在的诸如走失等问题,能够提供一定的帮助。对于养殖场而言,本公开能够提高管理的信息化水平,减少其人工成本,提高管理效率。
[0206]
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0207]
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种动物养殖场的影像监控装置。所述影像监控装置可以用以实现上述目标跟踪方法。
[0208]
具体的,所述影像监控装置包括:摄像模块,用以实现步骤s1;图像处理模块,用以实现步骤s2;动物检测模块,用以实现步骤s3;标记模块,用以实现步骤s4;特征提取模块,用以实现步骤s5;匹配模块,用以实现步骤s6;输出模块,用以实现步骤s7。
[0209]
因此,所述影像监控装置中的上述模块之间依次通讯连接并相互配合,以实现本公开中的目标跟踪方法。
[0210]
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本公开时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0211]
上述实施例的装置用于实现前述任一实施例中相应的目标跟踪方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0212]
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的目标跟踪方法。
[0213]
图6示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
[0214]
处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
[0215]
存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
[0216]
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中
输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
[0217]
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
[0218]
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
[0219]
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
[0220]
上述实施例的电子设备用于实现前述任一实施例中相应的目标跟踪方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0221]
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的目标跟踪方法。
[0222]
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0223]
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的目标跟踪方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
[0224]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
[0225]
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。
[0226]
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献