图像检索方法和图像检索装置与流程

文档序号:23305655发布日期:2020-12-15 11:35阅读:126来源:国知局
图像检索方法和图像检索装置与流程

本公开涉及信息处理领域,特别涉及一种图像检索方法和图像检索装置。



背景技术:

随着社会的不断发展,以及数字信息采集工具和存储设备的成本日益降低,日常生活中充斥着海量的多媒体图像数据,例如电商商品图像、建筑设计图像、新闻娱乐数字媒体图像、婚纱摄影图像、教学指导图像等等。如何从大量的数据中高效准确地获取我们所需要的图像信息,即图像检索技术,在生活中具有广泛的实用价值和意义。

目前,在图像检索技术中常用的技术是基于内容的图像检索,从图像中提取出有价值的图像特征向量,用于后续的距离计算和匹配识别,从而达到检索的目的。例如sift(scaleinvariantfeaturetransform,尺度不变特征变换)、surf(speeduprobustfeature,加速稳健特征)、hog(histogramoforientedgradient,方向梯度直方图)等方法都是从图像中获取梯度特征或其他图像特征向量,然后利用bow(bag-of-words,词袋)模型对图像进行整体表达,再通过距离计算和图像匹配以检索出相应的目标图像。



技术实现要素:

发明人通过研究发现,传统神经网络中存在大量的神经元,导致神经网络的运算效率较低,无法在实际场景下广泛推广。

为此,本公开提供一种有效提升图像检索效率的方案。

根据本公开实施例的第一方面,提供一种图像检索方法,包括:利用卷积处理层对待检索图像进行处理,以得到第一处理结果;利用全连接处理层对所述第一处理结果进行处理,以得到第二处理结果;利用特征整合层对所述第二处理结果进行处理,以得到图像特征;利用所述图像特征进行检索,以得到相应的目标图像;其中,所述全连接处理层包括多个全连接层,所述第二处理结果包括每个全连接层中的预定数量个神经元的输出结果。

在一些实施例中,利用全连接处理层对所述第一处理结果进行处理包括:利用第一个全连接层对所述第一处理结果进行全连接处理;利用第i个全连接层对第i-1个全连接层的输出进行全连接处理,1<i<n,n为所述全连接处理层中的全连接层个数;利用第n个全连接层对第n-1个全连接层的输出进行全连接处理;在每个全连接层中,将随机选择的预定数量个神经元的输出发送给所述特征整合层中的各神经元。

在一些实施例中,在每个全连接层中,将随机选择的预定数量个神经元的输出发送给所述特征整合层中的各神经元包括:在每个全连接层中,确定被舍弃的神经元个数w;在1至n的区间内生成一个随机整数r,以确定对应的神经元ar,n为所述全连接层的神经元数量;若所述神经元ar未出现在舍弃列表中,则将所述神经元ar列入所述舍弃列表中;若所述舍弃列表中的神经元个数未达到所述神经元个数w,则重复执行在1至n的区间内生成一个随机整数r的步骤;若所述舍弃列表中的神经元个数已达到所述神经元个数w,则将所述全连接层中未包括在所述舍弃列表中的神经元的输出发送给所述特征整合层中的各神经元。

在一些实施例中,在每个全连接层中,确定被舍弃的神经元个数w包括:在每个全连接层中,根据所述全连接层中的神经元数量n和预设的选择概率p确定参与选择的神经元数量m;根据所述全连接层中的神经元数量n和所述神经元数量m确定被舍弃的神经元个数w。

在一些实施例中,利用确定参与选择的神经元数量m,为向下取整函数;利用n-m确定被舍弃的神经元个数w。

在一些实施例中,利用特征整合层对所述第二处理结果进行处理包括:利用特征整合层中的各神经元根据所述第二处理结果中的各数据项的加权平均值进行整合处理。

在一些实施例中,将训练数据输入到卷积处理层中,以得到对应的图像特征;利用所得到的图像特征进行检索,以得到对应的目标图像;根据所得到的目标图像与同所述训练数据相对应的训练图像的偏差,调整所述卷积处理层、所述全连接处理层和所述特征整合层的参数,以便使所述偏差在预定范围内。

