目标跟踪方法、装置、设备及存储介质与流程

文档序号:20959498发布日期:2020-06-02 20:36阅读:203来源:国知局
目标跟踪方法、装置、设备及存储介质与流程

本申请属于目标跟踪技术领域,尤其涉及目标跟踪方法、装置、设备及存储介质。



背景技术:

目前,对于连续的视频帧图像,要持续追踪同一个目标在不同视频帧图像中的位置时。因存在视频帧图像中目标与其他物体的图像背景相似难以区分,存在根据根据上一帧图像中目标的目标特征在下一帧图像中找到多个相似目标的目标位置,最后在多个目标位置中也并未准确确定目标在下一帧图像中的具体位置。

综上所述,目前存在在连续视频帧图像中追踪同一目标物体时,其准确性低的问题。



技术实现要素:

本申请实施例提供了目标跟踪方法、装置、设备及存储介质,可以解决目前存在在连续视频帧图像中追踪同一目标物体时,其准确性低的问题。

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

获取上一帧输入图像中目标的初始位置;

将所述初始位置输入第一模型中,得到目标在当前输入图像中的各个预测位置;

获取所述当前输入图像中各个所述预测位置对应的预测图像,并将各个所述预测图像输入至第二模型中,得到各个所述预测图像与所述目标的分类结果;

根据所述分类结果确定所述目标在所述当前输入图像中的目标位置。

在一实施例中,所述将所述初始位置输入第一模型中,得到目标在当前输入图像中的各个预测位置,包括:

获取所述目标在所述上一帧输入图像中的长度和宽度;

根据所述长度和宽度生成目标矩阵;

根据所述目标矩阵通过高斯分布获取所述目标在所述当前输入图像中的各个预测位置。

在一实施例中,所述第二模型在输入层与输出层之间包括多层网络结构,其中,第一层包括第一卷积层、第一激活层、第一局部归一化层、第一最大池化层;第二层包括第二卷积层、第二激活层、第二批量归一化层和第二最大池化层;第三层包括第三卷积层、第三激活层、通道注意力层;第四层包括第一全连接层、第四激活层;第五层包括随机失活层、第二全连接层、第五激活层;第六层为分类层。

在一实施例中,所述通道注意力层的处理过程包括:

获取所述第二激活层输出的第二输入特征;

对所述第二输入特征执行第一处理,得到第一输出特征,同时对所述第二输入特征执行第二处理得到第二输出特征;

将所述第一输出特征与所述第二输出特征合并生成第三输出特征;

将所述第三输出特征结合所述第二输入特征生成目标特征。

在一实施例中,所述第二模型的训练步骤包括:

获取第一训练数据,所述第一训练数据包括已知类别的输入图像和所述输入图像的第一输入特征;

将所述第一输入特征输入初始第二模型中进行传播,得到所述输入图像的预测类别;

根据所述预测类别和所述已知类别生成第一预测损失,根据所述第一预测损失迭代更新所述初始第二模型的模型参数;

若迭代更新过程中所述第一预测损失未收敛,则调整所述初始第二模型的模型参数,并返回执行将所述第一训练数据输入初始第二模型进行训练处理,得到所述预测类别和所述已知类别生成预测损失的步骤以及后续步骤;

若迭代更新过程中所述第一预测损失收敛,则结束训练所述初始第二模型,并将当前所述初始第二模型作为已训练的第二模型。

在一实施例中,在将当前所述初始第二模型作为已训练的第二模型之后,还包括:

获取所述第二模型的网络结构及其模型参数;

获取第二训练数据,所述第二训练数据包括所述上一帧输入图像中目标的初始位置,和当前输入图像中所述目标的目标特征;

将所述初始位置输入第一模型中,得到目标在所述当前输入图像中的各个预测位置;

获取所述当前输入图像中各个所述预测位置对应的预测图像,和各个所述预测图像的图像特征;

将各个所述图像特征输入至第二模型的网络结构中,得到各个所述预测图像与目标的预测结果;

获取最优预测结果对应的预测图像与所述目标生成第二预测损失,根据所述第二预测损失再次迭代更新所述第二模型的模型参数,若迭代更新过程中所述第二预测损失收敛,则结束训练所述第二模型。

在一实施例中,所述第二模型包括至少一个全连接层;

