基于物体检测和特征搜索的精确目标识别的方法及系统与流程

文档序号:17549593发布日期:2019-04-30 18:10阅读:184来源:国知局
基于物体检测和特征搜索的精确目标识别的方法及系统与流程

本发明涉及目标检测识别技术领域,具体而言,涉及一种基于物体检测和特征搜索的精确目标识别的方法及系统。



背景技术:

现有技术中,单纯使用基于深度学习的检测技术,只能识别目标的分类信息,无法精确识别目标是具体的某一个目标。若为了识别目标到具体的某一个目标,只能将目标分类分得更多更细致,但算法精度和速度会有明显下降,且目标分类需要的数据量巨大,成本高昂。对新目标的添加,只能添加分类,并需要新的数据训练新的检测识别模型,扩展周期长,可扩展性。



技术实现要素:

有鉴于此,本发明的目的在于提供基于物体检测和特征搜索的精确目标识别的方法及系统,可实现目标的精确识别,做到快速添加新的目标,具有良好的可扩展性,。

第一方面,本发明实施例提供了一种基于物体检测和特征搜索的精确目标识别的方法,其中,包括:

获取原始输入图像,通过cnn卷积神经网络得到第一特征图组;

对所述第一特征图组依次进行重采样和拼接操作,得到第二特征图组;

将所述第二特征图组映射到所述原始输入图像中,对所述原始输入图像进行预测框的位置检测,得到所述原始输入图像的预测框;

判断所述预测框是否为目标区域,若是,则获取所述目标区域中的类别信息;

提取所述目标区域的视觉特征;

将视觉特征与原始输入图像的详细类别信息相匹配。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述重采样包括上采样和下采样,对所述第一特征图组依次进行重采样和拼接操作,得到第二特征图组包括:

对所述第一特征图组进行下采样,得到第三特征图组;

对所述第三特征图组中最大尺度特征图之外的特征图进行上采样,得到第四特征图组;

将所述第三特征图组和所述第四特征图组中具有相同尺度的特征图分别进行拼接,得到所述第二特征图组。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述将所述第二特征图组映射到所述原始输入图像中,对所述原始输入图像进行预测框位置检测,得到所述原始输入图像的预测框包括:

基于所述第二特征图组的尺度在所述原始输入图像上划分网格;

将所述第二特征图组中的各特征图分别映射到所述原始输入图像的网格中;

在所述网格上至少生成一个预测框;

基于边界框回归模型计算所述预测框的修正位置,得到所述预测框的修正值;

基于所述预测框和所述预测框的修正值,得到所述原始输入图像的预测框的中心位置。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述判断所述预测框是否为目标区域包括:

在所述预测框中生成目标概率;判断所述目标概率是否小于第一预设阈值,若是,则所述预测框不是所述目标区域;

若否,则所述预测框为所述目标区域。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述若是,则获取所述目标区域中的类别信息包括:

生成所述目标的分类概率;

所述目标概率与所述分类概率相乘,生成条件类别概率;

选取所述条件类别概率最大值,将与所述条件类别概率最大值相对应的类别信息输入到数据库中。

结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述提取所述目标检测区域的视觉特征包括:

将确定目标区域后的所述原始输入图像作为查询图像输入到视觉特征提取模型中;

提取所述查询图像的视觉特征。

第二方面,本发明实施例还提供了一种基于物体检测和特征搜索的精确目标识别的系统,其中,包括:

目标检测模块,获取原始输入图像,通过cnn卷积神经网络得到第一特征图组;对所述第一特征图组依次进行重采样和拼接操作,得到第二特征图组;将所述第二特征图组映射到所述原始输入图像中,对所述原始输入图像进行预测框的位置检测,得到所述原始输入图像的预测框;判断所述预测框是否为目标区域,若是,则获取所述目标区域中的类别信息;

目标特征提取模块,用于提取所述目标区域的视觉特征;

目标特征搜索模块,用于将视觉特征与原始输入图像的详细类别信息相匹配。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述重采样包括上采样和下采样,所述目标检测模块具体用于:

对所述第一特征图组进行下采样,得到第三特征图组;

对所述第三特征图组中最大尺度特征图之外的特征图进行上采样,得到第四特征图组;

将所述第三特征图组和所述第四特征图中具有相同尺度的特征图分别进行拼接,得到所述第二特征图组。

结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述目标检测模块还具体用于:

基于所述第二特征图组的尺度在所述原始输入图像上划分网格;

将所述第二特征图组中的各特征图分别映射到所述原始输入图像的网格中;

在所述网格上至少生成一个预测框;

基于边界框回归模型计算所述预测框的修正位置,得到所述预测框的修正值;

基于所述预测框和所述预测框的修正值,得到所述原始输入图像的预测框的中心位置。

