细粒度车辆图像检索方法、装置及设备与流程

文档序号:20617519发布日期:2020-05-06 20:21阅读:265来源:国知局
细粒度车辆图像检索方法、装置及设备与流程

本发明涉及图像检索技术,特别涉及一种细粒度车辆图像检索方法、一种细粒度车辆图像检索装置、一种细粒度车辆图像检索设备及对应的存储介质。



背景技术:

车辆图像检索是通过输入车辆的图像来检索相似图像的一种技术,其主要涉及图像车辆特征提取以及图像车辆特征相似度分析这两大部分。细粒度图像识别是在于寻找图像中存在细微差别的局部区域特征,可以识别一个大类中的不同小类。将细粒度图像识别技术用于车辆图像检索中,可以提取图像细粒度特征并对图像细粒度特征相似性进行分析。

现有的细粒度图像检索技术大多需要先标注图像类别或选框标注对象位置,再输入典型神经网络模型提取图像细粒度特征,并将其与参照图像特征进行相似度比较,其存在计算复杂,计算耗时长以及识别不准确的问题。



技术实现要素:

本发明实施方式的目的是提供一种细粒度车辆图像检索方法及装置,以至少解决现有技术中存在的识别耗时长和识别正确率低的问题。

为了实现上述目的,本发明提供一种细粒度车辆图像检索方法,所述检索方法包括:

将待检索图像和对比图像输入至训练好的细粒度神经网络模型中;

得到所述待检索图像的目标对象特征和对比图像的目标对象特征;

比对所述待检索图像的目标对象特征与对比图像的目标对象特征;

当比对的结果大于设定第一阈值时,输出所述对比图像作为检索结果;

所述训练好的细粒度神经网络模型,包括:

采用标注了多尺度目标区域的训练数据对细粒度神经网络模型进行训练。

可选的,所述细粒度神经网络模型以vgg-m或alex-net模型为基础,并采用全局平均池化层替代所述vgg-m或alex-net模型中的全连接层。

可选的,所述标注了多尺度目标区域的训练数据,包括:

将作为训练数据的图像中的检测目标区域分为m个尺度,m≥2,其中,最中心的尺度区域设为p0区域,最大的尺度区域为完整的目标区域,设为pm区域,其余m-2个尺度的目标区域根据设定的坐标间隔进行分割;

并根据计算所得的每个尺度目标区域对应的坐标值对所述m个尺度目标区域进行标注。

可选的,在对所述训练数据进行多尺度目标区域标注之后,还包括对所述训练数据根据以下条件中的至少一种进行筛选:

设定候选框中包含检测目标物体的得分概率分数值;

所述训练数据中图像的所述m个尺度目标区域的中心点的重合度。

可选的,所述得到所述待检索图像的目标对象特征和对比图像的目标对象特征,包括以下步骤:

通过所述训练好的细粒度神经网络模型的最后一层激活卷积层从输入图像中提取图像特征后,输出n个二维特征映射,每个所述二维特征映射对应于多个激活响应的特征显著性区域;

将所述n个二维特征映射进行叠加,选取叠加后激活响应高于设定第二阈值的区域,得到所述输入图像对应的掩映图;

调整所述掩映图的大小至与所述输入图像大小相同,并将所述掩映图覆盖到所述输入图像上;

选取所述掩映图中激活响应高于所述设定第二阈值的多个区域中的面积最大的区域,所述面积最大的区域在所述输入图像中的对应区域即为图像主要目标对象位置,所述激活响应特征即为所述目标对象特征。

可选的,所述将所述n个二维特征映射进行叠加,包括:

选取三维卷积中的深度方向进行累加,得到深度累加值,所述深度累加值用于与所述设定第二阈值进行比较。

可选的,所述比对所述待检索图像的目标对象特征与对比图像的目标对象特征,包括:

将所述目标对象特征进行降维后,再进行比对。

在本发明的第二方面,还提供了一种细粒度车辆图像检索装置,所述检索装置包括:

图像输入模块,用于将待检索图像和对比图像输入至训练好的细粒度神经网络模型中;

特征提取模块,用于得到所述待检索图像的目标对象特征和对比图像的目标对象特征;

特性比对模块,用于比对所述待检索图像的目标对象特征与对比图像的目标对象特征;

检索结果输出模块,用于当比对的结果大于设定第一阈值时,输出所述对比图像;

所述训练好的细粒度神经网络模型,包括:

采用标注了多尺度目标区域的训练数据对细粒度神经网络模型进行训练。

在本发明的第三方面,还提供了一种细粒度车辆图像检索设备,包括至少一个处理器、以及与所述处理器连接的至少一个存储器及总线;其中,所述处理器及存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行前述的细粒度车辆图像检索方法。

在本发明的第四方面,还提供了一种存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前述的细粒度车辆图像检索方法。

本发明上述技术方案通过采用神经网络模型自动定位图像对象的方式,通过深度学习提取图像细粒度特征,并与参照图像特征进行相似度比较,识别与参照图像对象同类的图像。相比于现有技术,减少了需预先标注图像类别或选框标注对象位置的工作量,节省人力成本,提高了识别效率。本发明采用全局平均池化取代全连接层的神经网络模型,减少了模型参数数量,提高了运算速度,更适用于大规模图像集的检索识别。

本发明实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施方式,但并不构成对本发明实施方式的限制。在附图中:

图1是本发明一种实施方式提供的细粒度车辆图像检索方法的示意图;

图2是本发明一种实施方式提供的细粒度车辆图像检索方法中的海伦约束的示意图;

图3是本发明一种实施方式提供的细粒度车辆图像检索装置的示意图;

图4是本发明一种实施方式提供的细粒度车辆图像检索设备的示意图。

具体实施方式

以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

在本发明实施方式中,在未作相反说明的情况下,使用的方位词如“上、下、顶、底”通常是针对附图所示的方向而言的或者是针对竖直、垂直或重力方向上而言的各部件相互位置关系描述用词。

图1是本发明一种实施方式提供的细粒度车辆图像检索方法的示意图,如图1所示,一种细粒度车辆图像检索方法,所述检索方法包括:

将待检索图像和对比图像输入至训练好的细粒度神经网络模型中;

得到所述待检索图像的目标对象特征和对比图像的目标对象特征;

比对所述待检索图像的目标对象特征与对比图像的目标对象特征;

当比对的结果大于设定第一阈值时,输出所述对比图像作为检索结果;

所述训练好的细粒度神经网络模型,包括:

采用标注了多尺度目标区域的训练数据对细粒度神经网络模型进行训练。

如此,本发明的实施方式采用细粒度神经网络模型,通过深度学习提取图像细粒度特征,并与待检索图像特征进行相似度比较,识别与待检索图像对象同类的对比图像。相比于现有技术,减少了需预先标注图像类别或选框标注对象位置的工作量,降低了数据处理成本,提高了识别效率,使其更适用于大规模图像集的检索识别。

具体的,由于细粒度神经网络具有准确定位到具有分辨力的关键区域,以及从检测到的关键区域中提取有效特征进行分类等优势,广泛应用于图像中的细节识别。将其应用于车辆识别领域,不仅能够得到车辆的品牌信息,还能得到车型信息。采用标注了多尺度目标区域的训练数据对细粒度神经网络模型进行训练,能够使神经网络模型自动定位图像对象,还能够减少需预先标注图像类别或选框标注对象位置的工作量。通过提取到的两者图像的目标对象特征进行比对,能够提升比对精度以及比对效率。

在本发明提供的一种实施方式中,所述细粒度神经网络模型以vgg-m或alex-net模型为基础,并采用全局平均池化层替代所述vgg-m或alex-net模型中的全连接层。具体地,先构建一个细粒度神经网络模型,该模型以现有的细粒度神经网络模型为基础,比如vgg-m或alex-net模型,并对其进行以下改进:并采用全局平均池化层替代所述vgg-m或alex-net模型中的全连接层,此处改进的有益效果在于,能够直接融合从激活的卷积特征映射中提取的图像特征,减少了模型的参数数量,提高神经网络的运算速度。在构建好细粒度神经网络模型后,需要对其进行训练。常用imagenet数据集对其进行预训练,为了提升训练的精度和效果,需要对训练集进行进一步处理。

