一种图像检索方法及服务器与流程

文档序号:12719698阅读:322来源:国知局
一种图像检索方法及服务器与流程

本发明涉及通信技术领域,特别涉及一种图像检索方法。本发明同时还涉及一种服务器。



背景技术:

基于内容的图像检索是根据图像的视觉内容检索图像的技术,主要包括特征提取和特征相似性匹配两个过程。由于技术日臻成熟,图像检索技术在人脸比对、车辆搜索等“以图搜图”等领域有着越来越广泛的应用。

随着海量图像数据的采集与分析,图像数据库规模也越来越庞大,对检索效率提出越来越高的要求。为了加快图像检索的速度,现有技术中通常将特征空间分解为多个低维子空间的笛卡尔乘积,然后单独地对每一个子空间进行量化,利用量化空间的非对称距离进行相似性搜索。或者是该方式在提取图像特征之后对特征数据库中的进行近邻检索。

发明人在实现本申请的过程中发现,上述现有技术分别存在以下缺点:

对于利用特征量化后的非对称距离进行相似性比较的方案会一定程度增加相似距离误差,影响相似性排序,导致最相似图像排序未被检索出来;而在提取图像特征之后对特征数据库中的进行近邻检索的方案对误操作过程要求较高。

由此可见,如何在保证检索精度的前提下提高图像检索速度,成为本领域技术人员亟待解决的技术问题。



技术实现要素:

本发明提供了一种图像检索方法,用以解决现有技术中无法在保证精度的同时对图像进行快速检索的问题,该方法应用于图像检索服务器,包括如下步骤:

根据图像库中所有图像的原始特征生成第一数量的聚类层,各所述聚类层所包含第二数量的聚类,所述聚类层根据所述原始特征的排名在阈值之前的特征值所对应的正交特征依次分解生成,所述特征值和所述正交特征由所述原始特征在经过指定方式的处理后生成;

当接收到待查询图像时,根据所述待查询图像的对比特征提取所述第一数量的子特征,所述子特征根据所述对比特征中特征值排名在所述阈值之前的对比特征依次分解生成,各所述子特征与各所述聚类层在层次顺序上一一对应;

将各所述聚类层中与对应的所述子特征距离接近的聚类设置为特殊聚类;

根据所述特殊聚类以及各所述图像在各所述聚类层中所对应的聚类筛选候选图像;

根据所述待查询图像的对比特征对所述候选图像的原始特征进行线性搜索,以确定与所述待查询图像相似的图像。

优选的,根据图像库中所有图像的原始特征生成第一数量的聚类层,具体为:

提取所述图像库中所有图像的原始特征,并对所述原始特征进行PCA分析,以生成所述特征值和所述正交特征;

获取排名在所述阈值之前的特征值所对应的正交特征;

将所述正交特征空间按顺序分解为所述第一数量的子空间;

对应于各所述子空间通过聚类生成所述第二数量的聚类,并将所述聚类后的所述子空间作为所述聚类层。

优选的,将各所述聚类层中与对应的所述子特征距离接近的聚类设置为特殊聚类,具体为:

按照层次顺序获取各所述子特征与对应的聚类层中各个聚类的距离关系,并按照从近到远的顺序对所述距离关系进行排序;

生成所述子特征与所述聚类的距离关系映射表,并按照所述排序结果将排名在指定数量之内的表项的取值置1;

其中,所述指定数量根据所述第二数量以及预设的精度生成。

优选的,在根据图像库中所有图像的原始特征生成第一数量的聚类层之后,还包括:

将各所述图像在各所述聚类层中所对应的聚类进行映射,并根据映射结果生成与各所述图像对应的多维索引,所述多维索引的维度与所述第一数量一致。

优选的,根据所述特殊聚类以及各所述图像在各所述聚类层中所对应的聚类筛选候选图像,具体为:

将所述图像的多维索引作为索引值,在所述距离关系映射表中分别查询与所述索引值对应的表项的取值;

根据所述查询结果生成与所述图像对应的多维距离关系向量;

若所述多维距离关系向量中1值所占的比例大于比例阈值,将所述图像作为所述候选图像。

相应的,本申请还提出了一种图像检索服务器,包括:

生成模块,根据图像库中所有图像的原始特征生成第一数量的聚类层,各所述聚类层所包含第二数量的聚类,所述聚类层根据所述原始特征的排名在阈值之前的特征值所对应的正交特征依次分解生成,所述特征值和所述正交特征由所述原始特征在经过指定方式的处理后生成;