结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述目标特征提取模块具体用于:

将确定目标区域后的所述原始输入图像作为查询图像输入到视觉特征提取模型中;

提取所述查询图像的视觉特征。

本发明实施例提供的基于物体检测和特征搜索的精确目标识别的方法及系统,采用物体检测和特征搜索相结合的方法,与现有技术中的单纯使用基于深度学习的检测技术相比,不仅可以识别目标的分类信息,还可以实现目标的精确识别,可快速添加新目标,具有良好的可扩展性。。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例所提供的基于物体检测和特征搜索的精确目标识别的方法的流程图;

图2示出了本发明实施例所提供的c.relu结构示意图;

图3示出了本发明实施例所提供的firemodle+inception结构示意图;

图4示出了本发明实施例所提供的重采样的流程图;

图5示出了本发明实施例所提供的预测框的位置检测的流程图;

图6示出了本发明实施例所提供的判断预测框是否为目标区域的流程图;

图7示出了本发明实施例所提供的获取目标区域中的类别信息的流程图;

图8示出了本发明实施例所提供的提取目标区域的视觉特征的流程图;

图9示出了本发明实施例所提供的基于物体检测和特征搜索的系统的结构示意图。

主要元件符号说明:1-目标检测模块;2-目标特征提取模块;3-目标特征搜索模块。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

考虑到现有技术中单纯使用基于深度学习的检测技术只能识别到目标的分类信息,基于此,本发明实施例提供了一种基于物体检测和特征搜索的精确目标识别的方法及系统,下面通过实施例进行描述。

本发明实施例提供了一种基于物体检测和特征搜索的精确目标识别的方法,如图1所示,具体包括以下步骤s101~s106:

s101,获取原始输入图像,通过cnn卷积神经网络得到第一特征图组。

卷积神经网络由多个c.relu和firemodule+inception相结合的子网络串联组成,对输入的原始图像进行特征特征提取,为后续的目标检测提供精准的目标特征描述。

如图2所示,随着检测类别数的增长,神经网络的计算量明显增长,检测速度会有一定的下降,为了提速并保证检测精度,利用c.relu结构中低层卷积核成对出现且参数互为相反数的特性,通过简单的连接相同的输出和使其变成双倍,在减少一半输出通道的数量下,依然能达到原来输出的数量,既提升了2倍的运算速度,又保证了检测网络的精度。而且为了提供神经网络的非线性建模能力,在c.relu结构中加入了激活函数relu。

如图3所示,firemodule结构中包括一个卷积核大小为1×1的卷积层,达到降维效果,使得输入特征图组中的特征图数量大大减少,保证输入到inception结构中的特征图数量尽量得少,减少inception结构中的计算量,因此,firemodule结构起到了模型压缩的作用,实现减少模型参数并提高速度的目的。inception结构中主要包含三个卷积核大小不同的卷积层,分别是1×1卷积核、3×3卷积核以及两个3×3卷积核。一般来说,网络中会选取1×1卷积核、3×3卷积核和5×5卷积核,但为了保证在具有相同感知野的条件下提升网络的深度,以及减少计算参数量,在本发明实施例中的5×5卷积核由两个3×3卷积核替代。inception结构中的最后一层为1×1卷积核,既保留了上一层的感受野,又增加了输入模式的非线性,减慢了一些输出特征的感受野的增长,可以精确地捕获小尺寸的目标。

原始输入图像通过多个串联的c.relu结构,得到输出特征图组。上一层的输出特征图组作为firemodule层的输入,通过1×1卷积核降维后得到的输入特征图组分别与三个不同大小的卷积核卷积,得到三个感受野不同的输出特征图组,其中,使用1×1卷积核卷积后得到的输出特征图组对应于足够小的感受野,可以精确检测小的目标;使用3×3卷积核以及两个3×3卷积核,卷积后得到的输出特征图组对应于大的感受野,以便检测更大的目标。然后将这三个特征图组拼接,将拼接的输出特征图组经过1×1卷积核,达到不同尺度特征融合的目的。多个firemodule+inception模块相结合的子网络串联,经过多层的特征提取后,才能得到一个好的特征,作为第一特征图组。

s102,对第一特征图组依次进行重采样和拼接操作,得到第二特征图组。

可选地,重采样包括上采样和下采样,如图4所示,步骤s102中具体包括以下步骤s201~s203:

s201,对第一特征图组进行下采样,得到第三特征图组。

对第一特征图组进行下采样,得到40×40尺度的特征图组;继续对40×40尺度的特征图组进行下采样,得到20×20尺度的特征图组;接着对20×20尺度的特征图组进行下采样,得到10×10尺度的特征图组,由三种尺度的特征图组共同组成第三特征图组。

s202,对第三特征图组中最大尺度特征图之外的特征图进行上采样,得到第四特征图组。