所述根据所述第二预测损失再次迭代更新所述第二模型的模型参数,包括:

更新所述第二模型中所有所述全连接层的模型参数,保留其余层的模型参数不变。

第二方面,本申请实施例提供了一种目标跟踪装置,包括:

第一获取模块,用于获取上一帧输入图像中目标的初始位置;

第一输入模块,用于将所述初始位置输入第一模型中,得到目标在当前输入图像中的多个预测位置;

第一处理模块,用于获取所述当前输入图像中各个所述预测位置对应的预测图像,并输入至第二模型中,得到各个预测图像与所述目标的分类结果;

确定模块,用于根据所述分类结果确定所述目标在所述当前输入图像中的目标位置。

第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的目标跟踪方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行上述第一方面中任一项所述的目标跟踪方法。

第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的目标跟踪方法。

可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

本申请实施例与现有技术相比存在的有益效果是:通过上一帧输入图像中目标的位置,根据第一模型预估当前帧输入图像中目标可能存在的多个位置,去除目标在当前帧输入图像中其余与目标的图像背景相似的位置,并将对多个位置对应输入图像中的预测图像输入第二模型中,根据已训练的第二模型得到各个预测图像与目标的分类结果来确定最优的预测图像,进而确定当前最优的预测图像即为目标在当前帧输入图像的目标位置,提高连续视频帧图像中追踪同一目标物体时的准确性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的目标跟踪方法的一种实现流程示意图;

图2是本申请实施例提供的目标跟踪方法的又一种实现流程示意图;

图3是本申请实施例提供的目标跟踪方法中的通道注意力层的实现流程示意图;

图4是本申请实施例提供的目标跟踪方法的另一种实现流程示意图;

图5是本申请实施例提供的目标跟踪方法的再一种实现流程示意图;

图6是本申请实施例提供的目标跟踪置的一种结构示意图;

图7是本申请实施例提供的终端设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

本申请实施例提供的目标跟踪方法可以应用于平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、上网本、个人数字助理(personaldigitalassistant,pda)等终端设备上,本申请实施例对终端设备的具体类型不作任何限制。

请参阅图1,图1是本申请实施例提供的目标跟踪方法的流程示意图;详述如下:

s101、获取上一帧输入图像中目标的初始位置。

在应用中,终端设备内部可预先存储有连续的视频帧图像,或者,通过网络接收服务器发送的连续的视频帧图像。上述目标可以为视频帧图像中需要跟踪的目标对象,获取方式包括但不限于用户在终端设备中输入目标的初始位置,或终端设备根据预设规则获取目标的初始位置。其中,预设规则可以为终端设备预先存储有用户输入的目标特征和目标可能出现的图像区域,而后获取输入图像中各个区域的特征与目标特征逐个进行比对,获取目标的初始位置对此不作限定。

在应用中,上述目标的初始位置可以具体以二维坐标进行表示,如以输入图像中的中心点为坐标原点构建二维空间坐标系,并以此表示目标的初始位置。其中,若目标在输入图像中占用一片区域,可将该区域图像的中心点作为目标的初始位置。

s102、将所述初始位置输入第一模型中,得到目标在当前输入图像中的各个预测位置。

在应用中,上述第一模型为高斯分布函数,组成的概率模型。一个高斯分布函数模型通过一个高斯过程引入潜在变量(初始位置)来预测目标在下一帧图像的分布情况。在训练高斯分布函数时,模型训练的方法可采用最大似然估计法,来训练高斯分布函数中的超参数,对此不作限定。其中,一个高斯分布函数具有一个均值函数和一个协方差函数。为了减少高斯分布函数中的数据变量,避免训练过程中的维度爆炸,本实施例中限定均值函数对应的均值为上一帧目标的初始位置,其协方差函数为上一帧初始位置的对角矩阵,具体以目标在上一帧输入图像中所占区域的长和宽进行确定,例如(0.09a2,0.09b2,0.25),其中a为目标在上一帧输入图像中所占区域的长度,b为目标在上一帧输入图像中所占区域的宽度。其中,根据初始位置得到预测位置后,其预测位置为坐标点,则预测位置的区域可以坐标点为中心,目标所占区域的长度可以与上一帧目标所占区域的长度相等或不等,目标所占区域的宽度也可以与上一帧目标所占区域的宽度相等或不等,对此不作限定。

