本发明涉及神经网络、图像处理领域,特别涉及一种基于多个语义层次的图片检索方法及系统。
背景技术:
现如今用于图片检索的特征提取方法主要分为两种:基于传统特征以及基于卷积神经网络。其中,基于传统特征的方法由于图片特征都是手工设计的,表达能力很弱同时特征维度很高。此外,目前大多数基于卷积神经网络的方法是提取网络中的单层特征,其中全连接层的特征用得最多,而这些方法忽略了卷积特征图中丰富的局部信息,并且忽略了网络中低层特征图所包含的视觉信息。
具体而言,现有的用于图片检索的特征提取方法概括如下:
1,传统特征(sift)以及特征聚合(vlad,fishervector),缺点在于:特征维度高,特征表达能力弱,检索准确率低。
2,卷积神经网络(通过预训练以及全连接层特征),缺点在于:特征纬度高,特征缺乏局部信息,特征缺乏低层视觉信息。
技术实现要素:
本发明要解决的技术问题是,提供了提高图片检索的准确率同时保证高效率的基于多个语义层次的图片检索方法。
解决上述技术问题,本发明提供了一种基于多个语义层次的图片检索方法,包括如下步骤:
将待检索的图片输入一预训练模型,并输入所述图片的像素值和带有局部区域信息的候选区域,
在所述预训练模型的神经网络中,通过将所述图片中的所述候选区域映射到每一个卷积层输出的卷积特征图上后根据候选区域的大小自适应调整池化核的大小,得到相同维度的所述卷积特征图;
根据所述卷积特征图对低、中、高卷积层进行区域感知的多层次池化计算,再通过串联得到不同层次的特征融合;
根据特征融合结果,对图片进行检索。
本发明是在预训练模型的基础上,通过结合局部区域信息以及融合不同层特征,提高图片检索的准确性同时保证高效率。
更进一步,通过将所述图片中的所述候选区域映射到每一个卷积层输出的卷积特征图上的具体方法如下:
待检索的图片为原始图片,设原始图片的大小为:w*h,卷积特征图的维度为:w0*h0*c,每个区域对应输出的特征图大小为:wr*hr*c,对于一个原始图片的候选区域(x,y,w,h),进行如下的计算:
其中,
更进一步,根据候选区域的大小自适应地调整池化核的大小,得到相同维度的所述卷积特征图的方法为:
通过一个多尺度的池化计算提取候选区域不同位置的特征,再经过跨通道的归一化之后,最后通过相加操作得到最后的特征。
多尺度的池化计算中对于多尺度为:对同一个特征图用不同大小的核进行池化计算,使得得到的特征包含不同尺度的信息。
对于多通道的特征图而言,特征图中每个位置的特征都在多个通道之间进行归一化。
更进一步,所述多尺度的池化计算提取候选区域不同部件的特征的具体计算方法如下:
其中,
更进一步,所述不同层次特征融合单元中的多层次池化包括:卷积神经网络中的不同层以及卷积特征图中的不同局部区域。
更进一步,串联得到不同层次的特征融合时还包括:pca降维计算。
更进一步,所述候选区域包括:图片中包含的特定目标区域。
本发明还提供了一种基于多个语义层次的图片检索系统,包括:多层次池化单元和不同层次特征融合单元,
所述多层次池化单元,用以将待检索的图片输入一预训练模型,并输入所述图片的像素值和候选区域,
在所述预训练模型的神经网络中,通过将所述图片中的所述候选区域映射到每一个卷积层输出的卷积特征图上后根据候选区域的大小自适应地调整池化核的大小,得到相同维度的所述卷积特征图;
所述不同层次特征融合单元,用以根据所述卷积特征图对低、中、高卷积层进行区域感知的多层次池化计算,再通过串联得到不同层次的特征融合。
本发明还提供了一种检索系统,包括一检索候选集和所述的图片检索系统,并按照如下步骤操作:
初始化所述检索候选集,提取每张图片的特征后并储存;
通过将待检索的图片输入所述图片检索系统进行特征提取,
在所述检索候选集中计算待检索的图片与预置图片的欧式距离并排序,
返回得到相似图片的检索结果。
本发明的有益效果:
本发明是在预训练好的卷积神经网络模型基础上,通过引入局部区域候选框信息,并融合网络中不同层的特征(现有技术中仅为单层特征),来提取图片的特征,使得特征同时包含局部信息以及全局信息,同时包含视觉信息以及语义信息,从而提高图片检索的准确率,另外,单次的前馈计算操作保证了高效率。
此外,本发明还具备如下的优点:由于采用了结合局部区域信息的候选区域而准确率高。由于融合不同层的特征的多层次池化计算鲁棒性好。由于不同训练基于预训练模型,使得通用性好。由于在神经卷积网络中只有单次的前馈计算,从而整个检索过程速度得到有效地提高。
附图说明
图1是本发明一实施例中的方法流程示意图;
图2是本发明一实施例中的系统结构示意图;
图3是本发明的检索系统结构示意图;
图4是本发明中区域感知的多层次池化示意图;
图5是本发明中不同层次的特征融合示意图。
具体实施方式
现在将参考一些示例实施例描述本公开的原理。可以理解,这些实施例仅出于说明并且帮助本领域的技术人员理解和实施例本公开的目的而描述,而非建议对本公开的范围的任何限制。在此描述的本公开的内容可以以下文描述的方式之外的各种方式实施。
如本文中所述,术语“包括”及其各种变体可以被理解为开放式术语,其意味着“包括但不限于”。术语“基于”可以被理解为“至少部分地基于”。术语“一个实施例”可以被理解为“至少一个实施例”。术语“另一实施例”可以被理解为“至少一个其它实施例”。
在本申请中定义如下名词的含义:
多个语义层次,指的是卷积神经网络中不同层的输出特征所代表的语义不同,本申请中融合了不同层的特征,因此包含多个语义层次。
卷积特征图包括但不限于,卷积神经网络中卷积层输出的一系列特征。
候选区域包括但不限于,图片中可能包含特定目标的区域。
多层次包括但不限于,卷积神经网络中的不同层以及卷积特征图中的不同局部区域。
图1是本发明一实施例中的方法流程示意图,一种基于多个语义层次的图片检索方法,包括如下步骤:
步骤s100将待检索的图片输入一预训练模型,并输入所述图片的像素值和带有局部区域信息候选区域,
步骤s101在所述预训练模型的神经网络中,通过将所述图片中的所述候选区域映射到每一个卷积层输出的卷积特征图上后根据候选区域的大小自适应调整池化核的大小,得到相同维度的所述卷积特征图;
步骤s102根据所述卷积特征图对低、中、高卷积层进行区域感知的多层次池化计算,再通过串联得到不同层次的特征融合;
步骤s103根据特征融合结果,对图片进行检索。
通过上述步骤s100-步骤s103中的操作步骤可知,在本实施例中的步骤s100中引入了图片中候选区域的信息,并且融合了网络中不同层之间的特征,使得最后提取的特征同时包含低层视觉信息以及高层语义信息,大大提升了特征的鲁棒性,从而有效提升了检索准确率。同时,由于在上述步骤中只进行了单次的前馈计算,并且最后的特征经过了pca降维,从而保证了特征提取的效率。
作为本实施例中的优选,在步骤s101中,通过将所述图片中的所述候选区域映射到每一个卷积层输出的卷积特征图上的具体方法如下:
待检索的图片为原始图片,设原始图片的大小为:w*h,卷积特征图的维度为:w0*h0*c,每个区域对应输出的特征图大小为:wr*hr*c,对于一个原始图片的候选区域(x,y,w,h),进行如下的计算:
其中,
作为本实施例中的优选,根据候选区域的大小自适应地调整池化核的大小,得到相同维度的所述卷积特征图的方法为:
通过一个多尺度的池化计算提取候选区域不同位置的特征,再经过跨通道的归一化之后,最后通过相加操作得到最后的特征。
其中,所述多尺度的池化计算提取候选区域不同部件的特征的具体计算方法如下:
其中,
在本实施例中,通过局部区域信息的引入以及多层次的池化计算,有效地提升了特征的表达能力以及鲁棒性。
作为本实施例中的优选,在步骤s102中所述多层次池化包括:卷积神经网络中的不同层以及卷积特征图中的不同局部区域。
步骤s102中,由于卷积神经网络是一个分层次的结构,不同层的特征表达能力存在一定的差异,不同层之间的特征存在一定的互补性。而现有技术中基于卷积神经网络的方法都是提取单层全连接层的特征,因此,本实施例中通过融合不同层的特征来提升特征的表达能力。具体来说,同时对低层以及高层的卷积层进行区域感知的多层次池化,最后串联在一起并通过降维计算来实现特征的融合。
作为本实施例中的优选,在步骤s102中串联得到不同层次的特征融合时还包括:pca降维计算。
作为本实施例中的优选,在步骤s100中的所述候选区域包括:图片中包含的特定目标区域,候选区域带有局部区域信息。
图2是本发明一实施例中的系统结构示意图,一种基于多个语义层次的图片检索系统,包括:多层次池化单元1和不同层次特征融合单元2,所述多层次池化单元1,用以将待检索的图片输入一预训练模型,并输入所述图片的像素值和候选区域,在所述预训练模型的神经网络中,通过将所述图片中的所述候选区域映射到每一个卷积层输出的卷积特征图上后根据候选区域的大小自适应地调整池化核的大小,得到相同维度的所述卷积特征图;所述不同层次特征融合单元2,用以根据所述卷积特征图对低、中、高卷积层进行区域感知的多层次池化计算,再通过串联得到不同层次的特征融合。本实施例中多层次池化单元1由于采用了结合局部区域信息的候选区域而准确率高。不同层次特征融合单元2中由于融合不同层的特征的多层次池化计算鲁棒性好。多层次池化单元1中由于不同训练基于预训练模型,使得通用性好。由于在神经卷积网络中只有单次的前馈计算,从而整个检索过程速度得到有效地提高。
请参考图3是-图5,具体来说,如图5,对于任意一张输入图片及其候选区域框,分别选取网络中低层、中层以及高层的卷积层,进行如图4所示的区域感知的多尺度池化计算,其中公式
即采用三个不同的尺度,之后将不同层的特征串联在一起,并通过降维计算来融合,从而每一张图片都得到一个对应的特征向量。如图3所示,本实施例中的一种检索系统,包括一检索候选集和所述的图片检索系统,并按照如下步骤操作:初始化所述检索候选集,提取每张图片的特征后并储存;通过将待检索的图片输入所述图片检索系统进行特征提取,在所述检索候选集中计算待检索的图片与预置图片的欧式距离并排序,返回得到相似图片的检索结果。一个图像检索系统由候选集以及查询图片构成,可以事先对候选集中的每一张图片提取特征并存储起来,而对于一张输入的查询图片,首先提取其特征,再和候选集中的每张候选图片两两计算欧式距离,最后排序,实现检索功能。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
总体而言,本公开的各种实施例可以以硬件或专用电路、软件、逻辑或其任意组合实施。一些方面可以以硬件实施,而其它一些方面可以以固件或软件实施,该固件或软件可以由控制器、微处理器或其它计算设备执行。虽然本公开的各种方面被示出和描述为框图、流程图或使用其它一些绘图表示,但是可以理解本文描述的框、设备、系统、技术或方法可以以非限制性的方式以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其它计算设备或其一些组合实施。
此外,虽然操作以特定顺序描述,但是这不应被理解为要求这类操作以所示的顺序执行或是以顺序序列执行,或是要求所有所示的操作被执行以实现期望结果。在一些情形下,多任务或并行处理可以是有利的。类似地,虽然若干具体实现方式的细节在上面的讨论中被包含,但是这些不应被解释为对本公开的范围的任何限制,而是特征的描述仅是针对具体实施例。在分离的一些实施例中描述的某些特征也可以在单个实施例中组合地执行。相反对,在单个实施例中描述的各种特征也可以在多个实施例中分离地实施或是以任何合适的子组合的方式实施。