目标检测方法、装置、计算机设备和存储介质与流程

文档序号:22615081发布日期:2020-10-23 19:14阅读:125来源:国知局
目标检测方法、装置、计算机设备和存储介质与流程

本申请涉及人工智能技术领域,特别是涉及一种目标检测方法、装置、计算机设备和存储介质。



背景技术:

基于深度学习的目标检测技术在很多任务中取得了很好的效果,但其需要大量的训练数据做支撑,同时需要对每一张图片中的目标进行人工标注。

传统地,当出现一个新的检测任务,而新的检测目标是原有标注数据中没有见过的类别,那么又需要耗费大量的人力对新目标进行标注,而包含新目标的数据少之又少,难以训练出有效的检测模型,从而使得新目标的检测准确性较低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够不依赖于深度学习模型,且提高新目标的检测准确性的目标检测方法、装置、计算机设备和存储介质。

一种目标检测方法,所述方法包括:

获取目标图像以及模板图像;

分别提取所述目标图像以及所述模板图像各自对应的自有特征信息,所述自有特征信息用于表征对应的所述目标图像或模板图像的自有特征信息;

根据所述目标图像的自有特征信息以及所述模板图像的自有特征信息,得到所述目标图像和所述模板图像各自对应的匹配特征图,其中,所述目标图像对应的匹配特征图用于表征所述目标图像与所述模板图像进行融合后的融合的特征信息以及所述目标图像的自有特征信息;所述模板图像对应的匹配特征图用于表征所述模板图像与所述目标图像进行融合后的融合的特征信息以及所述模板图像对应的自有特征信息;

提取所述目标图像对应的匹配特征图中的待处理区域,并根据所述待处理区域对应的特征生成第一特征向量,所述待处理区域为预测存在第一目标的第一区域;

根据所述模板图像对应的匹配特征图生成第二特征向量;

将所述第一特征向量和所述第二特征向量合并得到第三特征向量,并根据第三特征向量判断所述目标图像中是否存在与所述模板图像对应的第二目标。

在其中一个实施例中,所述根据所述待处理区域对应的特征生成第一特征向量之后,还包括:

根据所述第一特征向量对所述待处理区域进行位置修正得到第二区域;

所述根据第三特征向量判断所述目标图像中是否存在与所述模板图像对应的第二目标,包括:

根据第三特征向量,计算各个所述待处理区域存在与所述模板图像对应的第二目标的得分;

根据所述得分对判断所述目标图像中是否存在与所述模板图像对应的第二目标的第二区域。

在其中一个实施例中,包括至少两张所述模板图像,所述方法还包括:

获取至少两张所述模板图像中的下一张,并继续分别提取所述目标图像以及所述模板图像各自对应的自有特征信息,以得到与新的模板图像对应的第二区域;

对根据各个模板图像所得到的第二区域进行过滤处理,得到所述目标图像中存在目标的区域。

在其中一个实施例中,所述模板图像包括边框位置和目标的边缘,所述边框位置与所述模板图像中的目标的边缘的位置的差值小于预设值。

在其中一个实施例中,所述根据所述目标图像的自有特征信息以及所述模板图像的自有特征信息,得到所述目标图像和所述模板图像各自对应的匹配特征图,包括:

将所述目标图像的自有特征信息以及所述模板图像的自有特征信息分别展开为二维矩阵;

根据所得到的二维矩阵计算得到相关性矩阵;

按照预设公式和所述相关性矩阵,分别计算所述目标图像和所述模板图像对应的匹配特征图。

在其中一个实施例中,所述提取所述目标图像对应的匹配特征图中的待处理区域,包括:

在所述目标图像对应的匹配特征图中生成初始检测框,并获取所述初始检测框在所述目标图像中的第一位置;

根据所述第一位置,对所述初始检测框进行分类和回归处理;

获取分类和回归处理后的初始检测框在所述目标图像对应的匹配特征图中的第二位置;

根据所述第二位置从所述匹配特征图中截取出待处理检测框作为待处理区域。

在其中一个实施例中,所述根据所述待处理区域对应的特征生成第一特征向量,包括:

将所述待处理区域转换为固定尺寸;

通过全连接层将固定尺寸的所述待处理区域进行线性映射得到第一特征向量。

在其中一个实施例中,所述根据所述模板图像对应的匹配特征图生成第二特征向量,包括:

通过全连接层将所述模板图像对应的匹配特征图进行线性映射得到第二特征向量。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。