s103、获取所述当前输入图像中各个所述预测位置对应的预测图像,并将各个所述预测图像输入至第二模型中,得到各个所述预测图像与所述目标的分类结果。

在应用中,上述预测图像为预测位置区域的图像。在根据上一帧目标的初始位置得到当前帧输入图像的目标预测位置后,获取当前位置的区域内的图像,并通过第二模型依次判断预测图像与目标是否一致,确定分类结果,其中,分类结果可为各个预测图形与目标的相似度。上述目标可以为第一帧输入图像中的目标,也可以为上一帧输入图像中的模板,根据目标的目标特征与输入图像的目标特征进行比对得到分类结果。

示例性的,上述目标为上一帧输入图像的目标,终端设备获取上一帧目标的目标特征,其中目标特征可以为64位的哈希序列码进行表示,终端设备并根据已训练好的第二模型计算对各预测图像进行处理,得到各个预测图像的图像特征,其也可以为64位的哈希序列码,并根据预测图像的图像特征与目标特征进行匹配,根据哈希序列码得到匹配度最高的预测图像作为分类结果,如判断相同位置下哈希序列码相同的个数与哈希序列码总个数的比值作为匹配度。

s104、根据所述分类结果确定所述目标在所述当前输入图像中的目标位置。

在应用中,上述分类结果为各个预测图形与目标的相似度,因此,可根据多个预测图像与目标的相似度,获取最优相似度对应的预测图像,并将该预测图像作为目标在当前输入图像中的目标位置。

在本实施例中,过上一帧输入图像中目标的位置,根据第一模型预估当前帧输入图像中目标可能存在的多个位置,去除目标在当前帧输入图像中其余与目标的图像背景相似的位置,并将对多个位置对应输入图像中的预测图像输入第二模型中,根据已训练的第二模型得到各个预测图像与目标的分类结果来确定最优的预测图像,进而确定当前最优的预测图像即为目标在当前帧输入图像的目标位置,提高连续视频帧图像中追踪同一目标物体时的准确性。

参照图2,在一实施例中,s102包括:

s201、获取所述目标在所述上一帧输入图像中的长度和宽度。

在应用中,终端设备在上一帧输入图像获取到目标的初始位置,其初始位置应当包括目标在上一帧输入图像中所占区域的长度和所占区域的宽度,并包括可以代表目标所占区域的初始位置点。其中,根据上一帧目标所占区域的长度和宽度可以构建对角矩阵,进而在第一模型(高斯分布函数)的预测过程中,预测出的当前输入图像的目标位置所占区域的长度和宽度也将对应发生改变。

s202、根据所述长度和宽度生成目标矩阵。

在应用中,上述目标矩阵为根据上一帧输入图像获取到目标所占区域的长度和宽度构建的对角矩阵,即(0.09a2,0.09b2,0.25),在每帧输入图像中目标所占区域的长度和宽度发生变化时,其对角矩阵也将发生变化。示例性的,根据上一帧输入图像中的目标位置、所占区域的长度和宽度输入第一模型后,其可在当前输入图像中预测出n=256个预测位置,其且当前输入图像中每个预测位置的长度和宽度可以通过乘以1.05si进行变化,其中si表示第i帧输入图像中目标所占区域长度和宽度,对此不作限定。

s203、根据所述目标矩阵通过高斯分布获取所述目标在所述当前输入图像中的各个预测位置。

在应用中,上述目标矩阵即为对角矩阵,上述高斯分布即为以训练好的第一模型。其获取当前输入图像中各个预测位置的步骤与s102一致,对此不做详细描述。

在本实施例中,通过上一帧输入图像的目标位置、所占区域的长度和所占区域的宽度,并结合高斯分布函数来预测目标在当前输入图像中的预测位置,使得终端设备可去除目标在当前帧输入图像中其余与目标的图像背景相似的位置,保留目标在当前输入图像中最大可能存在的预测位置,可提高目标跟踪的准确性,并减少目标在当前输入图像中的匹配时间。

在一实施例中,所述第二模型在输入层与输出层之间包括多层网络结构,其中,第一层包括第一卷积层、第一激活层、第一局部归一化层、第一最大池化层;第二层包括第二卷积层、第二激活层、第二批量归一化层和第二最大池化层;第三层包括第三卷积层、第三激活层、通道注意力层;第四层包括第一全连接层、第四激活层;第五层包括随机失活层、第二全连接层、第五激活层;第六层为分类层。