提取模块,根据所述待查询图像的对比特征提取所述第一数量的子特征,所述子特征根据所述对比特征中特征值排名在所述阈值之前的对比特征依次分解生成,各所述子特征与各所述聚类层在层次顺序上一一对应;

设置模块,将各所述聚类层中与对应的所述子特征距离接近的聚类设置为特殊聚类;

筛选模块,根据所述特殊聚类以及各所述图像在各所述聚类层中所对应的聚类筛选候选图像;

搜索模块,根据所述待查询图像的对比特征对所述候选图像的原始特征进行线性搜索,以确定与所述待查询图像相似的图像。

优选的,所述生成模块具体用于:

提取所述图像库中所有图像的原始特征,并对所述原始特征进行PCA分析,以生成所述特征值和所述正交特征;

获取排名在所述阈值之前的特征值所对应的正交特征;

将所述正交特征空间按顺序分解为所述第一数量的子空间;

对应于各所述子空间通过聚类生成所述第二数量的聚类,并将所述聚类后的所述子空间作为所述聚类层。

优选的,所述设置模块具体用于:

按照层次顺序获取各所述子特征与对应的聚类层中各个聚类的距离关系,并按照从近到远的顺序对所述距离关系进行排序;

生成所述子特征与所述聚类的距离关系映射表,并按照所述排序结果将排名在指定数量之内的表项的取值置1;

其中,所述指定数量根据所述第二数量以及预设的精度生成。

优选的,还包括:

映射模块,将各所述图像在各所述聚类层中所对应的聚类进行映射,并根据映射结果生成与各所述图像对应的多维索引,所述多维索引的维度与所述第一数量一致。

优选的,所述筛选模块具体用于:

将所述图像的多维索引作为索引值,在所述距离关系映射表中分别查询与所述索引值对应的表项的取值;

根据所述查询结果生成与所述图像对应的多维距离关系向量;

若所述多维距离关系向量中1值所占的比例大于比例阈值,将所述图像作为所述候选图像。

由此可见,通过应用本申请的技术方案,预先根据图像库中所有图像的原始特征生成第一数量的聚类层,当接收到待查询图像时,根据待查询图像的对比特征提取第一数量的子特征,将各聚类层中与对应的子特征距离接近的聚类设置为特殊聚类,根据特殊聚类以及各图像在各聚类层中所对应的聚类筛选候选图像,最后根据待查询图像的对比特征对候选图像的原始特征进行线性搜索,以确定与待查询图像相似的图像。从而能够在确保检索精度的情况下大幅减少原始特征线性搜索范围,显著地降低了线性搜索耗时,有效提高检索效率。

附图说明

图1为本申请提出的一种图像检索方法的流程示意图;

图2为本申请具体实施例所提出的一种图像检索方法的整体流程图;

图3为本申请具体实施例中多层kmeans聚类的流程示意图;

图4为本申请具体实施例中距离关系映射流程示意图;

图5为本申请提出的一种图像检索设备的结构示意图。

具体实施方式

如背景技术所述,现有技术中针对图像检索所提出的加速方案存在着精度下降或是操作过程过高的缺陷。有鉴于此,本申请提出了一种图像检索方法,通过聚类技术快速筛选相似图像子集,减少特征比对次数,从而有效提高检索效率。

如图1所示,为本申请提出的一种图像检索方法的流程示意图,包括如下步骤:

S101,根据图像库中所有图像的原始特征生成第一数量的聚类层,各所述聚类层所包含第二数量的聚类,所述聚类层根据所述原始特征的排名在阈值之前的特征值所对应的正交特征依次分解生成,所述特征值和所述正交特征由所述原始特征在经过指定方式的处理后生成。

为了解决现有技术中无法同时兼顾操作准确度以及检索精度的问题,本申请利用多层聚类组合分别在多个维度预先对特征空间进行聚类,这样在后续针对待查询图像的各个子特征进行相似性比较时,能够大幅增加对单个维度下的相似误容忍范围,从而实现多方位的对比。