上述目标检测方法、装置、计算机设备和存储介质,模板图像是新目标的样例图像,通过提取目标图像和模板图像的自有特征信息,然后根据自有特征信息相互融合计算得到匹配特征图,最后根据匹配特征图生成第一特征向量和第二特征向量,并对第一特征向量和第二特征向量进行向量融合后来判断目标图像中是否存在与模板图像对应的第二目标,这样当出现新目标,无需人工标注即可实现对该目标的检测,大大节省了人工标注成本,且不需要依赖根据标注量少的样本生成的深度学习模型,且提高新目标的检测准确性。

附图说明

图1为一个实施例中目标检测方法的流程示意图;

图2为一个实施例中的基础特征提取模块的流程处理框图;

图3为一个实施例中目标检测方法的流程处理框图;

图4为图1所示实施例中的步骤s106的流程图;

图5为另一个实施例中目标检测方法的流程示意图;

图6为一个实施例中目标检测装置的结构框图;

图7为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在一个实施例中,如图1所示,提供了一种目标检测方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:

s102:获取目标图像以及模板图像。

具体地,目标图像是可能存在新的目标的图像,即待处理图像。模板图像则是新的目标的模板图像,其中,该模板图像中可能存在一个或多个目标,但该些目标中至少包括一个新的目标。该模板图像可以是预先存储在模板库中的,其是待检测新目标的样例图像。模板图像可以是目标检测模型中见过的目标,也可以是没见过的,该模板库中的模板图像可以是一张或者是多张,且对应于一个目标的模板图像可以是一张或者是多张。且需要说明的是,模板图像的边框位置与模板图像中的目标的边缘的位置的差值小于预设值,以减少模板图像中的背景区域,例如让模板图像的边框尽可能接近目标的边缘,这样尽量保留较少的背景,可以得到更好的检测效果。具体地,假设存在多个目标,其中目标a、目标b以及目标c为原来的目标,目标d以及目标e为新的目标,则模板图像可以仅包括目标d,或者是出包括目标d外,还可以包括目标a、目标b、目标c以及目标e中的至少一个。而目标图像中则是可以包括上述目标a、目标b、目标c、目标d以及目标e中的任意个数个,包括0个或至少1个。

在其中一个实施例中,终端在获取到目标图像和模板图像时,可以并行将目标图像和模板图像进行归一化处理,以保证其像素值的预设范围内,其中归一化的方法可以包括:i=iorg/255,iorg为原始图像,i为归一化后的图像,其像素值在[0,1]之间。

此外,需要注意的是此处的目标图像可以是任意尺寸的图像,而为了保证检测的效果,模板库中的模板图像可以是固定尺寸的,例如固定尺寸的正方形图像。其中该模板图像的尺寸是与网络设计相关的,一般可以设置为128。且该模板图像采用正方形图像是为了减少参数量,由于正方形只需要存储一个边长即可。

s104:分别提取目标图像以及模板图像各自对应的自有特征信息。

具体地,自有特征信息终端提取目标图像以及模板图像对应的自有特征信息是采用相同的特征提取网络的,即采用共享的方式,例如均采用基于cnn的网络,可以使用任何一个公开模型作为基础特征的提取。例如选择使用seresnet50。该网络是在resnet50上增加了通道注意力机制se模块。其结构参考图2所示的基础特征提取模块的结构示意图。经过该基础特征提取模块的处理后得到的对应目标图像itarget的自有特征信息ftarget和对应模板图像itemplate的自有特征信息ftemplate,自有特征信息ftarget和自有特征信息ftemplate的尺寸分别为各自对应输入图像尺寸的1/n,如图2所示,n=16,在其他实施例中n还可以取其他的值,例如32等。以模板图像为例,假设输入图像尺寸为16nx16nx3,则ftemplate的尺寸为nxnx1024,其中1024为通道数。

s106:根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,目标图像对应的匹配特征图用于表征目标图像与模板图像进行融合后的融合的特征信息以及目标图像对应的自有特征信息;模板图像对应的匹配特征图用于表征模板图像与目标图像进行融合后的融合的特征信息以及模板图像对应的自有特征信息。