在应用中,上述第二模型具体为通道注意力可变形跟踪器模型,其目的在于通过训练通道注意力可变形跟踪器模型,来根据当前输入图像的图像特征,判断当前输入图像属于何种已知的类别。即可认为根据上一帧输入图像目标的目标特征,与当前输入图像中预测位置的图像特征进行比对分类,判断上一帧的目标特征与哪个预测位置的图像特征更为接近相似。

在具体应用中,终端设备在输入层中输入像素大小为107×107×3的图像,其中,为107×107输入图像大小,3为输入图像的通道,分别为红色(red)、绿色(green)、蓝色(blue)三个通道,即rgb。在第一层卷积层中,对107×107×3的图像进行卷积操作,其卷积核可以为7×7,卷积步长为2,之后生成96维度的特征图,之后将96维的特征图输入激活层,其中,激活函数为relu函数,用于将特征图映射到高维的非线性区间进行解释说明,起到保留特征图中主要的特征,同时减少参数的作用,防止第二模型训练时的过拟合问题。其中,第一局部归一化层为局部响应归一化,用于第二模型在进行神经网络反向传播过程中,因每一层的梯度的计算都要用本层的数据(特征图)乘以上层传过来的梯度得到本层的梯度。因此,可将本层的数据归一化限制在均值为零,那么在后续相乘上层传过来的梯度的时便不会发生梯度爆炸。第一最大池化层用于选取局部特征图中值最大的特征组成新的特征图,以减少当前特征提取的误差。其中,每个特征图均为107×107,共有96维,可在每个特征图以3×3大小的局部特征图中选取值最大的特征,其局部特征图的选取步长为2,组成新的51×51×96特征图作为输出。对应的,在第二层中,将第一层输出的51×51×96特征图作为输入,对其进行卷积操作,其卷积核可以为5×5,卷积步长为2,之后生成256维度的特征图;之后将256维的特征图输入激活层,其中,激活函数同样为relu函数;而后对其进行第二批量归一化,其中,第二批量归一化为组归一化,用于将256维的特征图进行分组,每组包含一定维数的特征图进行处理,其总维数不变,用于均衡减少各组当前特征提取带来的误差;之后对输入的特征图再次输入第二最大池化层进行最大池化处理,输出11×11×256的特征图,对此不做详细描述。在第三层中,同样的将第二层输出的11×11×256特征图作为输入,对其进行卷积操作,其卷积核可以为3×3,卷积步长为1,之后生成512维的特征图;之后将512维的特征图输入激活层得到512×3×3,其中,激活函数同样为relu函数;此时将得到的特征图输入图通道注意力层,用于对当前特征图对应的图像进行色差、锐化、亮度等增强处理,使得处理后得到的特征图更易于表达输入图像的特征,输出4608×1维的特征图。第四层包括第一全连接层和第四激活层,用于将4608×1维的特征图压缩变换成512×1维的特征图。而第五层是随机失活层,防止过拟合。最后一层是降到2维,作为二分类器。第四层是全连接层及一个激活层维度由4608变换成512,而第五层是随机失活层,用于随机将部分隐含层的权重归零,防止过拟合,之后再次经过第二全连接层和第五激活层,得到处理后的512×1维的特征图。最后一层为分类层,其内部包括全连接层,用于把512×1维的特征整合到一起输出一个值,即将512×1维的特征图降到2×1维的特征图,即2×1的矩阵,根据当前矩阵计算得到数值即为对当前图像进行分类的概率。例如,将其中的某几个特征求和,输出最后的2×1的矩阵,每个数代表了各个类别的概率(或评分),将概率最高的类别作为第二模型分类的结果。

在本实施例中,通过在第二模型中的多层网络结构中设置多个归一化层和最大池化层,对输入图像的图像特征进行归一化处理和最大池化处理,使训练好的第二模型减少根据提取图像特征进行分类判断时的误差。

参照图3,在一实施例中,所述通道注意力层的处理过程包括:

s301、获取所述第二激活层输出的第二输入特征。

在应用中,上述第二输入特征由当前输入图像经过第二模型中的第一层、第二层和第三层中的第三卷积层和第三激活层处理得到的,即上述的512×3×3维的特征图。