对第三特征图组中10×10尺度的特征图组进行上采样,得到20×20尺度的特征图组;接着对20×20尺度的特征图组进行上采样,得到40×40尺度的特征图组;由上采样得到的20×20尺度的特征图和40×40尺度的特征图组共同组成第四特征图组。

s203,将第三特征图组和第四特征图组中具有相同尺度的特征图分别进行拼接,得到第二特征图组。

将第三特征图组中的20×20尺度的特征图组和第四特征图组中的20×20尺度的特征图组进行拼接,得到一个特征图数量更多的20×20尺度的特征图组;将第三特征图组中的40×40尺度的特征图组和第四特征图组中的40×40尺度的特征图组进行拼接,得到一个特征图数量更多的40×40尺度的特征图组。因此,10×10尺度的特征图组、拼接得到的20×20尺度的特征图组和40×40尺度的特征图组共同构成了多尺度的第二特征图组。

s103,将第二特征图组映射到原始输入图像中,对原始输入图像进行预测框的位置检测,得到原始输入图像的预测框。

可选地,如图5所示,步骤s103中具体包括以下步骤s301~s305:

s301,基于第二特征图组的尺度在原始输入图像上划分网格。

原始输入图像经过卷积层将图像特征提取出来,随着网络的深入,所提取的图像特征具有越来越抽象的语义含义,同时这些图像特征的位置含义却越来越模糊,通过将特征图组中的每个像素点映射到原始输入图像中,体现它的位置含义。

基于第二特征图组的不同尺度,在原始输入图像上划分网格。也就是说,10×10尺度的特征图组会在原始输入图像上划分10×10个网格,20×20尺度的特征图会在原始输入图像上划分20×20个网格,40×40尺度的特征图会在原始输入图像上划分40×40个网格,在10×10尺度的特征图组上进行大目标的检测,在20×20尺度的特征图组和40×40尺度的特征图组依次检测较小的目标,这样符合大的目标少而小目标会比较多的实际情况。

s302,将第二特征图组中的各特征图分别映射到原始输入图像的网格中。

以10×10尺度的特征图为例,将原始输入图像平均分成10×10的网格,特征图中的每一个特征与网格中的每一个小格的中心点一一对应,特征图中的每一个特征就描述了原始输入图像中以对应网格区域为中心的,要大于该网格的区域的特征。

s303,在网格上至少生成一个预测框。

通过已经训练好的目标检测模型在每个网格上生成k个预测框,每个预测框是一个预设的4维向量(xi,yj,wk,hk),其中,(xi,yj)表示网格中心点坐标(i,j),(wk,hk)分别表示预测框的宽和高,k=[0,k),表示预设的k个预测框。

s304,基于边界框回归模型计算预测框的修正位置,得到预测框的修正值。

预测框的中心位置并不一定是真实框的中心位置,按照公式(1)~(4)计算得到预测框的修正值(δxijk,δyijk,δwijk,δhijk),分别表示预设框的中心坐标(xi,yj)和预测框的宽、高(wk,hk)的修正值:

s305,基于预测框和预测框的修正值,得到原始输入图像真实框的中心位置。

通过训练修正值与预设值之间的计算参数,将预测框的目标中心位置向真实框的中心位置逼近,最终得到真实框的中心位置,此时预测框的中心位置基本等同于真实框的中心位置。

s104,判断预测框是否为目标区域,若是,则获取目标区域中的类别信息。

可选地,如图6所示,步骤s104中具体包括以下步骤s401~s403:

s401,在预测框中生成目标概率。

在预测框中生成一个数值,范围在[0,1],表示在预测框中有目标的概率。

s402,判断目标概率是否小于第一预设阈值,若是,则预测框不是目标区域。

设置第一预设阈值,如果该预测框的目标概率低于阈值,表示该预测框为一个无效的目标框,该预测框不是原始输入图像的目标区域。

s403,若否,则预测框为目标区域。

可选地,如图7所示,步骤s403中具体包括以下步骤s501~s503:

s501,生成目标的分类概率。

在预测框为有效预测框的前提下,通过目标检测识别模型中的深度学习神经网络计算出该目标属于每个类别的分类概率。本发明实施例中有1000大类,经过计算得到1000个分类概率。

s502,目标概率与分类概率相乘,生成条件类别概率。

将目标概率分别与1000个分类概率相乘,得到1000个条件类别概率。

s503,选取条件类别概率最大值,将与所述条件类别概率最大值相对应的类别信息输入到数据库中。

将1000个条件类别概率从高到低排列,选取条件类别概率最大值,将与条件类别概率最大值相对应的类别信息输入到数据库中。

s105,提取目标区域的视觉特征。

可选地,如图8所示,步骤s105中具体包括以下步骤s601~s602:

s601,将确定目标区域后的原始输入图像作为查询图像输入到视觉特征提取模型中。

基于cdvs(compactdescriptorsforvisualsearch,面向视觉搜索的紧凑描述子)技术构建视觉特征提取模型,该技术能够实现在android和ios提取目标的视觉特征,特征大小小于4kb。

s602,提取查询图像的视觉特征。

同时提取原始输入图像中目标区域的全局特征和局部特征。视觉特征包括全局特征和局部特征,两种特征是对图像的不同描述方式,全局特征短,是对图像的整体描述,对图像的描述性不好;局部特征长,是对图像的细节描述,对图像的描述性好。

s106,将视觉特征与原始输入图像的详细类别信息相匹配。

将全局特征、局部特征和相对应的原始输入图像的详细类别信息相匹配,输入到数据库中。为了能够覆盖尽量多的视频场景和商品,本发明实施例针对所有的目标和场景进行了聚类分析,归纳出1000大类的商品大类列表数据库,该数据库中包括商品的全局特征、局部特征、对应的类别信息及详细类别信息。

将原始图片输入到构建好的目标检测识别模型中,得到原始图片的类别信息,然后提取原始图片中目标区域的全局特征和局部特征,先用全局特征在预先建立的商品大类列表数据库中进行大规模检索,将全局特征与数据库中已经提取好的全局特征进行对比,得到全局特征匹配概率,若匹配概率高于预设阈值,说明原始图像与数据库中的图像相似;再进行原始图片的局部特征和与全局特征相对应的局部特征的对比,得到局部特征匹配概率,按从高到低的顺序排列,选择局部特征匹配概率最高的局部特征,在数据库中获取对应的详细类别信息,即原始图片的详细类别信息。由于数据库中存储了1000类商品信息,数量庞大,因此在服务器端构建了一个基于cdvs图像特征编码及大规模视觉特征索引技术支持百万规模图像数据量的大规模视觉搜索引擎,引擎支持首先按照类别信息进行视觉特征筛选,基于视觉特征对筛选后的结果进行二次匹配,获取所属大类内与目标视觉特征最相近的广告商品信息。

由于全局特征相对于局部特征更短,在大规模检索时使用全局特征可以提高检索效率。理论上有出现两个或多个局部特征的局部特征匹配概率最大值相同的情况,但实际应用中除非这些图像都是同样的原图,不然不会出现这种情况。应对理论情况的方式是,按照局部特征放入数据库的顺序,将局部特征匹配概率最大值相同的两个或者多个局部特征进行排序,选取排列第一位的局部特征所对应的详细类别信息即可。

在本发明实施例中,对新目标的添加,只需将提取的视觉特征入库即可,不需要反复地训练目标检测识别模型,扩展周期短,可扩展性强。

本发明实施例提供了一种基于物体检测和特征搜索的精确目标识别的方法及系统,如图9所示,该系统包括:目标检测模块1,获取原始输入图像,通过cnn卷积神经网络得到第一特征图组;对第一特征图组依次进行重采样和拼接操作,得到第二特征图组;将第二特征图组映射到原始输入图像中,对原始输入图像进行预测框的位置检测,得到原始输入图像的预测框;判断预测框是否为目标区域,若是,则获取目标区域中的类别信息;目标特征提取模块2,用于提取目标区域的视觉特征;目标特征搜索模块3,用于将视觉特征与原始输入图像的详细类别信息相匹配。

重采样包括上采样和下采样,目标检测模块1具体用于对第一特征图组进行下采样,得到第三特征图组;对第三特征图组中最大尺度特征图之外的特征图进行上采样,得到第四特征图组;将第三特征图组和第四特征图中具有相同尺度的特征图分别进行拼接,得到第二特征图组。

目标检测模块1还具体用于基于第二特征图组的尺度在原始输入图像上划分网格;将第二特征图组中的各特征图分别映射到原始输入图像的网格中;在网格上至少生成一个预测框;基于边界框回归模型计算预测框的修正位置,得到预测框的修正值;基于预测框和预测框的修正值,得到原始输入图像的预测框的中心位置。

目标特征提取模块2具体用于将确定目标区域后的原始输入图像作为查询图像输入到视觉特征提取模型中;提取查询图像的视觉特征。

基于上述分析可知,与相关技术中的单纯使用基于深度学习的检测技术相比,本发明实施例提供的基于物体检测和特征搜索的精确目标识别的方法及系统方法利用物体检测和特征搜索相结合的方法,实现目标的精确识别,可快速添加新目标,具有良好的可扩展性。

本发明实施例所提供的进行基于物体检测和特征搜索的精确目标识别的方法及系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

本发明实施例所提供的基于物体检测和特征搜索的精确目标识别的装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。

在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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