具体地,自有特征信息目标图像对应的匹配特征图是用于表征目标图像与模板图像进行融合后的融合的特征信息以及目标图像对应的自有特征信息;模板图像对应的匹配特征图是用于表征模板图像与目标图像进行融合后的融合的特征信息以及模板图像对应的自有特征信息。匹配特征图的提取是为了将自有特征信息ftarget和自有特征信息ftemplate进行融合以得到对应的匹配特征图,使得目标图像itarget对应的匹配特征图nftarget既包含了目标图像自有特征信息,也包含了与模板图像经过像素级融合后的特征信息,模板图像itemplate对应的匹配特征图nftemplate既包含了模板图像自有特征信息,也包含了与目标图像经过像素级融合后的特征信息。

s108:提取目标图像对应的匹配特征图中的待处理区域,并根据待处理区域对应的特征生成第一特征向量,待处理区域为预测存在第一目标的第一区域。

具体地,此处的待处理区域为预测存在第一目标的第一区域,其中该第一区域可以为粗略区域,例如终端通过通用目标检测模型基于目标图像itarget对应的匹配特征图nftarget生成可能包含目标的候选检测框,之后再对这些框进行进一步分类和回归以得到可能存在目标的候选框作为目标的第一区域,也就是待处理区域,其中该第一目标可以是与模板图像中的目标相同或者是不相同。

根据待处理区域对应的特征生成第一特征向量则是通过对待处理区域进行特征提取以及线性映射等得到的。

s110:根据模板图像对应的匹配特征图生成第二特征向量。

具体地,由于模板图像的边框尽可能接近目标的边缘,背景较少,因此终端可以直接通过对模板图像对应的匹配特征图进行特征提取以及线性映射生成第二特征向量。

s112:将第一特征向量和第二特征向量合并得到第三特征向量,并根据第三特征向量判断目标图像中是否存在与模板图像对应的第二目标。

具体地,终端将第一特征向量和第二特征向量进行合并,例如将第二特征向量排列在第一特征向量之后得到融合向量,例如第一特征向量的维度为x,第二特征向量的维度为y,则融合向量的维度为x+y,终端根据该融合特征向量来判断目标图像中是否存在与模板图像对应的第二目标,即判断目标图像和模板图像中是否存在相同的类别,其中判断的方式可以是通过第一特征向量和第二特征向量的计算得到每个待处理区域对应的得分,例如通过相似度计算得到得分,然后根据得分来确定目标图像和模板图像中是否存在相同的类别。

此外需要说明的是,关于上述目标检测方法可以是预先训练得到模型,然后使用的,结合图3,该模型的训练过程包括:

首先每次训练需要输入2张图像:一张目标图像,一张模板图像。目标图像中可以包含模板图像代表的目标物,也可以不包含。

训练时的损失函数如下:

l=lrpncls+lrpnreg+lcls+lreg+λlmr

lrpncls是待处理区域获取网络,即图3中的rpn网络的分类损失。lcls是主网络,即判断目标图像和模板图像中是否存在相同的类别的分类损失,这两项均采用二分类交叉熵损失。lrpnreg是待处理区域获取网络,即rpn网络的回归损失,lreg是主网络的回归损失,二者均采用smoothl1loss。lmr是margin-basedloss,其目的是在训练过程中让类别相同的特征距离尽可能近,同时让类别不同的特征距离尽可能远,λ用于控制lmr项的权重。lmr的具体表达式如下:

其中,k为待处理区域获取网络,即rpn输出的候选检测框的数量,i为正整数,0≤i≤k。yi为训练标签,如果候选检测框与模板图像是同一类别,则yi为1否则为0。si为候选检测框经过cls模块计算得到的分类得分,a表示同类边界,b表示不同类边界,[.]中的内容相等为1,不等为0,relu是一种公开的激活函数,其含义等价于max(a-si,0),即取0和a-si的最大值。

lmr项的意义在于经过训练后,如果候选框中包含模板图像中的目标,那么si的值会趋于a。相反si的值会趋于b。如本例中a取0.7,b取0.3,那么最后输出的si会具有更好的区分度。

上述目标检测方法,模板图像是新目标的样例图像,通过提取目标图像和模板图像的自有特征信息,然后根据自有特征信息相互融合计算得到匹配特征图,最后根据匹配特征图生成第一特征向量和第二特征向量,并对第一特征向量和第二特征向量进行向量融合后来判断目标图像中是否存在与模板图像对应的第二目标,这样当出现新目标,无需人工标注即可实现对该目标的检测,大大节省了人工标注成本,且不需要依赖根据标注量少的样本生成的深度学习模型,且提高新目标的检测准确性。