在本发明提供的一种实施方式中,所述标注了多尺度目标区域的训练数据,包括:将作为训练数据的图像中的检测目标区域分为m个尺度,m≥2,其中,最中心的尺度区域设为p0区域,最大的尺度区域为完整的目标区域,设为pm区域,其余m-2个尺度的目标区域根据设定的坐标间隔进行分割;并根据计算所得的每个尺度目标区域对应的坐标值对所述m个尺度目标区域进行标注。具体包括:为了微调多个区域尺度的ma-cnn的网络模型,需要进行对训练数据进行多尺度目标区域进行标注。以下以m=3为例,说明本实施方式。将检测的目标区域分为3个尺度,最中心的尺度区域为p0区域,中间的尺度为p1区域,最外围的部分为完整的目标区域。目标区域包含p1和p0区域,p1区域包含p0区域。其中p0的标注信息如式(1),中间部分p1的标注信息如式(2).其中x1,y1,x2,y2分别为目标物体最外围区域的左下角和右上角的横、纵坐标值。分别为目标物体中心部分p0标注信息的左下角和右上角的横、纵坐标值。分别为目标物体中心部分p1标注信息的左下角和右上角的横、纵坐标值。具体的标注效果如图2所示。

在本发明提供的一种实施方式中,在对所述训练数据进行多尺度目标区域标注之后,还包括对所述训练数据根据以下条件中的至少一种进行筛选:设定候选框中包含检测目标物体的得分概率分数值;所述训练数据中图像的所述m个尺度目标区域的中心点的重合度。对基于前述的实施方式中多尺度区域信息标注后的车辆图像数据,进行改进的海伦约束算法处理优化,采用神经网络模型自动定位图像对象的方式,使标注车辆信息定位更加准确,将处理后的车辆图像整理成数据集。图2是本发明一种实施方式提供的细粒度车辆图像检索方法中的海伦约束的示意图,如图2所示,具体如下:由于普通约束通常仅能确定各尺度区域的包含关系,而无法很好的将各尺度检测框中心点约束在同一个中心点,而将各尺度检测框中心点约束在同一个中心点可以求出检测位置更精确的检测框,平面上不在同一条直线上的三个点唯一确定一个外接圆,故而计算多尺度区域的中心点坐标,如式(5)为目标物体的检测中心坐标计算公式,如式(6)为目标物体中心部分p1检测框的中心坐标公式,如式(7)为目标物体中心部分p0检测框的中心坐标公式.式(8,(9),(10)为各中心坐标之间的距离公式。通过式(11),(12)计算连接各中心坐标的三角形的外接圆面积。设置面积s的最大值为120。即通过式(12)计算出的面积大小不能超过120,挑选faster-rcnn提取的候选框中包含物体得分概率分数排序靠前且满足海伦检测约束条件的目标物体和各尺度中心部分检测框。

采用前述的标注和筛选后的车辆数据集,该车辆数据集包含不同车辆属性的细粒度图像分类的车辆图像,对构造好的细粒度神经网络模型进行训练,调整神经网络的损失函数后,训练好整个神经网络,使整个网络能够准确识别车辆图像细粒度并提取相应特征。

在本发明提供的一种实施方式中,所述得到所述待检索图像的目标对象特征和对比图像的目标对象特征,包括以下步骤:

通过所述训练好的细粒度神经网络模型的最后一层激活卷积层从输入图像中提取图像特征后,输出n个二维特征映射,每个所述二维特征映射对应于多个激活响应的特征显著性区域;

将所述n个二维特征映射进行叠加,选取叠加后激活响应高于设定第二阈值的区域,得到所述输入图像对应的掩映图;

调整所述掩映图的大小至与所述输入图像大小相同,并将所述掩映图覆盖到所述输入图像上;

选取所述掩映图中激活响应高于所述设定第二阈值的多个区域中的面积最大的区域,所述面积最大的区域在所述输入图像中的对应区域即为图像主要目标对象位置,所述激活响应特征即为所述目标对象特征。

并进一步的,所述将所述n个二维特征映射进行叠加,包括:选取三维卷积中的深度方向进行累加,得到深度累加值,所述深度累加值用于与所述设定第二阈值进行比较。

具体步骤包括:首先将图像输入训练好的细粒度神经网络模型中,在通过该模型最后一层激活卷积层提取图像特征后,输出n个二维特征映射,每个特征映射分布式表示有多个特征显著性区域。假设给定尺寸h×w的输入图像在经过卷积后有h×w×d卷积特征,即卷积特征包含了一系列二维的特征映射s={sn}(n=1,···,d),sn尺寸为h×w。sn是第n通道的特征映射,即第n特征。

然后,将n个二维特征映射叠加,选取叠加后激活响应高于阈值的区域,此处的阈值为预先设定,得到一个总结特征掩映图;

经过激活函数激活的特征映射激活区域可以表示图像语义上有意义的部分,但是单个通道的激活区域并不能准确表示该图像有意义的语义部分,只有多个通道的同一区域都是激活区域,该激活区域才能确定为有意义部分,因此需要将多个通道同一区域叠加,增强激活区域的显著性。将n个二维特征映射叠加,即将h×w×d的三维卷积特征变成一个h×w的二维张量,在深度方向做加和,叠加后的总结特征表示为同时设定一个阈值α,构建一个和总结特征图a同样大小的掩映图m,则掩映图m可以表示为

接着,采用双三次插值的方法调整掩映图的大小,使其与输入图像同样大小,并将掩映图覆盖到输入图像上。

采用双三次插值的方法调整掩映图的大小具体为根据原图像距离某一像素m(x,y)最近的16个像素点的像素值作为计算目标图像对应像素点处像素值的参数,最近的16个像素点取其附近的4×4领域点a(x+xi,y+yj),其中i,j=0,1,2,3。利用bicubic函数求出16个像素点像素值的权重,目标图像像素点(x,y)的像素值为16个像素点的加权叠加。

构建一个bicubic函数

其中,s表示16个像素点中某一像素点a(x+xi,y+yj)映射到目标图像后到像素点的距离,w(s)表示该像素点所对应的权重值,则该点对目标图像对应像素点的贡献值为a(x+xi,y+yj)×w(xi)×w(yj),则的像素值为

最后,选取掩映图中所占面积最大的激活响应高于阈值的区域,即像素点连续为1的最大区域,该区域在输入图像中所对应的区域即为图像主要目标对象位置,激活响应特征即为目标对象的特征。作为优选的实施方式,此处选取所占面积最大区域采用泛洪填充算法(floodfill)。

具体地,选取掩映图中的一个像素点作为起始点,判断是否为1,是则标记,否则不标记,并以该起始点向周围像素点扩充,直至所有像素点都被标记,并重新选取未标记点作为起始点。最后结果选取标记连续像素最多的区域。该区域在输入图像中所对应的区域即为图像主要目标对象位置,激活响应特征即为目标对象的特征信息。

用标记连续像素最多区域定位所对应的输入图像主要目标对象位置,并提取该对象的特征信息。

在本发明提供的一种实施方式中,所述比对所述待检索图像的目标对象特征与对比图像的目标对象特征,包括:将所述目标对象特征进行降维后,再进行比对。步骤中所提取的图像主要目标对象特征可以采用奇异值分解、白化或主成分分析中的一种或几种方法进一步降低维度,消除冗余信息,减少计算成本。

其中,比对所述待检索图像的目标对象特征与对比图像的目标对象特征的具体步骤包括:将待识别的对比图像输入预训练好的细粒度神经网络模型中自动定位主要目标对象并提取目标对象特征,与待检索图像的目标对象特征比较,输出含有与待检索图像主要目标对象同类别对象的待识别图像。

细粒度神经网络模型自动定位待识别图像主要目标对象并提取目标对象特征的方法如前所述,此处不再重复。将提取的待识别图像对象特征信息与从待检索图像中提取的特征信息比较,输出含有与待检索图像主要目标对象同类别对象的对比图像。对比图像中提取的对象特征信息与待检索图像的目标对象特征信息的相似度计算,优选为余弦相似度算法来分析。具体公式如下:

计算得到的数值越小,相似度越高。当然,具体实施时也可根据其他图像相似度算法来分析,此实施方式不视为对此的限定。

前述步骤中所提取的图像主要目标对象特征信息包括对象细微的局部特征信息,根据这些细粒度级局部特征信息可以从图像集中识别与待检索图像主要目标对象同类别的图像。例如根据车辆的车形、颜色等细粒度特征,识别图像集中与参照图像中的车辆同一型号的车辆图像。

图3是本发明一种实施方式提供的细粒度车辆图像检索装置的示意图,如图3所示,本发明提供的一种实施方式中,还提供了一种细粒度车辆图像检索装置,所述检索装置包括:

图像输入模块,用于将待检索图像和对比图像输入至训练好的细粒度神经网络模型中;

特征提取模块,用于得到所述待检索图像的目标对象特征和对比图像的目标对象特征;

特性比对模块,用于比对所述待检索图像的目标对象特征与对比图像的目标对象特征;

检索结果输出模块,用于当比对的结果大于设定第一阈值时,输出所述对比图像;

所述训练好的细粒度神经网络模型,包括:采用标注了多尺度目标区域的训练数据对细粒度神经网络模型进行训练。

本实施方式提供的装置中的功能模块的设置和实施的细节和有益效果,参照前述的方法,此处不再赘述。

图4是本发明一种实施方式提供的细粒度车辆图像检索设备的示意图,如图4所示,本发明提供的一种实施方式中,还提供了一种细粒度车辆图像检索设备,包括至少一个处理器、以及与所述处理器连接的至少一个存储器及总线;其中,所述处理器及存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行前述的细粒度车辆图像检索方法。其中,处理器可以包括但不限于通用处理器、专用处理器、常规处理器、多个微处理器、控制器、微控制器、专用集成电路(asic)、现场可编程门阵列(fpga)电路、其他任何类型的集成电路(ic)以及状态机等等。在常用的场景中,该装置优选为服务器。

本发明提供的一种实施方式中,还提供了一种存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前述的细粒度车辆图像检索方法。

通过本发明上述技术方案,基于采用神经网络模型自动定位图像对象的方式,通过深度学习提取图像细粒度特征,并与参照图像特征进行相似度比较,识别与参照图像对象同类的图像。相比于现有技术,减少了需预先标注图像类别或选框标注对象位置的工作量,节省成本,提高了效率。并采用全局平均池化取代全连接层的神经网络模型,减少了模型参数数量,提高了运算速度,更适用于大规模图像集的检索识别。

以上结合附图详细描述了本发明的可选实施方式,但是,本发明实施方式并不限于上述实施方式中的具体细节,在本发明实施方式的技术构思范围内,可以对本发明实施方式的技术方案进行多种简单变型,这些简单变型均属于本发明实施方式的保护范围。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

在一个典型的配置中,设备包括一个或多个处理器(cpu)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。

以上结合附图详细描述了本发明的可选实施方式,但是,本发明实施方式并不限于上述实施方式中的具体细节,在本发明实施方式的技术构思范围内,可以对本发明实施方式的技术方案进行多种简单变型,这些简单变型均属于本发明实施方式的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施方式对各种可能的组合方式不再另行说明。

本领域技术人员可以理解实现上述实施方式的方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本发明各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施方式的思想,其同样应当视为本发明实施方式所公开的内容。

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