基于上述说明,技术人员预先设置需要生成的聚类层的数量(后续以第一数量进行说明),以及每一个聚类层中所包含的聚类的数量(后续以第二数量进行说明)。在此基础上,针对图像库中所有图像进行特征提取,(提取后的特征后续统称为原始特征),随后针对特征值高的维度的特征进行降维处理,并根据降维后的特征生成相应数量的子空间,这些子空间在其中的特征通过聚类生成多个聚类之后称为聚类层,通过多层聚类组合,实现了针对特征空间的更精细的划分,并且原高维图像特征也能够映射到聚类索引空间。

在本申请的优选实施例中,该步骤的包括以下流程:

步骤a)提取所述图像库中所有图像的原始特征,并对所述原始特征进行PCA分析,以生成所述特征值和所述正交特征;

步骤b)获取排名在所述阈值之前的特征值所对应的正交特征;

步骤c)将所述正交特征空间按顺序分解为所述第一数量的子空间;

步骤d)对应于各所述子空间通过聚类生成所述第二数量的聚类,并将所述聚类后的所述子空间作为所述聚类层。

需要指出的是,虽然以上优选实施例在特征提取以及降维的过程中以指定方式为PCA分析进行说明,但是技术人员能够根据实际的应用场景对此进行调整,通过其他的方式获取到与PCA分析处理后相一致的正交特征以及各个特征的特征值,这些改变均属于本申请的保护范围。

由于聚类层及其中的各个聚类都是基于图像库中的各个已有的图像所生成的,因此图像库中的每张图像都能在各聚类层中对应一个聚类。为了能够清楚的表明图像库中各个图像与聚类层中各个聚类的对应关系,在本申请的优选实施例中,在该步骤之后将各所述图像在各所述聚类层中所对应的聚类进行映射,并根据映射结果生成与各所述图像对应的多维索引,需要说明的是,该多维索引的维度与所述第一数量一致。

S102,当接收到待查询图像时,根据所述待查询图像的对比特征提取所述第一数量的子特征,所述子特征根据所述对比特征中特征值排名在所述阈值之前的对比特征依次分解生成,各所述子特征与各所述聚类层在层次顺序上一一对应。

基于S101中所生成的多个聚类层以及各个聚类层中的多个聚类,本申请在针对待查询图像进行快速图像检索时,利用与S101中类似的特征提取以及降维的方式将该待查询图像处理为多个子特征。这样所生成的各个子特征与S101中的各个聚类层在层次顺序上一一对应。

S103,将各所述聚类层中与对应的所述子特征距离接近的聚类设置为特殊聚类。

由于通过S102所获取的待查询图像的子特征与各个聚类层一一对应,而聚类层中又包含多个聚类。因此本步骤将子特征与对应的聚类层中的聚类依次统计二者之间的距离,距离越近即代表子特征与该聚类在特征上越相似。据此本领域技术人员能够根据各聚类层中所包含的聚类的数量以及预设的精度范围确定阈值,并基于阈值选择与子特征最接近的多个聚类,将这些聚类标记为特殊聚类,这样后续能够根据图像库中各图像所包含的特殊聚类的数量确定该图像是否为与待查询图像初步相似的候选图像,以此实现了通过聚类技术快速筛选初步相似的候选图像子集。

在本申请的优选实施例中,为了进一步提高相似性判断速度,通过构建0-1距离关系表来快速筛选出相似图像子集,后续仅针对该相似图像子集利用原始特征进行线性搜索即可实现针对海量图像的快速筛选。具体的,距离关系映射表的生成步骤可通过以下方式生成:

步骤a)按照层次顺序获取各所述子特征与对应的聚类层中各个聚类的距离关系,并按照从近到远的顺序对所述距离关系进行排序;

步骤b)生成所述子特征与所述聚类的距离关系映射表,并按照所述排序结果将排名在指定数量之内的表项的取值置1;

其中,所述指定数量根据所述第二数量以及预设的精度生成。

S104,根据所述特殊聚类以及各所述图像在各所述聚类层中所对应的聚类筛选候选图像。

本申请旨在解决海量图像数据检索效率问题,在通过S101-S103提取较高维度的图像特征后,能够通过多层的聚类与查表操作进一步筛选出相似图像子集。这些相似图像子集由多个候选图像组成,并且这些候选图像在聚类层中所对应的聚类与S103中所设置的特殊聚类高度重合,因此将其作为潜在的与待查询图像相似的候选图像。

在通过S103的优选实施例建立与各聚类中心的距离关系映射表之后,该步骤优选实施例通过查表快速筛选相似图像子集的步骤如下:

步骤a)将所述图像的多维索引作为索引值,在所述距离关系映射表中分别查询与所述索引值对应的表项的取值;

步骤b)根据所述查询结果生成与所述图像对应的多维距离关系向量;

步骤c)若所述多维距离关系向量中1值所占的比例大于比例阈值,将所述图像作为所述候选图像。

需要说明的是,该优选实施例中的比例阈值能够由技术人员根据实际应用情况中的以往历史数据得出并设置,或者是通过采取样本图像分析的方式统计生成,该比例阈值的来源方式并不影响本申请的保护范围。

S105,根据所述待查询图像的对比特征对所述候选图像的原始特征进行线性搜索,以确定与所述待查询图像相似的图像。

在执行S101-S104之后,通过多层聚类的方式对图像库中已有图像的特征空间进行多层聚类,并能够基于待查询图像的子特征按照每层按距离关系筛选出相似图像子集。在每层尽可能多的保留相似图像的条件下,最终可筛选出较小比例的相似图像子集。并且在上述步骤的优选实施例中,通过动态构建了0-1距离关系映射表,能够进一步直接快速筛选出设定比例的相似图像子集,提高检索效率。

由此可见,通过应用本申请的技术方案,预先根据图像库中所有图像的原始特征生成第一数量的聚类层,当接收到待查询图像时,根据待查询图像的对比特征提取第一数量的子特征,将各聚类层中与对应的子特征距离接近的聚类设置为特殊聚类,根据特殊聚类以及各图像在各聚类层中所对应的聚类筛选候选图像,最后根据待查询图像的对比特征对候选图像的原始特征进行线性搜索,以确定与待查询图像相似的图像。从而能够在确保检索精度的情况下大幅减少原始特征线性搜索范围,显著地降低了线性搜索耗时,有效提高检索效率。

为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。如图2所示,为本申请具体实施例所提出的一种图像检索方法的整体流程图,包括如下步骤:

步骤S201,对待查询图像进行特征提取。在该具体实施例中,利用深度学习的方式对待查询图像的对比特征进行提取。这是因为深度学习具有很强的图像表达学习能力,利用深度学习技术提取的图像特征更能表征图像内容。

步骤S202:对已有的图片进行多层kmeans聚类处理。该具体实施例将原始特征划分为M层子特征,每层特征分别利用kmeans聚类,多层聚类组合将特征空间进行更精细的划分。原高维图像特征即可映射到聚类索引空间。在具体的应用场景中,多层kmeans聚类算法如图3所示,由如下步骤组成:

步骤S301,对原D维特征库进行PCA分析,使各维正交,提取特征值最大的前N维特征。

步骤S302,将N维特征空间顺序分解为M个子空间,每个子空间为N/M维,形成多层子空间。

步骤S303,分别对第i层子空间进行kmeans聚类,生成K个聚类,作为第i聚类层。

步骤S304,将M个聚类层进行组合,可形成K^M种聚类。图像库中的每张图像都映射到聚类索引中的M维索引向量V。

步骤S203,将待查询图像与各个聚类进行距离关系映射。计算待查询图像特征与各层聚类中心的距离,并建立0-1距离关系映射表。距离关系映射表记录与待查询图像距离最近的聚类,通过查表可快速查询待查询图像与图库中图像的距离远近关系。在具体的应用场景中,该步骤的具体流程示意图如图4所示,包含如下步骤:

步骤S401,按照S301至S302的方法对于待查询图像特征和参数提取M个子特征。

步骤S402,确定第i个子特征到该子空间的K个聚类中心的距离,并将已确定的距离进行排序。

步骤S403,建立大小为M×K的临时二维表,记录每个子特征到K个聚类中心距离关系。在每个子空间,将距离子特征最近的K*T1个聚类中心的映射关系置1,否则置0。在该具体实施例中的距离关系映射表如下表1所示,需要说明的是,在该表中T1的取值为1/2.

表1

S204,相似图像子集筛选。将图库中图像的M维聚类索引作为索引值,在距离关系映射表中分别查询M个距离映射关系,组成M维0-1距离关系向量,如果M维距离关系向量中至少有M-1个为1则将该图像作为候选相似图,即至少在M-1个子空间相似,从而筛选出T1M-1比例的图像子集。

S205,局部线性搜索。针对S203筛选出来的相似图像子集,本具体实施例中该步骤直接利用原始特征进行线性最近邻搜索。