在其中一个实施例中,请继续结合图3所示,根据待处理区域对应的特征生成第一特征向量之后,还包括:根据第一特征向量对待处理区域进行位置修正得到第二区域。根据第三特征向量判断目标图像中是否存在与模板图像对应的目标,包括:根据第三特征向量,计算各个待处理区域存在与模板图像对应的目标的得分;根据得分对判断目标图像中是否存在与模板图像对应的第二目标的第二区域。

具体地,在得到特征向量后,终端可以分两个线程进行并行处理,第一线程将第一特征向量输入至图3中的reg模块,以通过reg模块在待处理区域的坐标的基础上预测一个偏移量,并根据该偏移量对待处理区域进行位置修正得到第二区域,其中可以记录待处理区域与第二区域的对应关系,以便于后处理模块的使用。第二线程则是将第一特征向量和第二特征向量进行融合得到第三特征向量后输入至cls模块,以通过cls模块判断目标图像中是否存在与模板图像对应的目标,具体地,即通过cls模块对各个待处理区域进行打分得到对应的得分,其中该得分可以是通过上述训练的模型进行计算得到的。然后通过图3中的后处理模块将第一线程得到的第二区域以及第二线程得到的各个待处理区域的得分进行综合计算,例如根据待处理区域对应的得分,对对应的第二区域进行过滤处理,例如采用非极大值抑制的方式进行过滤,以剔除掉不含有第二目标的第二区域以及重复的第二区域,得到最终的结果。

结合图3,在实际应用中,后处理模块基于nms(非极大值抑制)技术,即对图3中检测模块的输出结果按照分类得分进行排序,并设置好分类阈值,只保留分类得分高于分类阈值的检测框,即待处理区域。然后取得分最高的检测框,即待处理区域对应的第二区域,依次计算其他检测框(此处仍是采用待处理区域对应的第二区域)与该检测框的交并比iou。如果所计算的交并比iou超过交并比iou阈值,如0.7,则认为是重复检测。将对应的检测框剔除。然后终端继续取得分第二高的检测框,依次计算并剔除重复框,直到所有的检测框都计算完毕,保留最后剩下的检测框,也就是剩下的第二区域作为最终检测结果。

上述实施例中,首先通过并行处理,一方面获取到了待处理区域对应的第二区域,也可以理解为更精确的区域,另一方面对待处理区域是否包含模板图像中的目标进行预测,最后综合并行处理的结果,进行过滤处理得到了最后的检测结果,通过第二区域保证了所得到的最后检测结果的位置的准确性,通过第一特征向量和第二特征向量对应的融合向量的检测判断保证了同类目标检测的准确性,这样两者综合,即保证了目标检测的准确性,也保证了最后所得到的目标的位置的准确性。

在其中一个实施例中,同一目标对应的模板图像包括至少两张。上述的目标检测方法还包括通过多张模板图像分别进行检测,并将多张模板图像检测的检测结果进行过滤处理,这样同时考虑多张模板图像,可以保证检测结果的准确性,具体地,通过多张模板图像分别进行检测的方法可以是多张模板图像并行进行处理,或者是串行处理,在此不做具体限制,具体包括以下步骤:获取至少两张模板图像中的下一张,并继续分别提取目标图像以及模板图像各自对应的自有特征信息,以得到与新的模板图像对应的第二区域;对根据各个模板图像所得到的第二区域进行过滤处理,得到目标图像中存在目标的区域。

其中,对于目标图像的自有特征信息提取可以仅处理一次,即对所选择的多张模板图像和目标图像均采用共享网络来进行自有特征信息的提取,而后续的匹配特征图的提取、第一特征向量以及第二特征向量的生成和融合则根据模板图像的不同而存在不同。针对每个模板图像都会检测到对应的第二区域或者是没有对应的第二区域(例如目标图像中不存在模板图像对应的目标时)。

终端在得到各个模板图像对应的第二区域后,则对所得到的第二区域进行过滤处理,例如对多次检测结果做融合,融合方法也是基于nms技术,首先将多次检测结果合并起来按照分类得分排序,然后设置好分类阈值,只保留分类得分高于分类阈值的第二区域,然后取得分最高的第二区域,依次计算其他第二区域与该第二区域的iou,如果超过iou阈值,如0.7,则认为是重复检测。将对应的第二区域剔除。然后取得分第二高的第二区域,依次计算并剔除重复第二区域,直到所有的第二区域都计算完毕,保留最后剩下的第二区域作为最终检测结果。