根据本公开实施例的第二方面,提供一种图像检索装置,包括:卷积处理模块,被配置为利用卷积处理层对待检索图像进行处理,以得到第一处理结果;全连接处理模块,被配置为利用全连接处理层对所述第一处理结果进行处理,以得到第二处理结果,其中,所述全连接处理层包括多个全连接层,所述第二处理结果包括每个全连接层中的预定数量个神经元的输出结果;特征整合处理模块,被配置为利用特征整合层对所述第二处理结果进行处理,以得到图像特征;检索模块,被配置为利用所述图像特征进行检索,以得到相应的目标图像。

在一些实施例中,全连接处理模块被配置为利用第一个全连接层对所述第一处理结果进行全连接处理,利用第i个全连接层对第i-1个全连接层的输出进行全连接处理,1<i<n,n为所述全连接处理层中的全连接层个数,利用第n个全连接层对第n-1个全连接层的输出进行全连接处理,在每个全连接层中,将随机选择的预定数量个神经元的输出发送给所述特征整合层中的各神经元。

在一些实施例中,全连接处理模块被配置为在每个全连接层中,确定被舍弃的神经元个数w,在1至n的区间内生成一个随机整数r,以确定对应的神经元ar,n为所述全连接层的神经元数量,若所述神经元ar未出现在舍弃列表中,则将所述神经元ar列入所述舍弃列表中,若所述舍弃列表中的神经元个数未达到所述神经元个数w,则重复执行在1至n的区间内生成一个随机整数r的操作,若所述舍弃列表中的神经元个数已达到所述神经元个数w,则将所述全连接层中未包括在所述舍弃列表中的神经元的输出发送给所述特征整合层中的各神经元。

在一些实施例中,全连接处理模块被配置为在每个全连接层中,根据所述全连接层中的神经元数量n和预设的选择概率p确定参与选择的神经元数量m,根据所述全连接层中的神经元数量n和所述神经元数量m确定被舍弃的神经元个数w。

在一些实施例中,全连接处理模块被配置为利用确定参与选择的神经元数量m,为向下取整函数,利用n-m确定被舍弃的神经元个数w。

在一些实施例中,特征整合处理模块被配置为利用特征整合层中的各神经元根据所述第二处理结果中的各数据项的加权平均值进行整合处理。

在一些实施例中,上述装置还包括:训练模块,被配置为将训练数据输入到卷积处理层中,以得到对应的图像特征,利用所得到的图像特征进行检索,以得到对应的目标图像,根据所得到的目标图像与同所述训练数据相对应的训练图像的偏差,调整所述卷积处理层、所述全连接处理层和所述特征整合层的参数,以便使所述偏差在预定范围内。

根据本公开实施例的第三方面,提供一种图像检索装置,包括:存储器,被配置为存储指令;处理器,耦合到存储器,处理器被配置为基于存储器存储的指令执行实现如上述任一实施例涉及的方法。

根据本公开实施例的第四方面,提供一种计算机可读存储介质,其中,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如上述任一实施例涉及的方法。

通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。

附图说明

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

图1为本公开一个实施例的图像检索方法的流程示意图;

图2为本公开一个实施例的全连接处理层的结构示意图;

图3为本公开一个实施例的神经元选择的流程示意图;

图4为本公开一个实施例的图像检索装置的结构示意图;

图5为本公开另一个实施例的图像检索装置的结构示意图;

图6为本公开又一个实施例的图像检索装置的结构示意图。

具体实施方式

下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。

除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。

在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

图1为本公开一个实施例的图像检索方法的流程示意图。在一些实施例中,图像检索方法步骤可由图像检索装置执行。

在步骤101,利用卷积处理层对待检索图像进行处理,以得到第一处理结果。

在一些实施例中,卷积处理层中包括多个卷积层,每个卷积层后都配置一个池化层,以便对卷积结果进行池化处理,从而减小卷积结果的数据量。