s302、对所述第二输入特征执行第一处理,得到第一输出特征,同时对所述第二输入特征执行第二处理得到第二输出特征。

在应用中,上述第一处理为均池化处理,用于对512×3×3维的特征图进行均池化操作,输出512×1的特征图。具体的,对于512个3×3的特征图,将每个3×3特征图的数值进行叠加求平均处理,得到该3×3特征图的一维特征值,对所有特征图均进行均池化处理即可得到512个一维特征值组成的特征图,即第一输出特征。

在应用中,上述第二处理为最大池化处理,用于对512×3×3维的特征图进行均池化操作,输出512×1的特征图。具体的,对于512个3×3的特征图,在每个3×3特征图的数值中,挑选出最大数值作为该3×3特征图的一维特征值,对所有特征图均进行最大池化处理即可得到512个一维特征值组成的特征图,即第二输出特征。在应用中,上述第一处理和第二处理均是对第二输入特征进行的处理操作,且为并行操作,即同时生成第一输出特征和第二输出特征。

s303、将所述第一输出特征与所述第二输出特征合并生成第三输出特征。

在应用中,对于第一输出特征中512个一维特征值和第二输出特征中512个一维特征值,可以将对应的一维特征值进行叠加处理,合并生成新的512个一维特征值,组成新的第三输出特征。

s304、将所述第三输出特征结合所述第二输入特征生成目标特征。

在应用中,上述目标特征为经过通道注意力层处理后得到的特征,输入图像的图像特征在经过通道注意力层的处理后,可对输入图像中的图像特征进行色差、锐化、亮度等相应特征的增强,使生成的目标特征更能够代表输入图像的图像特征。上述将第三输出特征结合第二输入特征,可以为将第三输出特征与第二输入特征进行矩阵点乘操作,计算出特征中的自相关性,对此不作限定。示例性的,若第二输入特征f∈rc×h×w;通道注意力层依次计算出一维的第一输出特征和第二输出特征为mc∈rc×1×1,目标特征为其中为逐元素点乘,f*为计算的输出,即目标特征,mc(f)为第一输出特征与第二输出特征合并生成的第三输出特征。均池化处理和最大池化处理可以聚合每个特征图之间的空间信息,进而生成更能够代表输入图像的目标特征。

在应用中,通道注意力层还包括,第三全连接层、第六激活层、第四全连接层、第七激活层,其中,第三全连接层用于对生成的第三输出特征进行压缩,得到压缩特征图。例如第三输出特征为512×1的特征图,在经过压缩处理后输出为32×1特征图,而后经过第六激活层处理防止过拟合,其激活函数为线性整流函数,而后经过第四全连接层进行重构处理,即将32×1特征图重构回512×1的特征图,而后输入第七激活层中进行处理保留主要的特征参数。

在本实施例中,通过对输入注意力层的特征图进行第一处理得到第一输出特征,和同时进行第二处理得到第二输出特征,并将第一输出特征与第二输出特征合并生成第三输出特征,再结合第二输入特征生成目标特征,以达到对当前特征图对应的图像进行色差、锐化、亮度等增强处理,使得处理后得到的特征图更易于表达输入图像的特征。

参照图3,在一实施例中,所述第二模型的训练步骤包括:

s401、获取第一训练数据,所述第一训练数据包括已知类别的输入图像和所述输入图像的第一输入特征。

在应用中,上述第一训练数据包括已知类别的输入图像和输入图像的第一输入特征。其中,第一训练数据在实际训练过程包括正样本训练数据和负样本训练数据,其输入图像的类别和输入图像的第一输入特征均作为已知的第一训练数据输入至第二模型进行训练。

s402、将所述第一输入特征输入初始第二模型中进行传播,得到所述输入图像的预测类别。

在应用中,上述传播为将第一输入特征依次经过初始第二模型的输入层、中间的多层网络结构和输出层进行处理,最后得到的结果,为一次传播,在一次传播过程结束后,可以得到某个输入图像的预测类别。即通过设定初始第二模型中模型参数的初始值来初始化初始第二模型,对初始第二模型中的每层网络结构之间的学习参数和偏置参数赋予随机值,而后输入第一训练数据至输入层,根据各层网络结构对应的学习参数进行计算得到输出层输出当前输入图像的预测类别。