由于图库中图像的聚类索引是离线生成,因此本具体实施例在查询时需要按照S203的方式为每个待查询图像临时建立距离关系映射表,并通过查表的方式快速计算与图库中每张图像的距离关系,从而筛选出距离较近的图像子集。对于个子空间的最近距离比例阈值T1可以取值较大,从而保证在每个子空间都不会漏掉真实的图像。所筛选的相似图像子集的比例为T1M-1,如取T1=1/2,M=5则子集比例为原图库的1/16,即可有16倍的加速。在此需要说明的是,虽然较大的取值可以使得图像检索的速度加快,但是T1值取值过大会降低筛选精度,因此本领域技术人员应需要根据实际场景灵活设置,这些均在本申请的保护范围之内。

通过应用以上具体实施例的技术方案,首先利用CNN提取图像库的特征,然后利用多层kmeans聚类方法对图像特征进行聚类,将图像特征映射到聚类索引向量。在图像检索时,提取待查询图像的CNN特征后,建立与各聚类中心的距离关系映射表,通过查表快速筛选相似图像子集,从而缩小图像检索范围,有效的提高了检索效率。

为了达到以上技术目的,本申请还提出了一种图像检索设备,如图5所示,包括:

生成模块510,根据图像库中所有图像的原始特征生成第一数量的聚类层,各所述聚类层所包含第二数量的聚类,所述聚类层根据所述原始特征的排名在阈值之前的特征值所对应的正交特征依次分解生成,所述特征值和所述正交特征由所述原始特征在经过指定方式的处理后生成;

提取模块520,根据所述待查询图像的对比特征提取所述第一数量的子特征,所述子特征根据所述对比特征中特征值排名在所述阈值之前的对比特征依次分解生成,各所述子特征与各所述聚类层在层次顺序上一一对应;

设置模块530,将各所述聚类层中与对应的所述子特征距离接近的聚类设置为特殊聚类;

筛选模块540,根据所述特殊聚类以及各所述图像在各所述聚类层中所对应的聚类筛选候选图像;

搜索模块550,根据所述待查询图像的对比特征对所述候选图像的原始特征进行线性搜索,以确定与所述待查询图像相似的图像。

在具体的应用场景中,所述生成模块具体用于:

提取所述图像库中所有图像的原始特征,并对所述原始特征进行PCA分析,以生成所述特征值和所述正交特征;

获取排名在所述阈值之前的特征值所对应的正交特征;

将所述正交特征空间按顺序分解为所述第一数量的子空间;

对应于各所述子空间通过聚类生成所述第二数量的聚类,并将所述聚类后的所述子空间作为所述聚类层。

在具体的应用场景中,所述设置模块具体用于:

按照层次顺序获取各所述子特征与对应的聚类层中各个聚类的距离关系,并按照从近到远的顺序对所述距离关系进行排序;

生成所述子特征与所述聚类的距离关系映射表,并按照所述排序结果将排名在指定数量之内的表项的取值置1;

其中,所述指定数量根据所述第二数量以及预设的精度生成。

在具体的应用场景中,还包括:

映射模块,将各所述图像在各所述聚类层中所对应的聚类进行映射,并根据映射结果生成与各所述图像对应的多维索引,所述多维索引的维度与所述第一数量一致。

在具体的应用场景中,所述筛选模块具体用于:

将所述图像的多维索引作为索引值,在所述距离关系映射表中分别查询与所述索引值对应的表项的取值;

根据所述查询结果生成与所述图像对应的多维距离关系向量;

若所述多维距离关系向量中1值所占的比例大于比例阈值,将所述图像作为所述候选图像。

通过应用本申请的技术方案,预先根据图像库中所有图像的原始特征生成第一数量的聚类层,当接收到待查询图像时,根据待查询图像的对比特征提取第一数量的子特征,将各聚类层中与对应的子特征距离接近的聚类设置为特殊聚类,根据特殊聚类以及各图像在各聚类层中所对应的聚类筛选候选图像,最后根据待查询图像的对比特征对候选图像的原始特征进行线性搜索,以确定与待查询图像相似的图像。从而能够在确保检索精度的情况下大幅减少原始特征线性搜索范围,显著地降低了线性搜索耗时,有效提高检索效率。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。

本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。

本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本发明序号仅仅为了描述,不代表实施场景的优劣。

以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

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