在步骤102,利用全连接处理层对第一处理结果进行处理,以得到第二处理结果。

这里需要说明的是,全连接处理层包括多个全连接层,第二处理结果包括每个全连接层中的预定数量个神经元的输出结果。

在一些实施例中,利用第一个全连接层对第一处理结果进行全连接处理。利用第i个全连接层对第i-1个全连接层的输出进行全连接处理,1<i<n,n为全连接处理层中的全连接层个数。利用第n个全连接层对第n-1个全连接层的输出进行全连接处理。在每个全连接层中,将随机选择的预定数量个神经元的输出发送给特征整合层中的各神经元。

图2为本公开一个实施例的全连接处理层的结构示意图。如图2所示,全连接处理层包括3个全连接层。

在第一个全连接层中,各神经元a1至a4分别与第二个全连接层中的神经元b1至b4全连接。此外神经元a2至a4分别与特征整合层中的各神经元d1至d4全连接。

在第二个全连接层中,各神经元b1至b4分别与第三个全连接层中的神经元c1至c4全连接。此外神经元b1、b3和b4分别与特征整合层中的各神经元d1至d4全连接。

在第三个全连接层中,神经元c1、c2和b4分别与特征整合层中的各神经元d1至d4全连接。

在步骤103,利用特征整合层对第二处理结果进行处理,以得到图像特征。

在一些实施例中,利用特征整合层中的各神经元根据所述第二处理结果中的各数据项的加权平均值进行整合处理。

在步骤104,利用图像特征进行检索,以得到相应的目标图像。

在本公开上述实施例提供的图像检索方法中,全连接处理层包括多个全连接层,第二处理结果包括每个全连接层中的预定数量个神经元的输出结果。由于每个全连接层中仅有部分神经元的输入结果发送给特征整合层,从而有效减小了特征整合层的数据处理量,有效提升了图像检索效率。

图3为本公开一个实施例的神经元选择的流程示意图。在一些实施例中,神经元选择方法步骤可由图像检索装置执行。

在步骤301,在每个全连接层中,确定被舍弃的神经元个数w。

在一些实施例中,在每个全连接层中,根据全连接层中的神经元数量n和预设的选择概率p确定参与选择的神经元数量m。根据全连接层中的神经元数量n和神经元数量m确定被舍弃的神经元个数w。

例如,利用确定参与选择的神经元数量m,为向下取整函数。此外,利用n-m确定被舍弃的神经元个数w。

在步骤302,在1至n的区间内生成一个随机整数r,以确定对应的神经元ar,n为全连接层的神经元数量。

在步骤303,判断神经元ar是否出现在舍弃列表中。

这里需要说明的是,在初始状态下,舍弃列表为空。

若神经元ar未出现在舍弃列表中,则执行步骤304;若神经元ar已出现在舍弃列表中,则重复执行步骤302。

在步骤304,将神经元ar列入舍弃列表中。

在步骤305,判断舍弃列表中的神经元个数是否达到神经元个数w。

若舍弃列表中的神经元个数未达到神经元个数w,则重复执行步骤302;若舍弃列表中的神经元个数已达到神经元个数w,则执行步骤306。

步骤306,将全连接层中未包括在舍弃列表中的神经元的输出发送给特征整合层中的各神经元。

例如,如图2所示,每个全连接层有4个神经元,预设的选择概率p为0.8。由此可知参与选择的神经元数量m为即被舍弃的神经元个数w为4-3=1。

对于第一个全连接层来说,利用常规的随机算法,在[1,4]的区间内得到一个随机整数r,例如r=1,则其对应的神经元为a1。由于当前舍弃列表为空,则将a1放入舍弃列表中。由于当前舍弃列表中的神经元数量为1,与被舍弃的神经元个数w相同,因此就停止处理。即,在第一个全连接层中,舍弃神经元a1,仅将神经元a2至a4分别与特征整合层中的各神经元d1至d4全连接。