s403、根据所述预测类别和所述已知类别生成第一预测损失,根据所述第一预测损失迭代更新所述初始第二模型的模型参数。

在应用中,可根据上述得到的预测类别和已知类别求出输出层的第一预测损失,基于第一预测损失进行反向传播更新初始第二模型中模型参数的初始值。其中,上述第一预测损失公式可为:losscls=(y′i-yi)2,其中,m为已知分类结果的输入图像的数量,y'i为第i个输入图像的预测类别,yi为的第i个输入图像的的已知类别。

s404、若迭代更新过程中所述第一预测损失未收敛,则调整所述初始第二模型的模型参数,并返回执行将所述第一训练数据输入初始第二模型进行训练处理,得到所述预测类别和所述已知类别生成预测损失的步骤以及后续步骤。

s405、若迭代更新过程中所述第一预测损失收敛,则结束训练所述初始第二模型,并将当前所述初始第二模型作为已训练的第二模型。

在应用中,上述迭代更新过程中可以根据得到的第一预测损失判定初始第二模型的收敛情况。具体的,当第一预测损失小于预先设置的某个数值,或经过一定次数后,得到的数值均保持不变,则判断初始第二模型得到了收敛。否则,将训练得到的新模型参数更新至初始第二模型中原本的模型参数,再次输入第一训练数据进行训练,重复上述训练步骤s402-s405。其中,每次迭代过程中进行传播训练时都会更新初始第二模型中原本的模型参数,即为迭代更新。

在本实施例中,通过初始化第二模型,将已知类别的输入图像和输入图像的第一输入特征进行训练,得到第一预测损失,再根据第一预测损失更新第二模型,以使训练好的第二模型中的图像分类的准确度得到提高。

参照图5,在一实施例中,在将当前所述初始第二模型作为已训练的第二模型之后,还包括:

s501、获取所述第二模型的网络结构及其模型参数。

在应用中,上述已获取的第二模型为根据整张输入图像和输入图像的图像特征进行训练得到,其可适用于对连续视频帧图像的目标跟踪。具体的,在根据上一帧输入图像中目标的初始位置预测出目标在当前输入图像中的各个预测位置后,可使用已训练好的第二模型对各个预测位置对应的预测图像进行分类比对,获取预测图像与目标的分类结果,来实现对连续视频帧图像的目标跟踪。然而,第二模型是根据整张输入图像的第一训练数据进行训练得到,因此,还需对当前第二模型中的模型参数进行微处理,再次对模型进行训练。上述第二模型的网络结构即为上述以说明的六层网络结构,其模型参数包括但不限于各层网络结构中的学习参数(权重)、偏置参数等,对此不作限定。

s502、获取第二训练数据,所述第二训练数据包括所述上一帧输入图像中目标的初始位置,和当前输入图像中所述目标的目标特征。

s503、将所述初始位置输入第一模型中,得到目标在所述当前输入图像中的各个预测位置。

s504、获取所述当前输入图像中各个所述预测位置对应的预测图像,和各个所述预测图像的图像特征。

在应用中,上述第二训练数据包括上一帧输入图像中目标的初始位置,和当前输入图像中所述目标的目标特征。其中,上一帧输入图像中目标的初始位置用于输入第一模型中,使第一模型预测出当前输入图像中的各个预测位置,其与s201-s203的内容相同,对此不做详细描述。

s505、将各个所述图像特征输入至第二模型的网络结构中,得到各个所述预测图像与目标的预测结果。

s506、获取最优预测结果对应的预测图像与所述目标生成第二预测损失,根据所述第二预测损失再次迭代更新所述第二模型的模型参数,若迭代更新过程中所述第二预测损失收敛,则结束训练所述第二模型。

在应用中,上述当前输入图像中目标的目标特征用于与预测图像对应的图像特征进行比对,获取第二预测结果,根据第二预测结果与目标对应的真实结果来生成第二预测损失,并根据第二预测损失迭代更新第二模型的模型参数。

