本公开涉及图像处理技术领域,具体地,涉及一种目标对象的追踪方法、装置、存储介质和电子设备。
背景技术:
随着图像处理技术的不断进步,视觉目标跟踪(visualobjecttracking)在视频监控、人机交互、无人驾驶等领域都得到了广泛的应用。目标追踪的目的是根据给定的多帧连续图像,预测之后图像中目标对象的位置。其中,目标对象可以是指定的人、物体、或者人体的某个部位,物体的某个部位。通常情况下,目标追踪技术是基于rgb(英文:red-green-blue)色彩空间的数据,数据量大。大量的数据在传输、处理的过程中,占用带宽,运算量和复杂度高,功耗大,容易造成延时。
技术实现要素:
为了解决现有技术中存在的相关问题,本公开的目的是提供一种目标对象的追踪方法、装置、存储介质和电子设备。
根据本公开实施例的第一方面,提供一种目标对象的追踪方法,所述方法包括:
获取单光子雪崩二极管spad相机在当前时刻之前采集的至少一个目标图像;
针对每个所述目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取所述孪生神经网络输出的该目标图像中目标对象的位置,所述模板图像中包括所述目标对象;
根据每个所述目标图像中所述目标对象的位置,确定待预测图像中所述目标对象的位置,所述待预测图像为所述spad相机在当前时刻采集的图像。
可选地,所述将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取所述孪生神经网络输出的该目标图像中目标对象的位置,包括:
按照预设的检测区域对该目标图像进行划分,以得到该目标图像对应的检测图像;
将所述检测图像和所述模板图像输入所述孪生神经网络,以获取所述孪生神经网络输出的所述检测图像中所述目标对象的位置。
可选地,所述将所述检测图像和所述模板图像输入所述孪生神经网络,以获取所述孪生神经网络输出的所述检测图像中所述目标对象的位置,包括:
将所述检测图像输入所述孪生神经网络中的卷积神经网络,以得到所述卷积神经网络输出的第一高层特征和第一低层特征;
将所述模板图像输入所述卷积神经网络,以得到所述卷积神经网络输出的第二高层特征和第二低层特征;
将所述第一高层特征与所述第二高层特征输入互相关卷积层,以得到所述互相关卷积层输出的高层特征,并将所述第一低层特征与所述第二低层特征输入所述互相关卷积层,以得到所述互相关卷积层输出的低层特征;
根据所述高层特征和所述低层特征确定所述检测图像中所述目标对象的位置。
可选地,所述根据所述高层特征和所述低层特征确定所述检测图像中所述目标对象的位置,包括:
将所述高层特征和所述低层特征进行互相关卷积,以得到总特征;
将所述总特征输入所述孪生神经网络中的softmax层,以得到所述softmax层输出的所述检测图像中每个像素点与所述目标对象的匹配度;
根据所述检测图像中每个像素点与所述目标对象的匹配度,确定所述检测图像中所述目标对象的位置。
可选地,所述根据每个所述目标图像中所述目标对象的位置,确定待预测图像中所述目标对象的位置,包括:
判断每个所述目标图像中,第一像素位置是否属于所述目标对象的位置,所述第一像素位置为所述spad相机采集的图像中的任一像素位置;
若存在第一数量个所述目标图像中,所述第一像素位置属于所述目标对象的位置,且所述第一数量大于预设阈值,确定所述待预测图像中,所述第一像素位置属于所述目标对象的位置。
根据本公开实施例的第二方面,提供一种目标对象的追踪装置,所述装置包括:
获取模块,用于获取单光子雪崩二极管spad相机在当前时刻之前采集的至少一个目标图像;
处理模块,用于针对每个所述目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取所述孪生神经网络输出的该目标图像中目标对象的位置,所述模板图像中包括所述目标对象;
确定模块,用于根据每个所述目标图像中所述目标对象的位置,确定待预测图像中所述目标对象的位置,所述待预测图像为所述spad相机在当前时刻采集的图像。
可选地,所述处理模块包括:
划分子模块,用于按照预设的检测区域对该目标图像进行划分,以得到该目标图像对应的检测图像;
处理子模块,用于将所述检测图像和所述模板图像输入所述孪生神经网络,以获取所述孪生神经网络输出的所述检测图像中所述目标对象的位置。
可选地,所述处理子模块用于:
将所述检测图像输入所述孪生神经网络中的卷积神经网络,以得到所述卷积神经网络输出的第一高层特征和第一低层特征;
将所述模板图像输入所述卷积神经网络,以得到所述卷积神经网络输出的第二高层特征和第二低层特征;
将所述第一高层特征与所述第二高层特征输入互相关卷积层,以得到所述互相关卷积层输出的高层特征,并将所述第一低层特征与所述第二低层特征输入所述互相关卷积层,以得到所述互相关卷积层输出的低层特征;
根据所述高层特征和所述低层特征确定所述检测图像中所述目标对象的位置。
可选地,所述处理子模块用于:
将所述高层特征和所述低层特征进行互相关卷积,以得到总特征;
将所述总特征输入所述孪生神经网络中的softmax层,以得到所述softmax层输出的所述检测图像中每个像素点与所述目标对象的匹配度;
根据所述检测图像中每个像素点与所述目标对象的匹配度,确定所述检测图像中所述目标对象的位置。
可选地,所述确定模块用于:
判断每个所述目标图像中,第一像素位置是否属于所述目标对象的位置,所述第一像素位置为所述spad相机采集的图像中的任一像素位置;
若存在第一数量个所述目标图像中,所述第一像素位置属于所述目标对象的位置,且所述第一数量大于预设阈值,确定所述待预测图像中,所述第一像素位置属于所述目标对象的位置。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例的第一方面所述方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开实施例的第一方面所述方法的步骤。
通过上述技术方案,本公开首先获取spad相机在当前时刻之前采集的至少一个目标图像,然后针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取孪生神经网络输出的该目标图像中目标对象的位置,其中,模板图像中包括目标对象,最后根据每个目标图像中目标对象的位置,确定待预测图像中目标对象的位置,待预测图像为spad相机在当前时刻采集的图像。本公开能够根据spad相机采集的图像进行目标追踪,降低了数据的运算量和复杂度,并且降低了数据占用的带宽,从而降低目标追踪的功耗和时延。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种目标对象的追踪方法的流程图;
图2是根据一示例性实施例示出的另一种目标对象的追踪方法的流程图;
图3是根据一示例性实施例示出的一种孪生神经网络的示意图;
图4是根据一示例性实施例示出的另一种目标对象的追踪方法的流程图;
图5是根据一示例性实施例示出的一种目标对象的追踪装置的框图;
图6是根据一示例性实施例示出的另一种目标对象的追踪装置的框图;
图7是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种目标对象的追踪方法的流程图,如图1所示,该方法包括:
步骤101,获取单光子雪崩二极管spad相机在当前时刻之前采集的至少一个目标图像。
举例来说,本公开实施例中涉及的图像(包括后续提及的目标图像、待预测图像等)均为spad(英文:singlephotonavalanchediode,中文:单光子雪崩二极管)相机采集的图像,该图像通常为低精度(1-bit)图像。首先,获取spad相机在当前时刻之前连续采集的一个或多个目标图像,例如,可以获取spad相机采集的2k-1个目标图像,k为正整数。
步骤102,针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取孪生神经网络输出的该目标图像中目标对象的位置,模板图像中包括目标对象。
示例的,针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络。其中,模板图像中包括了目标对象,可以理解为预先采集包括了目标对象的大量图像,从这些图像中选取最能代表目标对象的图像作为模板图像。目标对象可以为指定的人或物体,也可以是人体的某个部位,物体的某个部位。目标图像的尺寸通常大于模板图像的尺寸,例如,目标图像的尺寸为5n*5n,模板图像的尺寸为n*n。孪生神经网络(英文:siamesenetwork)中可以包括有卷积神经网络和互相关卷积层。可以理解为,将每个目标图像输入到卷积神经网络中提取目标图像的特征数据,并将模板图像输入到卷积神经网络中提取模板图像的特征数据,然后再将目标图像的特征数据和模板图像的特征数据通过互相关卷积层,确定目标图像与模板图像的相似程度,从而确定该目标图像中目标对象的位置。该目标图像中目标对象的位置,可以理解为像素位置(即坐标),即该目标图像中哪些像素位置属于目标对象。
需要说明的是,孪生神经网络中,可以包括两个完全相同的卷积神经网络,分别用来提取目标图像和模板图像的特征数据,也可以只包括一个卷积神经网络,既用来提取目标图像的特征数据,也用来提取模板图像的特征数据。上述孪生神经网络可以为siamfc(英文:fully-convolutional)、siamrpn(英文:regionproposalnetwork)等孪生神经网络,本公开不限于此,还可以包括其他类型的孪生神经网络。
步骤103,根据每个目标图像中目标对象的位置,确定待预测图像中目标对象的位置,待预测图像为spad相机在当前时刻采集的图像。
示例的,在得到每个目标图像中目标对象的位置之后,可以结合每个目标图像中目标对象的位置,确定spad相机在当前时刻采集的待预测图像中,目标对象的位置。目标图像与待预测图像均为spad相机采集的图像,因此,目标图像与待预测图像的尺寸相同,那么目标图像包含的像素数目与待预测图像包含的像素数目相同。可以先通过统计每个目标图像中对应的像素位置被确定为属于目标对象的命中次数,然后按照命中次数的大小降序排列,将排序在前面的预设数量个像素位置作为待预测图像中目标对象的位置。例如,有10个目标图像,10个目标图像中像素位置为(10,57)均被确认为属于目标对象,那么(10,57)的命中次数为10,9个目标图像中像素位置为(20,60)被确认为属于目标对象,还有1个目标图像中像素位置为(20,60)被确认为不属于目标对象,那么(20,60)的命中次数为9,以此类推,可以得到每个像素位置的命中次数,并将命中次数高的像素位置作为待预测图像中目标对象的位置。
相比与现有技术中的rgb数据,本公开通过spad相机采集的图像进行目标追踪,由于spad相机采集的图像的数据量很小,通常为1-bit,因此可以大大降低传输、处理过程中的数据量,能够降低数据的运算量和复杂度,并且降低数据占用的带宽,从而降低目标追踪的功耗和时延。
综上所述,本公开首先获取spad相机在当前时刻之前采集的至少一个目标图像,然后针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取孪生神经网络输出的该目标图像中目标对象的位置,其中,模板图像中包括目标对象,最后根据每个目标图像中目标对象的位置,确定待预测图像中目标对象的位置,待预测图像为spad相机在当前时刻采集的图像。本公开能够根据spad相机采集的图像进行目标追踪,降低了数据的运算量和复杂度,并且降低了数据占用的带宽,从而降低目标追踪的功耗和时延。
图2是根据一示例性实施例示出的另一种目标对象的追踪方法的流程图,如图2所示,步骤102的实现方式可以包括:
步骤1021,按照预设的检测区域对该目标图像进行划分,以得到该目标图像对应的检测图像。
步骤1022,将检测图像和模板图像输入孪生神经网络,以获取孪生神经网络输出的检测图像中目标对象的位置。
举例来说,为了进一步降低数据量,可以先对目标图像进行预处理,例如可以按照预设的检测区域,对目标图像进行划分,将目标图像中检测区域指示的部分作为检测图像。其中,检测区域可以理解为目标对象所在的区域范围,可以是预先指定的,也可以是根据上一时刻执行步骤101至步骤103时确定的目标对象的位置确定的。例如,目标图像的尺寸为5n*5n,检测图像的尺寸可以为2n*2n。之后,再将检测图像和模板图像输入孪生神经网络,以获取孪生神经网络输出的检测图像中目标对象的位置。
现有技术中,由于rgb色彩空间的数据通常是低帧率的数据,每一帧之间物体的形变、移动较大,在图像中选取的检测区域较大(通常为目标对象大小的16倍),相应的数据量也较大。而spad相机具备超高帧率(例如:97.7kfps)、动态范围高的特点,每一帧之间物体的形变、移动较小,因此,本公开实施例中设置的检测区域(例如可以是目标对象大小的4倍),小于根据rgb色彩空间的数据设置的检测区域。相应的,可以进一步降低传输、处理过程中的数据量,降低数据的运算量和复杂度,并且降低数据占用的带宽,从而降低目标追踪的功耗和时延。
图3是根据一示例性实施例示出的一种孪生神经网络的示意图,如图3所示,孪生神经网络中可以包括预设的卷积神经网络c、互相关卷积层d和互相关卷积运算单元d,相应的步骤1022可以包括:
步骤1)将检测图像输入孪生神经网络中的卷积神经网络,以得到卷积神经网络输出的第一高层特征和第一低层特征。
步骤2)将模板图像输入卷积神经网络,以得到卷积神经网络输出的第二高层特征和第二低层特征。
步骤3)将第一高层特征与第二高层特征输入互相关卷积层,以得到互相关卷积层输出的高层特征,并将第一低层特征与第二低层特征输入互相关卷积层,以得到互相关卷积层输出的低层特征。
步骤4)根据高层特征和低层特征确定检测图像中目标对象的位置。
示例的,将检测图像(图3中的s)输入卷积神经网络(英文:convolutionalneuralnetworks,缩写:cnn),得到检测图像的第一高层特征和第一低层特征。同时,将模板图像(图3中的t)输入卷积神经网络,得到模板图像的第二高层特征和第二低层特征。其中,卷积神经网络可以为预先训练好的,能够提取图像指定层的特征(包括高层特征和低层特征)的卷积神经网络。第一高层特征和第一低层特征分别反映了检测图像在不同空间分辨率下的特征数据,同样的,第二高层特征和第二低层特征分别反映了模板图像在不同空间分辨率下的特征数据。具体的,检测图像的第一高层特征经过的卷积层的层数,大于第一低层特征经过的卷积层的层数,相应的第一高层特征的特征维度高,空间分辨率低,第一低层特征的特征维度低,空间分辨率高。同样的,模板图像的第二高层特征经过的卷积层的层数,大于第二低层特征经过的卷积层的层数,相应的第二高层特征的特征维度高,空间分辨率低,第二低层特征的特征维度低,空间分辨率高。
举个例子,目标图像有2k-1个,相应的,检测图像也有2k-1个,检测图像的尺寸为2n*2n,模板图像的尺寸为n*n。卷积神经网络的通道数为c1,c1=2k-2。那么检测图像输入卷积神经网络的为2n*2n*c1的数据,相应的卷积神经网络输出的第一高层特征的大小为:(n/8)*(n/8)*c2,其中,(n/8)*(n/8)表示空间分辨率,c2表示特征维度。第一低层特征的大小为:(n/2)*(n/2)*(c2/8),其中,(n/2)*(n/2)表示空间分辨率,(c2/8)表示特征维度。模板图像输入卷积神经网络的为n*n*c1的数据,相应的卷积神经网络输出的第二高层特征的大小为:(n/16)*(n/16)*c2,其中,(n/16)*(n/16)表示空间分辨率,c2表示特征维度。第二低层特征的大小为:(n/4)*(n/4)*(c2/8),其中,(n/4)*(n/4)表示空间分辨率,(c2/8)表示特征维度。
然后,将第一高层特征与第二高层特征输入互相关卷积层,以得到互相关卷积层输出的高层特征,高层特征的层为:(n/16)*(n/16)*c2,同时将第一低层特征与第二低层特征输入互相关卷积层,以得到互相关卷积层输出的低层特征,低层特征的层为(n/2)*(n/2)*(c2/8)。其中,高层特征能够反映第一高层特征与第二高层特征的相似程度,低层特征能够反映第一低层特征与第二低层特征的相似程度。最后,根据高层特征和低层特征确定检测图像中目标对象的位置。相应的,高层特征的特征维度高,空间分辨率低,低层特征的特征维度低,空间分辨率高。
在具体的应用场景中,根据高层特征和低层特征确定检测图像中目标对象的位置的实现方式可以为:
首先,将高层特征和低层特征进行互相关卷积,以得到总特征。
之后,将总特征输入孪生神经网络中的softmax层,以得到softmax层输出的检测图像中每个像素点与目标对象的匹配度。
最后,根据检测图像中每个像素点与目标对象的匹配度,确定检测图像中目标对象的位置。
以图3所示的孪生神经网络来举例,孪生神经网络中还包括互相关卷积运算单元d,和空域的softmax层(未在图3中示出)。首先将步骤3)中确定的高层特征和低层特征输入到互相关卷积运算单元,进行互相关卷积运算,将互相关卷积的结果作为总特征。最后将总特征输入到softmax层,由softmax层对检测图像中的每个像素点进行分类,得到每个像素点与目标对象的匹配度,然后将匹配度大于预设匹配度阈值的像素点的像素位置作为检测图像中目标对象的位置。可以理解为,每个检测图像与模板图像输入孪生神经网络,得到的是尺寸为2n*2n的预测图,和预测图中目标对象所在的位置。
图4是根据一示例性实施例示出的另一种目标对象的追踪方法的流程图,如图4所示,步骤103可以包括:
步骤1031,判断每个目标图像中,第一像素位置是否属于目标对象的位置,第一像素位置为spad相机采集的图像中的任一像素位置。
步骤1032,若存在第一数量个目标图像中,第一像素位置属于目标对象的位置,且第一数量大于预设阈值,确定待预测图像中,第一像素位置属于目标对象的位置。
举个例子,目标图像有2k-1个,那么步骤102执行了2k-1次,得到2k-1个目标图像中目标对象的位置,其中,可以通过并行处理的方式,一次得到2k-1个目标图像中目标对象的位置。由于目标图像与待预测图像均为spad相机采集的图像,因此,目标图像与待预测图像的尺寸相同,那么目标图像包含的像素数目与待预测图像包含的像素数目相同。可以先判断每个目标图像中,每个像素位置是否属于目标对象的位置。针对第一像素位置,若2k-1个目标图像中,有第一数量个目标图像中第一像素位置属于目标对象的位置,并且第一数量大于预设阈值,那么可以确定待预测图像中,第一像素位置属于目标对象的位置。依次判断每个像素位置,即可以得到待预测图像中目标对象的位置。
需要说明的是,上述实施例中的孪生神经网络可以通过以下方式来训练:
获取样本输入集和样本输出集,样本输入集中的每个样本输入包括样本图像,样本输出集中包括与每个样本输入对应的样本输出,每个样本输出包括对应的样本图像中目标对象的位置,样本图像为spad相机采集的包含目标对象的图像。
将样本输入集作为孪生神经网络的输入,将样本输出集作为孪生神经网络的输出,以训练孪生神经网络。
在具体的应用场景中,可以在利用spad相机采集大量的包含目标对象的图像作为样本图像,然后将样本图像中目标对象的位置标注出来,作为对应的样本输出。对孪生神经网络训练时,可以将样本输入集作为孪生神经网络的输入,将样本输出集作为孪生神经网络的输出来训练,使得孪生神经网络在输入样本输入集时,孪生神经网络输出的样本图像中目标对象的位置,能够和样本输出集匹配。
综上所述,本公开首先获取spad相机在当前时刻之前采集的至少一个目标图像,然后针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取孪生神经网络输出的该目标图像中目标对象的位置,其中,模板图像中包括目标对象,最后根据每个目标图像中目标对象的位置,确定待预测图像中目标对象的位置,待预测图像为spad相机在当前时刻采集的图像。本公开能够根据spad相机采集的图像进行目标追踪,降低了数据的运算量和复杂度,并且降低了数据占用的带宽,从而降低目标追踪的功耗和时延。
图5是根据一示例性实施例示出的一种目标对象的追踪装置的框图,如图5所示,该装置200包括:
获取模块201,用于获取单光子雪崩二极管spad相机在当前时刻之前采集的至少一个目标图像。
处理模块202,用于针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取孪生神经网络输出的该目标图像中目标对象的位置,模板图像中包括目标对象。
确定模块203,用于根据每个目标图像中目标对象的位置,确定待预测图像中目标对象的位置,待预测图像为spad相机在当前时刻采集的图像。
图6是根据一示例性实施例示出的另一种目标对象的追踪装置的框图,如图6所示,处理模块202包括:
划分子模块2021,用于按照预设的检测区域对该目标图像进行划分,以得到该目标图像对应的检测图像。
处理子模块2022,用于将检测图像和模板图像输入孪生神经网络,以获取孪生神经网络输出的检测图像中目标对象的位置。
可选地,处理子模块2022用于执行以下步骤:
步骤1)将检测图像输入孪生神经网络中的卷积神经网络,以得到卷积神经网络输出的第一高层特征和第一低层特征。
步骤2)将模板图像输入卷积神经网络,以得到卷积神经网络输出的第二高层特征和第二低层特征。
步骤3)将第一高层特征与第二高层特征输入互相关卷积层,以得到互相关卷积层输出的高层特征,并将第一低层特征与第二低层特征输入互相关卷积层,以得到互相关卷积层输出的低层特征。
步骤4)根据高层特征和低层特征确定检测图像中目标对象的位置。
具体的,处理子模块2022在执行步骤4)时,可以通过如下方式:
首先,将高层特征和低层特征进行互相关卷积,以得到总特征。
之后,将总特征输入孪生神经网络中的softmax层,以得到softmax层输出的检测图像中每个像素点与目标对象的匹配度。
最后,根据检测图像中每个像素点与目标对象的匹配度,确定检测图像中目标对象的位置。
可选地,确定模块203用于执行以下步骤:
步骤5)判断每个目标图像中,第一像素位置是否属于目标对象的位置,第一像素位置为spad相机采集的图像中的任一像素位置。
步骤6)若存在第一数量个目标图像中,第一像素位置属于目标对象的位置,且第一数量大于预设阈值,确定待预测图像中,第一像素位置属于目标对象的位置。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
综上所述,本公开首先获取spad相机在当前时刻之前采集的至少一个目标图像,然后针对每个目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取孪生神经网络输出的该目标图像中目标对象的位置,其中,模板图像中包括目标对象,最后根据每个目标图像中目标对象的位置,确定待预测图像中目标对象的位置,待预测图像为spad相机在当前时刻采集的图像。本公开能够根据spad相机采集的图像进行目标追踪,降低了数据的运算量和复杂度,并且降低了数据占用的带宽,从而降低目标追踪的功耗和时延。
图7是根据一示例性实施例示出的一种电子设备300的框图。如图7所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(i/o)接口304,以及通信组件305中的一者或多者。
其中,处理器301用于控制该电子设备300的整体操作,以完成上述的目标对象的追踪方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(nearfieldcommunication,简称nfc),2g、3g或4g,或它们中的一种或几种的组合,因此相应的该通信组件305可以包括:wi-fi模块,蓝牙模块,nfc模块。
在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的目标对象的追踪方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的目标对象的追踪方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的目标对象的追踪方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由所述可编程的装置执行时用于执行上述目标对象的追踪方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
1.一种目标对象的追踪方法,其特征在于,所述方法包括:
获取单光子雪崩二极管spad相机在当前时刻之前采集的至少一个目标图像;
针对每个所述目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取所述孪生神经网络输出的该目标图像中目标对象的位置,所述模板图像中包括所述目标对象;
根据每个所述目标图像中所述目标对象的位置,确定待预测图像中所述目标对象的位置,所述待预测图像为所述spad相机在当前时刻采集的图像。
2.根据权利要求1所述的方法,其特征在于,所述将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取所述孪生神经网络输出的该目标图像中目标对象的位置,包括:
按照预设的检测区域对该目标图像进行划分,以得到该目标图像对应的检测图像;
将所述检测图像和所述模板图像输入所述孪生神经网络,以获取所述孪生神经网络输出的所述检测图像中所述目标对象的位置。
3.根据权利要求2所述的方法,其特征在于,所述将所述检测图像和所述模板图像输入所述孪生神经网络,以获取所述孪生神经网络输出的所述检测图像中所述目标对象的位置,包括:
将所述检测图像输入所述孪生神经网络中的卷积神经网络,以得到所述卷积神经网络输出的第一高层特征和第一低层特征;
将所述模板图像输入所述卷积神经网络,以得到所述卷积神经网络输出的第二高层特征和第二低层特征;
将所述第一高层特征与所述第二高层特征输入互相关卷积层,以得到所述互相关卷积层输出的高层特征,并将所述第一低层特征与所述第二低层特征输入所述互相关卷积层,以得到所述互相关卷积层输出的低层特征;
根据所述高层特征和所述低层特征确定所述检测图像中所述目标对象的位置。
4.根据权利要求3所述的方法,其特征在于,所述根据所述高层特征和所述低层特征确定所述检测图像中所述目标对象的位置,包括:
将所述高层特征和所述低层特征进行互相关卷积,以得到总特征;
将所述总特征输入所述孪生神经网络中的softmax层,以得到所述softmax层输出的所述检测图像中每个像素点与所述目标对象的匹配度;
根据所述检测图像中每个像素点与所述目标对象的匹配度,确定所述检测图像中所述目标对象的位置。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述根据每个所述目标图像中所述目标对象的位置,确定待预测图像中所述目标对象的位置,包括:
判断每个所述目标图像中,第一像素位置是否属于所述目标对象的位置,所述第一像素位置为所述spad相机采集的图像中的任一像素位置;
若存在第一数量个所述目标图像中,所述第一像素位置属于所述目标对象的位置,且所述第一数量大于预设阈值,确定所述待预测图像中,所述第一像素位置属于所述目标对象的位置。
6.一种目标对象的追踪装置,其特征在于,所述装置包括:
获取模块,用于获取单光子雪崩二极管spad相机在当前时刻之前采集的至少一个目标图像;
处理模块,用于针对每个所述目标图像,将该目标图像和预设的模板图像输入预先训练的孪生神经网络,以获取所述孪生神经网络输出的该目标图像中目标对象的位置,所述模板图像中包括所述目标对象;
确定模块,用于根据每个所述目标图像中所述目标对象的位置,确定待预测图像中所述目标对象的位置,所述待预测图像为所述spad相机在当前时刻采集的图像。
7.根据权利要求6所述的装置,其特征在于,所述处理模块包括:
划分子模块,用于按照预设的检测区域对该目标图像进行划分,以得到该目标图像对应的检测图像;
处理子模块,用于将所述检测图像和所述模板图像输入所述孪生神经网络,以获取所述孪生神经网络输出的所述检测图像中所述目标对象的位置。
8.根据权利要求7所述的装置,其特征在于,所述处理子模块用于:
将所述检测图像输入所述孪生神经网络中的卷积神经网络,以得到所述卷积神经网络输出的第一高层特征和第一低层特征;
将所述模板图像输入所述卷积神经网络,以得到所述卷积神经网络输出的第二高层特征和第二低层特征;
将所述第一高层特征与所述第二高层特征输入互相关卷积层,以得到所述互相关卷积层输出的高层特征,并将所述第一低层特征与所述第二低层特征输入所述互相关卷积层,以得到所述互相关卷积层输出的低层特征;
根据所述高层特征和所述低层特征确定所述检测图像中所述目标对象的位置。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-5中任一项所述方法的步骤。
技术总结