基于相同的方式,在第二个全连接层中舍弃神经元b2,在第三个全连接层中舍弃神经元c3。

在一些实施例中,如图2所示,设第一层全连接层a2至a4的输出分别为x1、x2和x3。设第二层全连接层b1、b3和b4的输出分别为x4、x5和x6。设第三层全连接层c1、c2和c4的输出分别为x7、x8和x9。特征整合层中的各神经元d1至d4的相应值分别为y1至y4。

设x1与y1至y4的对应权重参数分别为w11至w14,设x2与y1至y4的对应权重参数分别为w21至w24,设x3与y1至y4的对应权重参数分别为w31至w34。以此类推,x4至x9分别与y1至y4的也配置有相应的权重参数。

如图2所示,x1至x9与y1的连接权重分别为w11至w91。则相应的融合方式为:

g(x1×w11+x2×w21+x3×w31+x4×w41+x5×w51+x6×w61+x7×w71+x8×w81+x9×w91+bias1)=y1

其中g(.)为激活函数,bias1为偏置参数。

在一些实施例中,激活函数如下所示。

同理,x1至x9与y2的连接权重分别为w12至w92,则相应的融合方式为:

g(x1×w12+x2×w22+x3×w32+x4×w42+x5×w52+x6×w62+x7×w72+x8×w82+x9×w92+bias2)=y2

此外,x1至x9与y3的连接权重分别为w13至w93,则相应的融合方式为:

g(x1×w13+x2×w23+x3×w33+x4×w43+x5×w53+x6×w63+x7×w73+x8×w83+x9×w93+bias3)=y3

x1至x9与y4的连接权重分别为w14至w94,则相应的融合方式为:

g(x1×w14+x2×w24+x3×w34+x4×w44+x5×w54+x6×w64+x7×w74+x8×w84+x9×w94+bias4)=y4

其中bias2至bias4为相应的偏置参数。

上述四个融合公式用矩阵的形式表示如下:

由此,通过将所选择的9个神经元的输出值经过权重参数和偏置值进行计算,并经过激活函数g(.)的映射,得到一个4维向量[y1,y2,y3,y4],即特征整合层所输出的特征向量。

这里需要说明的是,在p取0.8的情况下,三个全连接层仅有0.2×0.2×0.2=0.004的概率丢失信息。考虑到丢失的信息可能是已经存在的重复信息,因此三个全连接层中至少有99.6%的信息能够被整合到特征整合层中。由此不会丢失有价值的信息,同时还能有效减小计算量。当然,p值可根据需要进行优化调整。

在一些实施例中,将训练数据输入到卷积处理层中,以得到对应的图像特征。利用所得到的图像特征进行检索,以得到对应的目标图像。根据所得到的目标图像与同训练数据相对应的训练图像的偏差,调整卷积处理层、全连接处理层和特征整合层的参数,以便使偏差在预定范围内。

例如,通过利用ilsvrc-2012图像库进行训练。为了提高图像识别和检索的普适性,从flickr上随机获取25000张图像组成干扰图像库,干扰图像库中包含各种各样的图像,其中包含着极其广泛的丰富语义内容,以用来进行普适性训练。

图4为本公开一个实施例的图像检索装置的结构示意图。如图4所示,图像检索装置包括卷积处理模块41、全连接处理模块42、特征整合处理模块43和检索模块44。

卷积处理模块41被配置为利用卷积处理层对待检索图像进行处理,以得到第一处理结果。

在一些实施例中,卷积处理层中包括多个卷积层,每个卷积层后都配置一个池化层,以便对卷积结果进行池化处理,从而减小卷积结果的数据量。

全连接处理模块42被配置为利用全连接处理层对第一处理结果进行处理,以得到第二处理结果,其中,全连接处理层包括多个全连接层,第二处理结果包括每个全连接层中的预定数量个神经元的输出结果。