在具体应用中,第二训练数据可以使用视觉对象识别软件研究的大型可视化数据库(imagenet),其中,第二模型中普通卷积层的参数设置为0.0001,通道注意力层的全连接参数的学习率可设置为0.004,其余全连接层的学习率可设置为0.001,迭代40次。第二训练数据中每一小批次包括正样本m+(=32)和负样本用于参与训练。当模型对预测图像的评分(预测结果)大于预设阈值时,则停止更新并保存当前模型及其模型参数。示例性的,若预测类别包括“猫”、“狗”和“老虎”,将其中一个图像特征输入第二模型后计算得到的预测类别为“猫”的概率(a1=0.77)、预测类别为“狗(a2=0.13)”和预测类别为“老虎(a3=0.1)”。之后第二模型选取三个a中的最大值对应的类别作为最终的预测类别,即a1对应的“猫”的类别,并将a1对应“猫”的概率(a1=0.77)作为当前预测图像与目标的预测结果。依此,可获得各个预测图像与目标的预测结果,并挑选出最优预测结果,与预先设置的当前目标的真实结果y=1计算平方差,得到第二预测损失,根据第二预测损失再次迭代更新第二模型的模型参数。其中,停止迭代更新第二模型的模型参数的过程与上述s405的步骤可一致或不一致,对此不做详细描述。在应用中,上述第二预测损失若为收敛,则重复s502-s506的步骤,对此不做详细描述。

在本实施例中,通过将第一模型和第二模型进行结合,使用第一模型预测目标在当前输入图像中的各个预测位置,使用第二模型对各个预测位置的预测图像与目标进行比对,获取最优预测图像,并根据最优预测图像的预测结果与目标的真实结果进行计算,生成第二预测损失来对第二模型的模型参数再次进行调整,进一步地通过第一模型和第二模型来实现对连续视频帧图像中目标跟踪的准确度

在一实施例中,所述第二模型包括至少一个全连接层;所述根据所述第二预测损失再次迭代更新所述第二模型的模型参数,包括:

更新所述第二模型中所有所述全连接层的模型参数,保留其余层的模型参数不变。

在应用中,上述第二模型即为包括输入层、输出层及其之间的六层网络结构。上述六层网络结构中,每层网络结构均有对应的模型参数。例如,设定第j层网络结构的模型参数为wj,w1至w5为通过s401-s405加载训练好的模型参数,w6为通过随机初始化得到学习参数。在训练过程中,w1至w3中各模型参数是固定不变的,w4至w6中各全连接层的模型参数是需要根据第二预测损失进行更新,可以减少第二模型中w1至w3中各模型参数的计算量,使第二模型的更新更具效率,而且可避免s401-s405训练带来的过拟合问题。

在本实施例中,通过对第二模型中的全连接层的模型参数进行更新,使得第二模型的中的计算更具效率,而且也避免了第一次训练带来的过拟合问题,使训练后的第二模型对图像的识别准确度更高。

如图6所示,本实施例还提供一种目标跟踪装置100,包括:

第一获取模块10,用于获取上一帧输入图像中目标的初始位置。

第一输入模块20,用于将所述初始位置输入第一模型中,得到目标在当前输入图像中的多个预测位置。

第一处理模块30,用于获取所述当前输入图像中各个所述预测位置对应的预测图像,并输入至第二模型中,得到各个预测图像与所述目标的分类结果。

确定模块40,用于根据所述分类结果确定所述目标在所述当前输入图像中的目标位置。

在一实施例中,第一输入模块10还用于:

获取所述目标在所述上一帧输入图像中的长度和宽度;

根据所述长度和宽度生成目标矩阵;

根据所述目标矩阵通过高斯分布获取所述目标在所述当前输入图像中的各个预测位置。

在一实施例中,第一输入模块10还用于:

获取所述目标在所述上一帧输入图像中的长度和宽度;

根据所述长度和宽度生成目标矩阵;

根据所述目标矩阵通过高斯分布获取所述目标在所述当前输入图像中的各个预测位置。

在一实施例中,所述第二模型在输入层与输出层之间包括多层网络结构,其中,第一层包括第一卷积层、第一激活层、第一局部归一化层、第一最大池化层;第二层包括第二卷积层、第二激活层、第二批量归一化层和第二最大池化层;第三层包括第三卷积层、第三激活层、通道注意力层;第四层包括第一全连接层、第四激活层;第五层包括随机失活层、第二全连接层、第五激活层;第六层为分类层。

在一实施例中,所述目标跟踪装置100还可用于通道注意力层的处理过程,包括:

第二获取模块,用于获取所述第二激活层输出的第二输入特征。