为了方便理,以目标为猫,模板库中有3张猫的模板图像,目标图像中实际有2只猫进行说明:由于模板库中存在3张猫的模板图像,则可以运行上述目标检测方法三次,比如第一次检测出左上角有1只猫,第二次和第三次都检测出左上和右下角各有1只猫,这样一共检测出5只猫,把这5个检测框融合到一起做nms,即可以将第一次、第二次和第三次所检测到的左上角的猫进行融合,第二次和第三次所检测到的右下角的猫融合,最终得到2个检测框,即为检测结果。

上述实施例中,可以从模板库中选择多张不同的模板图像进行多次检测,最后对多次检测的结果进行融合处理,提高了检测的准确性。

在其中一个实施例中,参见图4所示,图4为图1所示实施例中的步骤s106的流程图,该步骤s106,即根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,包括:

s402:将目标图像的自有特征信息以及模板图像的自有特征信息分别展开为二维矩阵。

具体地,在将目标图像的自有特征信息以及模板图像的自有特征信息分别展开为二维矩阵之前,终端可以通过预设的卷积核对自有特征信息进行将未处理,以减少计算量。

假设目标图像的自有特征信息ftarget的尺寸为laxlbx1024,模板图像的自有特征信息ftemplate的尺寸为nxnx1024。所采用的卷积核为1x1x512,则降维后目标图像的自有特征信息ftarget的尺寸为laxlbx512,模板图像的自有特征信息ftemplate的尺寸为nxnx512。

将降维后的自有特征信息展开为二维矩阵的方法具体为:将特征图ftarget展开为二维矩阵a,其维度为(laxlb)x512;将特征图ftemplate展开为二维矩阵b,其维度为(nxn)x512。

s404:根据所得到的二维矩阵计算得到相关性矩阵。

具体地,记两个自有特征信息的相关性矩阵为c,c=axbt,其维度为(laxlb)x(nxn);该相关性矩阵c表征了两个自有特征信息之间像素级别的相关性。

s406:按照预设公式和相关性矩阵,分别计算目标图像和模板图像对应的匹配特征图。

具体地,目标图像对应的匹配特征图的计算公式为:

nftarget=[concat(reshape(cxb/(laxlb)),ftarget)]

模板图像对应的匹配特征图的计算公式为:

nftemplate=[concat(reshape(ctxa/(nxn),ftemplate)]

需要注意的是,cxb/(laxlb)计算结果是一个二维矩阵,通过reshape操作将其排列顺序还原为laxlbx512的张量形式,concat代表2组特征沿着通道维度进行拼接。这样得到的匹配特征图nftarget和nftemplate的尺寸分别为laxlbx1024和nxnx1024。

上述实施例中,通过以上步骤得到的匹配特征图,如目标图像itarget对应的匹配特征图nftarget,是经过深度模式匹配后的结果,既包含了目标图像自有特征信息,也包含了与模板图像经过像素级融合后的特征信息。模板图像itemplate对应的匹配特征图nftemplate既包含了模板图像自有特征信息,也包含了与目标图像经过像素级融合后的特征信息。

在其中一个实施例中,提取目标图像对应的匹配特征图中的待处理区域,包括:在目标图像对应的匹配特征图中生成初始检测框,并获取初始检测框在目标图像中的第一位置;根据第一位置,对初始检测框进行分类和回归处理;获取分类和回归处理后的初始检测框在目标图像对应的匹配特征图中的第二位置;根据第二位置从匹配特征图中截取出待处理检测框作为待处理区域。

具体地,待处理区域可以是指所生成的检测框,经过分类和回归后剩余的存在目标的检测框。例如,终端可以首先基于rpn生成一批初始检测框,即例如目标图像对应的匹配特征图的尺寸是10*10,则终端基于rpn在该目标图像对应的匹配特征图上的每个点设置若干不同尺寸的初始检测框,例如高宽比不同,假设每个点设置9个初始检测框,这样就会生成900个初始检测框。这些初始检测框每个都会对应目标图像中的一片区域,这样终端获取初始检测框在目标图像中的第一位置,进而根据该第一位置对初始检测框进行分类和回归处理,以剔除掉没有目标的初始检测框,这样获取到剩下的初始检测框在目标图像对应的匹配特征图nftarget上对应的检测框坐标,例如矩形框的坐标,即上文中的第二位置。根据第二位置从匹配特征图中截取出待处理检测框作为待处理区域。此外,在剔除掉没有目标的初始检测框后,终端还可以对存在目标的初始检测框进行尺寸修正,这样修正完得到的实际是对应到目标图像的坐标,所以先在目标图像上找到对应位置,再映射到匹配特征图上,即可以得到对应的待处理区域。

上述实施例中,预先对初始检测框进行处理,包括剔除无目标的初始检测框和/或对存在目标的初始检测框的尺寸进行修正,保证了所得到的待处理区域的基本准确。

在其中一个实施例中,根据待处理区域对应的特征生成第一特征向量,包括:将待处理区域转换为固定尺寸;通过全连接层将固定尺寸的待处理区域进行线性映射得到第一特征向量。

在其中一个实施例中,根据模板图像对应的匹配特征图生成第二特征向量,包括:通过全连接层将模板图像对应的匹配特征图进行线性映射得到第二特征向量。

具体地,其中第一特征向量的生成过程可以包括:终端首先将待处理区域从目标图像对应的匹配特征图nftarget上截取出来,然后经过roipooling(根据预选框的位置坐标在特征图中将相应区域池化为固定尺寸的特征图,以便进行后续的分类和包围框回归操作)或者roialign将截出来的特征图转换为固定尺寸大小,如7x7x1024。最后通过全连接层将固定尺寸的待处理区域进行线性映射得到第一特征向量,例如经过一个全连接层做线性映射,将特征映射为2048维的第一特征向量,记为rois,如图3所示。

而对于第二特征向量,则直接对模板图像对应的匹配特征图nftemplate做全连接操作,将特征线性映射为2048维的第二特征向量,记为cftemplate。

具体地,请参阅图5所示,图5为另一个实施例中的目标检测方法的流程图,在该实施例中,该目标检测方法包括:

首先输入一张目标图像,记为图像itarget,并在模板库中选择一张模板图像,记为itemplate。

将目标图像itarget和模板图像itemplate分别输入到特征提取模块,得到其对应的自有特征信息ftarget和ftemplate。

将自有特征信息ftarget和ftemplate输入到深度模式匹配模块,得到其对应的匹配特征图nftarget和nftemplate。

将匹配特征图nftarget和nftemplate输入到检测模块,得到检测结果。

最后将检测结果输入到后处理模块,得到最终预测结果。

具体地,该步骤中具体包括:基于rpn生成一批候选检测框,如300个框,具体结合图3,根据这些候选检测框的坐标在目标图像上找到对应位置,进而在匹配特征图nftarget上找到对应的矩形框坐标。根据矩形框坐标在匹配特征图nftarget上将对应区域的特征截取出来,经过roipooling或者roialign将截出来的特征图转换为固定尺寸大小,如7x7x1024,然后经过一个全连接层做线性映射,将特征映射为2048维的向量,记为rois,对匹配特征图nftemplate做全连接操作,将特征线性映射为2048维的向量,记为cftemplate,将rois送到reg模块,对检测框的位置做进一步修正。将rois和cftemplate合并为4096维向量,送到cls模块判断是否是相同类别。

可选地,从模板库中选择一张新的模板图像,重复上述步骤对多次预测结果进行融合后作为最终预测结果。

上述实施例中,针对目标检测中可能出现的数据量不足,标注成本高等问题,提出了一种新的基于深度模式匹配的目标检测方法,对于新出现的目标,无需人工标注即可实现对该目标的检测,大大节省了人工标注成本。

应该理解的是,虽然图1、图3、图4和图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1、图3、图4和图5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图6所示,提供了一种目标检测装置,包括:图像获取模块100、自有特征信息提取模块200、匹配特征图计算模块300、第一特征向量生成模块400、第二特征向量生成模块500和判断模块600,其中:

图像获取模块100,用于获取目标图像以及模板图像;

自有特征信息提取模块200,用于分别提取目标图像以及模板图像各自对应的自有特征信息;

匹配特征图计算模块300,用于根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,目标图像对应的匹配特征图用于表征目标图像与模板图像进行融合后的融合的特征信息以及目标图像对应的自有特征信息;模板图像对应的匹配特征图用于表征模板图像与目标图像进行融合后的融合的特征信息以及模板图像对应的自有特征信息;

第一特征向量生成模块400,用于提取目标图像对应的匹配特征图中的待处理区域,并根据待处理区域对应的特征生成第一特征向量,待处理区域为预测存在第一目标的第一区域;

第二特征向量生成模块500,用于根据模板图像对应的匹配特征图生成第二特征向量;

判断模块600,用于将第一特征向量和第二特征向量合并得到第三特征向量,并根据第三特征向量判断目标图像中是否存在与模板图像对应的第二目标。

在其中一个实施例中,上述目标检测装置还包括:

位置修正模块,用于根据第一特征向量对待处理区域进行位置修正得到第二区域;

上述判断模块600可以包括:

得分计算单元,用于根据第三特征向量,计算各个待处理区域存在与模板图像对应的目标的得分;

过滤单元,用于根据得分对判断目标图像中是否存在与模板图像对应的第二目标的第二区域。

在其中一个实施例中,包括至少两张模板图像;上述的目标检测装置还包括:

循环模块,用于获取至少两张模板图像中的下一张,并继续分别提取目标图像以及模板图像各自对应的自有特征信息,以得到与新的模板图像对应的第二区域;

过滤模块,用于对根据各个模板图像所得到的第二区域进行过滤处理,得到目标图像中存在目标的区域。

在其中一个实施例中,模板图像包括边框位置和目标的边缘,边框位置与模板图像中的目标的边缘的位置的差值小于预设值。

在其中一个实施例中,上述匹配特征图计算模块300可以包括:

展开单元,用于将目标图像的自有特征信息以及模板图像的自有特征信息分别展开为二维矩阵;

相关性矩阵计算单元,用于根据所得到的二维矩阵计算得到相关性矩阵;

匹配特征图计算单元,用于按照预设公式和相关性矩阵,分别计算目标图像和模板图像对应的匹配特征图。

在其中一个实施例中,第一特征向量生成模块400可以包括:

第一位置获取单元,用于在目标图像对应的匹配特征图中生成初始检测框,并获取初始检测框在目标图像中的第一位置;

处理单元,用于根据第一位置,对初始检测框进行分类和回归处理;

第二位置获取单元,用于获取分类和回归处理后的初始检测框在目标图像对应的匹配特征图中的第二位置;

截取单元,用于根据第二位置从匹配特征图中截取出待处理检测框作为待处理区域。

在其中一个实施例中,第一特征向量生成模块400可以包括:

尺寸转换单元,用于将待处理区域转换为固定尺寸;

第一特征向量生成单元,用于通过全连接层将固定尺寸的待处理区域进行线性映射得到第一特征向量。

在其中一个实施例中,上述第二特征向量生成模块500用于通过全连接层将模板图像对应的匹配特征图进行线性映射得到第二特征向量。

关于目标检测装置的具体限定可以参见上文中对于目标检测方法的限定,在此不再赘述。上述目标检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种目标检测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取目标图像以及模板图像;分别提取目标图像以及模板图像各自对应的自有特征信息;根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,目标图像对应的匹配特征图用于表征目标图像与模板图像进行融合后的融合的特征信息以及目标图像对应的自有特征信息;模板图像对应的匹配特征图用于表征模板图像与目标图像进行融合后的融合的特征信息以及模板图像对应的自有特征信息;提取目标图像对应的匹配特征图中的待处理区域,并根据待处理区域对应的特征生成第一特征向量,待处理区域为预测存在第一目标的第一区域;根据模板图像对应的匹配特征图生成第二特征向量;将第一特征向量和第二特征向量合并得到第三特征向量,并根据第三特征向量判断目标图像中是否存在与模板图像对应的第二目标。

在一个实施例中,处理器执行计算机程序时所实现的根据待处理区域对应的特征生成第一特征向量之后,还包括:根据第一特征向量对待处理区域进行位置修正得到第二区域;处理器执行计算机程序时所实现的根据第三特征向量判断目标图像中是否存在与模板图像对应的目标,包括:根据第三特征向量,计算各个待处理区域存在与模板图像对应的目标的得分;根据得分对判断目标图像中是否存在与模板图像对应的第二目标的第二区域。

在一个实施例中,处理器执行计算机程序时所实现的模板图像包括至少两张,方法还包括:获取至少两张模板图像中的下一张,并继续分别提取目标图像以及模板图像对应的自有特征信息,以得到与新的模板图像对应的第二区域;对根据各个模板图像所得到的第二区域进行过滤处理,得到目标图像中存在目标的区域。

在一个实施例中,处理器执行计算机程序时所涉及的模板图像包括边框位置和目标的边缘,边框位置与模板图像中的目标的边缘的位置的差值小于预设值。

在一个实施例中,处理器执行计算机程序时所实现的根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,包括:将目标图像的自有特征信息以及模板图像的自有特征信息分别展开为二维矩阵;根据所得到的二维矩阵计算得到相关性矩阵;按照预设公式和相关性矩阵,分别计算目标图像和模板图像对应的匹配特征图。

在一个实施例中,处理器执行计算机程序时所实现的提取目标图像对应的匹配特征图中的待处理区域,包括:在目标图像对应的匹配特征图中生成初始检测框,并获取初始检测框在目标图像中的第一位置;根据第一位置,对初始检测框进行分类和回归处理;获取分类和回归处理后的初始检测框在目标图像对应的匹配特征图中的第二位置;根据第二位置从匹配特征图中截取出待处理检测框作为待处理区域。

在一个实施例中,处理器执行计算机程序时所实现的根据待处理区域对应的特征生成第一特征向量,包括:将待处理区域转换为固定尺寸;通过全连接层将固定尺寸的待处理区域进行线性映射得到第一特征向量。

在一个实施例中,处理器执行计算机程序时所实现的根据模板图像对应的匹配特征图生成第二特征向量,包括:通过全连接层将模板图像对应的匹配特征图进行线性映射得到第二特征向量。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取目标图像以及模板图像;分别提取目标图像以及模板图像对应的自有特征信息;根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,目标图像对应的匹配特征图用于表征目标图像与模板图像进行融合后的融合的特征信息以及目标图像对应的自有特征信息;模板图像对应的匹配特征图用于表征模板图像与目标图像进行融合后的融合的特征信息以及模板图像对应的自有特征信息;提取目标图像对应的匹配特征图中的待处理区域,并根据待处理区域对应的特征生成第一特征向量,待处理区域为预测存在第一目标的第一区域;根据模板图像对应的匹配特征图生成第二特征向量;将第一特征向量和第二特征向量合并得到第三特征向量,并根据第三特征向量判断目标图像中是否存在与模板图像对应的第二目标。

在一个实施例中,计算机程序被处理器执行时所实现的根据待处理区域对应的特征生成第一特征向量之后,还包括:根据第一特征向量对待处理区域进行位置修正得到第二区域;计算机程序被处理器执行时所实现的根据第三特征向量判断目标图像中是否存在与模板图像对应的目标,包括:根据第三特征向量,计算各个待处理区域存在与模板图像对应的目标的得分;根据得分对判断目标图像中是否存在与模板图像对应的第二目标的第二区域。

在一个实施例中,计算机程序被处理器执行时所实现的模板图像包括至少两张,方法还包括:获取至少两张模板图像中的下一张,并继续分别提取目标图像以及模板图像对应的自有特征信息,以得到与新的模板图像对应的第二区域;对根据各个模板图像所得到的第二区域进行过滤处理,得到目标图像中存在目标的区域。

在一个实施例中,计算机程序被处理器执行时所涉及的模板图像包括边框位置和目标的边缘,边框位置与模板图像中的目标的边缘的位置的差值小于预设值。

在一个实施例中,计算机程序被处理器执行时所实现的根据目标图像的自有特征信息以及模板图像的自有特征信息,得到目标图像和模板图像各自对应的匹配特征图,包括:将目标图像的自有特征信息以及模板图像的自有特征信息分别展开为二维矩阵;根据所得到的二维矩阵计算得到相关性矩阵;按照预设公式和相关性矩阵,分别计算目标图像和模板图像对应的匹配特征图。

在一个实施例中,计算机程序被处理器执行时所实现的提取目标图像对应的匹配特征图中的待处理区域,包括:在目标图像对应的匹配特征图中生成初始检测框,并获取初始检测框在目标图像中的第一位置;根据第一位置,对初始检测框进行分类和回归处理;获取分类和回归处理后的初始检测框在目标图像对应的匹配特征图中的第二位置;根据第二位置从匹配特征图中截取出待处理检测框作为待处理区域。

在一个实施例中,计算机程序被处理器执行时所实现的根据待处理区域对应的特征生成第一特征向量,包括:将待处理区域转换为固定尺寸;通过全连接层将固定尺寸的待处理区域进行线性映射得到第一特征向量。

在一个实施例中,计算机程序被处理器执行时所实现的根据模板图像对应的匹配特征图生成第二特征向量,包括:通过全连接层将模板图像对应的匹配特征图进行线性映射得到第二特征向量。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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