在一些实施例中,全连接处理模块42被配置为利用第一个全连接层对第一处理结果进行全连接处理,利用第i个全连接层对第i-1个全连接层的输出进行全连接处理,1<i<n,n为全连接处理层中的全连接层个数,利用第n个全连接层对第n-1个全连接层的输出进行全连接处理,在每个全连接层中,将随机选择的预定数量个神经元的输出发送给特征整合层中的各神经元。相应的示意图如图2所示。

特征整合处理模块43被配置为利用特征整合层对第二处理结果进行处理,以得到图像特征。

在一些实施例中,特征整合处理模块43被配置为利用特征整合层中的各神经元根据所述第二处理结果中的各数据项的加权平均值进行整合处理。

检索模块44被配置为利用图像特征进行检索,以得到相应的目标图像。

在本公开上述实施例提供的图像检索装置中,全连接处理层包括多个全连接层,第二处理结果包括每个全连接层中的预定数量个神经元的输出结果。由于每个全连接层中仅有部分神经元的输入结果发送给特征整合层,从而有效减小了特征整合层的数据处理量,有效提升了图像检索效率。

在一些实施例中,全连接处理模块42被配置为在每个全连接层中,确定被舍弃的神经元个数w,在1至的区间内生成一个随机整数r,以确定对应的神经元ar,n为所述全连接层的神经元数量,若神经元ar未出现在舍弃列表中,则将神经元ar列入舍弃列表中,若舍弃列表中的神经元个数未达到神经元个数w,则重复执行在1至n的区间内生成一个随机整数r的操作,若舍弃列表中的神经元个数已达到神经元个数w,则将全连接层中未包括在舍弃列表中的神经元的输出发送给特征整合层中的各神经元。

在一些实施例中,全连接处理模块42被配置为在每个全连接层中,根据全连接层中的神经元数量n和预设的选择概率p确定参与选择的神经元数量m,根据全连接层中的神经元数量n和神经元数量m确定被舍弃的神经元个数w。

例如,全连接处理模块42被配置为利用确定参与选择的神经元数量m,为向下取整函数,利用n-m确定被舍弃的神经元个数w。

图5为本公开另一个实施例的图像检索装置的结构示意图。

如图5所示,图像检索装置还包括训练模块45。训练模块45被配置为将训练数据输入到卷积处理层中,以得到对应的图像特征,利用所得到的图像特征进行检索,以得到对应的目标图像,根据所得到的目标图像与同训练数据相对应的训练图像的偏差,调整卷积处理层、全连接处理层和特征整合层的参数,以便使偏差在预定范围内。

图6为本公开又一个实施例的图像检索装置的结构示意图。如图6所示,图像检索装置包括存储器61和处理器62。

存储器61用于存储指令,处理器62耦合到存储器61,处理器62被配置为基于存储器存储的指令执行实现如图1或图3中任一实施例涉及的方法。

如图6所示,该图像检索装置还包括通信接口63,用于与其它设备进行信息交互。同时,该装置还包括总线64,处理器62、通信接口63、以及存储器61通过总线64完成相互间的通信。

存储器61可以包含高速ram存储器,也可还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。存储器61也可以是存储器阵列。存储器61还可能被分块,并且块可按一定的规则组合成虚拟卷。

此外处理器62可以是一个中央处理器cpu,或者可以是专用集成电路asic,或是被配置成实施本公开实施例的一个或多个集成电路。

本公开同时还涉及一种计算机可读存储介质,其中计算机可读存储介质存储有计算机指令,指令被处理器执行时实现如图1或图3中任一实施例涉及的方法。

在本公开中,由于每个全连接层中仅有部分神经元的输入结果发送给特征整合层,从而有效减小了特征整合层的数据处理量,有效提升了图像检索效率,便于在实际场景下广泛推广使用。

在一些实施例中,在上面所描述的功能单元模块可以实现为用于执行本公开所描述功能的通用处理器、可编程逻辑控制器(programmablelogiccontroller,简称:plc)、数字信号处理器(digitalsignalprocessor,简称:dsp)、专用集成电路(applicationspecificintegratedcircuit,简称:asic)、现场可编程门阵列(field-programmablegatearray,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。

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