第二处理模块,用于对所述第二输入特征执行第一处理,得到第一输出特征,同时对所述第二输入特征执行第二处理得到第二输出特征。

第一生成模块,用于将所述第一输出特征与所述第二输出特征合并生成第三输出特征。

第二生成模块,用于将所述第三输出特征结合所述第二输入特征生成目标特征。

在一实施例中,所述目标跟踪装置100还可用于进行第二模型的训练,包括:

第三获取模块,用于获取第一训练数据,所述第一训练数据包括已知类别的输入图像和所述输入图像的第一输入特征。

第二输入模块,用于将所述第一输入特征输入初始第二模型中进行传播,得到所述输入图像的预测类别。

第一更新模块,用于根据所述预测类别和所述已知类别生成第一预测损失,根据所述第一预测损失迭代更新所述初始第二模型的模型参数。

第一收敛模块,用于若迭代更新过程中所述第一预测损失未收敛,则调整所述初始第二模型的模型参数,并返回执行将所述第一训练数据输入初始第二模型进行训练处理,得到所述预测类别和所述已知类别生成预测损失的步骤以及后续步骤。

第二收敛模块,用于若迭代更新过程中所述第一预测损失收敛,则结束训练所述初始第二模型,并将当前所述初始第二模型作为已训练的第二模型。

在一实施例中,所述目标跟踪装置100还包括:

第四获取模块,用于获取所述第二模型的网络结构及其模型参数。

第五获取模块,用于获取第二训练数据,所述第二训练数据包括所述上一帧输入图像中目标的初始位置,和当前输入图像中所述目标的目标特征。

第三输入模块,用于将所述初始位置输入第一模型中,得到目标在所述当前输入图像中的各个预测位置。

第六获取模块,用于获取所述当前输入图像中各个所述预测位置对应的预测图像,和各个所述预测图像的图像特征。

第四输入模块,用于将各个所述图像特征输入至第二模型的网络结构中,得到各个所述预测图像与目标的预测结果。

第三处理模块,用于获取最优预测结果对应的预测图像与所述目标生成第二预测损失,根据所述第二预测损失再次迭代更新所述第二模型的模型参数,若迭代更新过程中所述第二预测损失收敛,则结束训练所述第二模型。

在一实施例中,所述第二模型包括至少一个全连接层;所述目标跟踪装置100还包括:

第二更新模块,用于更新所述第二模型中所有所述全连接层的模型参数,保留其余层的模型参数不变。

本申请实施例还提供了一种终端设备,该终端设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时可实现上述各个方法实施例中的步骤。

图7是本申请一实施例提供的终端设备80的示意图。如图7所示,该实施例的终端设备80包括:处理器803、存储器801以及存储在所述存储器801中并可在所述处理器803上运行的计算机程序802。所述处理器803执行所述计算机程序802时实现上述各个方法实施例中的步骤,例如图1所示的步骤s101至s104。或者,所述处理器803执行所述计算机程序802时实现上述各装置实施例中各模块/单元的功能。

示例性的,所述计算机程序802可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器801中,并由所述处理器803执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序802在所述终端设备80中的执行过程。例如,所述计算机程序802可以被分割成第一获取模块、第一输入模块、第一处理模块和确定模块,各模块具体功能如下:

第一获取模块,用于获取上一帧输入图像中目标的初始位置。

第一输入模块,用于将所述初始位置输入第一模型中,得到目标在当前输入图像中的多个预测位置。

第一处理模块,用于获取所述当前输入图像中各个所述预测位置对应的预测图像,并输入至第二模型中,得到各个预测图像与所述目标的分类结果。

确定模块,用于根据所述分类结果确定所述目标在所述当前输入图像中的目标位置。

所述终端设备80可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器803、存储器801。本领域技术人员可以理解,图7仅仅是终端设备80的示例,并不构成对终端设备80的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。

所称处理器803可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述存储器801可以是所述终端设备80的内部存储单元,例如终端设备80的硬盘或内存。所述存储器801也可以是所述终端设备80的外部存储设备,例如所述终端设备80上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。在一个实施例中,所述存储器801还可以既包括所述终端设备80的内部存储单元也包括外部存储设备。所述存储器801用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器801还可以用于暂时地存储已经输出或者将要输出的数据。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

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