图像检索方法、装置、存储介质和电子设备与流程

文档序号:25093048发布日期:2021-05-18 20:58阅读:128来源:国知局
图像检索方法、装置、存储介质和电子设备与流程

1.本申请实施例涉及计算机技术领域,尤其涉及一种图像检索方法、装置、存储介质和电子设备。


背景技术:

2.在医疗影像审核整理、财务报销数据查重以及稽核查重等领域中,通常需要对提交的图像进行审核,防止存在重复的医疗影像或者重复报销的欺诈行为。例如,稽核部门会对公司内部大量的会议照片以及培训活动照片进行人工筛选,将相同场景的图像找出来并查看是否有重复提交。
3.传统方法通常是相关人员采用肉眼排查的方法进行审核,但是很多情况下,许多图像中的场景特别相似却又属于不同的场景,只有通过图像背景中的一些细节可以进行区分,在这种情况下采用肉眼的方式进行识别不仅容易区分错误,并且效率极低。此外,当涉及到的图像数量上百万上千万量级时,采用人力的方式进行审核不仅耗时耗力成本较高,而且也无法有效地从巨量的图像中查找到存在重复的问题图像。


技术实现要素:

4.为解决相关技术中存在的技术问题,本申请实施例提供一种图像检索方法、装置、存储介质和电子设备,可以提高对图像进行检索的检索效率和检索精度。
5.为达到上述目的,本申请实施例的技术方案是这样实现的:
6.第一方面,本申请实施例提供了一种图像检索方法,所述方法包括:
7.将待检索图像输入已训练的图像特征提取模型的注意力网络,基于所述注意力网络确定所述待检索图像对应的多个特征信息;
8.对所述多个特征信息进行聚类处理,得到所述待检索图像对应的特征信息集合,并将所述特征信息集合中的特征信息进行叠加,得到所述待检索图像对应的热力图像;
9.将所述热力图像与所述待检索图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到所述待检索图像对应的注意力图像;
10.将所述注意力图像输入所述已训练的图像特征提取模型的特征提取网络,基于所述特征提取网络确定所述待检索图像中的图像特征;
11.确定所述待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度;
12.根据所述相似度,从所述备选图像中检索出所述待匹配图像关联的目标图像。
13.在一种可选的实施例中,所述注意力网络包括第一卷积层、第二卷积层、池化层和全连接层;
14.所述将待检索图像输入已训练的图像特征提取模型的注意力网络,基于所述注意力网络确定所述待检索图像对应的多个特征信息,包括:
15.将所述待检索图像输入所述第一卷积层,基于所述第一卷积层获取所述待检索图像对应的特征图;
16.将所述特征图输入所述第二卷积层,基于所述第二卷积层获取所述待检索图像对应的多个特征向量;
17.将所述多个特征向量输入所述池化层,基于所述池化层得到所述待检索图像对应的多个降维特征向量;
18.将所述多个降维特征向量输入所述全连接层,基于所述全连接层获取所述待检索图像对应的多个特征信息。
19.在一种可选的实施例中,所述确定所述待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度,包括:
20.确定所述待匹配图像中的图像特征与预存的备选图像的图像特征之间的欧式距离;
21.根据所述欧式距离,确定所述待匹配图像中的图像特征与所述备选图像的图像特征之间的相似度。
22.在一种可选的实施例中,所述图像特征提取模型的训练过程,包括:
23.获取训练数据集;所述训练数据集中的每张样本图像均具有场景类别标签;
24.基于所述训练数据集,对所述图像特征提取模型包含的注意力网络和特征提取网络进行迭代训练,直到满足设定的收敛条件为止,其中,一次迭代训练过程包括:
25.从所述训练数据集中抽取样本图像;抽取的样本图像包括具有同一种场景类别标签的至少两张样本图像;
26.将抽取的至少两张样本图像输入所述注意力网络,得到所述至少两张样本图像的多个样本特征信息,并基于对所述多个样本特征信息进行聚类得到的设定数量的特征信息集合确定第一损失值;每个样本特征信息对应表征样本图像中一个区域的特征;每个特征信息集合对应至少两张样本图像中属于同一类型的区域;
27.根据所述第一损失值,对所述注意力网络进行参数调整;
28.基于所述特征信息集合,分别生成抽取的每张样本图像对应的注意力图像,并将得到的注意力图像输入所述特征提取网络,得到每张样本图像对应的样本图像特征;
29.分别将每张样本图像对应的样本图像特征输入用于辅助训练的分类网络,得到每张样本图像的场景类别结果,并根据每张样本图像的场景类别结果与对应的场景类别标签,确定第二损失值;
30.根据所述第二损失值,对所述特征提取网络进行参数调整。
31.在一种可选的实施例中,所述基于对所述多个样本特征信息进行聚类得到的设定数量的特征信息集合确定第一损失值,包括:
32.对所述多个样本特征信息进行聚类处理,得到所述样本特征信息对应的设定数量的特征信息集合;
33.针对每个特征信息集合,确定所述特征信息集合中作为聚类中心的第一样本特征信息以及所述特征信息集合中距离所述聚类中心最远的第二样本特征信息;
34.根据所述第一样本特征信息到所述第二样本特征信息的距离与预先设置的阈值,确定第一损失值。
35.在一种可选的实施例中,所述基于所述特征信息集合,分别生成抽取的每张样本图像对应的注意力图像,包括:
36.将每张样本图像对应的特征信息集合中的样本特征信息进行叠加,得到每张样本图像对应的热力图像;
37.将每张样本图像与对应的热力图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到每张样本图像对应的注意力图像。
38.在一种可选的实施例中,所述根据每张样本图像的场景类别结果与对应的场景类别标签,确定第二损失值,包括:
39.针对每张样本图像,分别执行如下操作:
40.将所述样本图像的场景类别结果与场景类别标签进行比对,确定分类损失值;
41.从所述样本图像对应的样本图像特征中选取一个样本图像特征作为对照样本图像特征,并根据所述样本图像特征所对应的特征信息集合和场景类别标签,将除所述对照样本图像特征之外的所有样本图像特征分为四类;
42.根据四类样本图像特征和所述对照样本图像特征,确定正样本集合和负样本集合;
43.根据所述正样本集合和所述负样本集合,确定多类型损失值;
44.将所述分类损失值和所述多类型损失值的加权和,作为所述第二损失值。
45.第二方面,本申请实施例还提供了一种图像检索装置,所述装置包括:
46.图像特征确定单元,用于将待检索图像输入已训练的图像特征提取模型的注意力网络,基于所述注意力网络确定所述待检索图像对应的多个特征信息;对所述多个特征信息进行聚类处理,得到所述待检索图像对应的特征信息集合,并将所述特征信息集合中的特征信息进行叠加,得到所述待检索图像对应的热力图像;将所述热力图像与所述待检索图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到所述待检索图像对应的注意力图像;将所述注意力图像输入所述已训练的图像特征提取模型的特征提取网络,基于所述特征提取网络确定所述待检索图像中的图像特征;
47.相似度确定单元,用于确定所述待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度;
48.目标图像确定单元,用于根据所述相似度,从所述备选图像中检索出所述待匹配图像关联的目标图像。
49.在一种可选的实施例中,所述注意力网络包括第一卷积层、第二卷积层、池化层和全连接层;所述图像特征确定单元,还用于:
50.将所述待检索图像输入所述第一卷积层,基于所述第一卷积层获取所述待检索图像对应的特征图;
51.将所述特征图输入所述第二卷积层,基于所述第二卷积层获取所述待检索图像对应的多个特征向量;
52.将所述多个特征向量输入所述池化层,基于所述池化层得到所述待检索图像对应的多个降维特征向量;
53.将所述多个降维特征向量输入所述全连接层,基于所述全连接层获取所述待检索图像对应的多个特征信息。
54.在一种可选的实施例中,所述相似度确定单元,具体用于:
55.确定所述待匹配图像中的图像特征与预存的备选图像的图像特征之间的欧式距
离;
56.根据所述欧式距离,确定所述待匹配图像中的图像特征与所述备选图像的图像特征之间的相似度。
57.在一种可选的实施例中,所述装置还包括模型训练单元,用于:
58.获取训练数据集;所述训练数据集中的每张样本图像均具有场景类别标签;
59.基于所述训练数据集,对所述图像特征提取模型包含的注意力网络和特征提取网络进行迭代训练,直到满足设定的收敛条件为止,其中,一次迭代训练过程包括:
60.从所述训练数据集中抽取样本图像;抽取的样本图像包括具有同一种场景类别标签的至少两张样本图像;
61.将抽取的至少两张样本图像输入所述注意力网络,得到所述至少两张样本图像的多个样本特征信息,并基于对所述多个样本特征信息进行聚类得到的设定数量的特征信息集合确定第一损失值;每个样本特征信息对应表征样本图像中一个区域的特征;每个特征信息集合对应至少两张样本图像中属于同一类型的区域;
62.根据所述第一损失值,对所述注意力网络进行参数调整;
63.基于所述特征信息集合,分别生成抽取的每张样本图像对应的注意力图像,并将得到的注意力图像输入所述特征提取网络,得到每张样本图像对应的样本图像特征;
64.分别将每张样本图像对应的样本图像特征输入用于辅助训练的分类网络,得到每张样本图像的场景类别结果,并根据每张样本图像的场景类别结果与对应的场景类别标签,确定第二损失值;
65.根据所述第二损失值,对所述特征提取网络进行参数调整。
66.在一种可选的实施例中,所述模型训练单元,具体用于:
67.对所述多个样本特征信息进行聚类处理,得到所述样本特征信息对应的设定数量的特征信息集合;
68.针对每个特征信息集合,确定所述特征信息集合中作为聚类中心的第一样本特征信息以及所述特征信息集合中距离所述聚类中心最远的第二样本特征信息;
69.根据所述第一样本特征信息到所述第二样本特征信息的距离与预先设置的阈值,确定第一损失值。
70.在一种可选的实施例中,所述模型训练单元,还用于:
71.将每张样本图像对应的特征信息集合中的样本特征信息进行叠加,得到每张样本图像对应的热力图像;
72.将每张样本图像与对应的热力图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到每张样本图像对应的注意力图像。
73.在一种可选的实施例中,所述模型训练单元,还用于:
74.针对每张样本图像,分别执行如下操作:
75.将所述样本图像的场景类别结果与场景类别标签进行比对,确定分类损失值;
76.从所述样本图像对应的样本图像特征中选取一个样本图像特征作为对照样本图像特征,并根据所述样本图像特征所对应的特征信息集合和场景类别标签,将除所述对照样本图像特征之外的所有样本图像特征分为四类;
77.根据四类样本图像特征和所述对照样本图像特征,确定正样本集合和负样本集
合;
78.根据所述正样本集合和所述负样本集合,确定多类型损失值;
79.将所述分类损失值和所述多类型损失值的加权和,作为所述第二损失值。
80.第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面的图像检索方法。
81.第四方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器实现第一方面的图像检索方法。
82.本申请实施例提供的图像检索方法、装置、存储介质和电子设备,可以将待检索图像输入到已训练的图像特征提取模型中,确定出待检索图像中的图像特征,根据待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度,从备选图像中检索出与待匹配图像关联的目标图像,从而可以提高对图像进行检索的检索效率和检索精度。
附图说明
83.为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
84.图1为本申请实施例提供的一种图像检索方法的流程示意图;
85.图2为本申请实施例提供的一种注意力网络的结构示意图;
86.图3为本申请实施例提供的一种图像特征提取模型的训练方法的流程示意图;
87.图4为本申请实施例提供的另一种图像特征提取模型的训练方法的流程示意图;
88.图5为本申请实施例提供的一种检索图像的示意图;
89.图6为本申请实施例提供的另一种检索图像的示意图;
90.图7为本申请实施例提供的一种图像检索装置的结构示意图;
91.图8为本申请实施例提供的另一种图像检索装置的结构示意图;
92.图9为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
93.为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
94.需要说明的是,本申请的文件中涉及的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤
或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
95.下面结合附图及具体实施例对本申请作进一步详细的说明。
96.下文中所用的词语“示例性”的意思为“用作例子、实施例或说明性”。作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
97.本申请实施例提供了一种图像检索方法,如图1所示,包括如下步骤:
98.步骤s101,将待检索图像输入已训练的图像特征提取模型的注意力网络,基于注意力网络确定待检索图像对应的多个特征信息。
99.可以将待检索图像输入到已训练的图像特征提取模型所包含的注意力网络中,基于注意力网络确定出待检索图像对应的多个特征信息。
100.步骤s102,对多个特征信息进行聚类处理,得到待检索图像对应的特征信息集合,并将特征信息集合中的特征信息进行叠加,得到待检索图像对应的热力图像。
101.在确定出待检索图像对应的多个特征信息后,可以先对多个特征信息进行聚类处理,得到待检索图像对应的特征信息集合,再将特征信息集合中的特征信息进行叠加,得到待检索图像对应的热力图像。
102.步骤s103,将热力图像与待检索图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到待检索图像对应的注意力图像。
103.可以先将热力图像与待检索图像进行叠加,再对叠加后的图像中包含的注意力区域进行裁剪,得到待检索图像对应的注意力图像。
104.步骤s104,将注意力图像输入已训练的图像特征提取模型的特征提取网络,基于特征提取网络确定待检索图像中的图像特征。
105.可以将注意力图像输入到已训练的图像特征提取模型所包含的特征提取网络中,基于特征提取网络可以确定出待检索图像中的图像特征。
106.步骤s105,确定待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度。
107.备选图像的图像特征可以是将备选图像输入到已训练的图像特征提取模型中得到的,可以先确定待匹配图像中的图像特征与预存的备选图像的图像特征之间的欧式距离,然后根据欧式距离,确定出待匹配图像中的图像特征与备选图像的图像特征之间的相似度。例如,当待匹配图像中的图像特征s与备选图像a的图像特征a之间的欧式距离为0.7时,可以确定图像特征s与图像特征a的相似度为70%,当图像特征s与图像特征a之间的欧式距离为0.8时,可以确定图像特征s与图像特征a的相似度为80%,当图像特征s与图像特征a之间的欧式距离为0.9时,可以确定图像特征s与图像特征a的相似度为90%。
108.步骤s106,根据相似度,从备选图像中检索出待匹配图像关联的目标图像。
109.当待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度满足设定的相似度阈值时,可以将该备选图像作为待匹配图像关联的目标图像,即该备选图像为与待匹配图像属于相同场景的目标图像。例如,当待匹配图像中的图像特征s与备选图像a的图像特征a之间的相似度为95%,设定的相似度阈值为90%,则可以确定备选图像a与待匹配图像属于相同场景。当待匹配图像中的图像特征s与备选图像b的图像特征b之间的相
似度为30%,则可以确定备选图像b与待匹配图像属于不同场景。
110.本申请实施例提供的图像检索方法,可以将待检索图像输入到已训练的图像特征提取模型中,确定出待检索图像中的图像特征,根据待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度,从备选图像中检索出与待匹配图像关联的目标图像,可以提高对图像进行检索的检索效率和检索精度。
111.在一种实施例中,如图2所示,注意力网络可以包括第一卷积层、第二卷积层、池化层和全连接层。可以将待检索图像输入到第一卷积层中,基于第一卷积层可以获取到待检索图像对应的特征图。将特征图输入到第二卷积层中,基于第二卷积层可以获取到待检索图像对应的多个特征向量。将多个特征向量输入到池化层中,基于池化层可以得到待检索图像对应的多个降维特征向量。将多个降维特征向量输入到全连接层中,基于全连接层获取到待检索图像对应的多个特征信息。
112.在一些实施例中,可以将图像数据库中的所有备选图像输入到已训练的图像特征提取模型中,得到对应的图像特征,并将所有备选图像对应的图像特征注册到milvus中建立索引。milvus是一个开源的向量相似度搜索引擎,它集成了业界成熟的向量搜索技术如faiss和sptag,同时针对faiss ivf索引进行了深度优化,实现了cpu与多gpu的融合计算,大幅提高了向量搜索性能,可以在秒内完成十亿级的向量搜索。此外,milvus能够有效的管理向量数据,提供针对向量和非向量数据的增删改查的能力。
113.在进行图像检索时,可以将待匹配图像输入到已训练的图像特征提取模型中,得到对应的图像特征,并将待匹配图像对应的图像特征输入到milvus进行向量搜索,计算待匹配图像对应的图像特征与milvus中的所有备选图像对应的图像特征之间的欧式距离,当备选图像对应的图像特征与待匹配图像对应的图像特征之间的欧式距离小于或等于设定阈值时,可以确定备选图像对应的图像特征与待匹配图像对应的图像特征的相似度满足设定的相似度阈值,可以将该备选图像作为与待匹配图像属于相同场景的目标图像。
114.上述实施例所使用的图像特征提取模型的训练过程可以如图3所示,包括如下步骤:
115.步骤s301,获取训练数据集。
116.获取到的训练数据集中可以包括多张样本图像,并且每张样本图像均具有场景类别标签。
117.基于该训练数据集,可以对图像特征提取模型包含的注意力网络和特征提取网络进行迭代训练,直到满足设定的收敛条件为止,其中,一次迭代训练过程可以包括步骤s302至步骤s307。
118.步骤s302,从训练数据集中抽取样本图像。
119.可以预先获取训练数据集,对模型进行训练时,从训练数据集中抽取样本图像,并且抽取的样本图像包括具有同一种场景类别标签的至少两张样本图像。例如,抽取的样本图像可以是4张样本图像,其中的2张样本图像具有一种场景类别标签,另2张样本图像具有另一种场景类别标签。
120.步骤s303,将抽取的至少两张样本图像输入注意力网络,得到至少两张样本图像的多个样本特征信息,并基于对多个样本特征信息进行聚类得到的设定数量的特征信息集合确定第一损失值。
121.可以将至少两张样本图像输入到注意力网络中,得到至少两张样本图像的多个样本特征信息,再对多个样本特征信息进行聚类处理,得到样本特征信息对应的设定数量的特征信息集合。针对每个特征信息集合,可以确定特征信息集合中作为聚类中心的第一样本特征信息以及特征信息集合中距离聚类中心最远的第二样本特征信息,根据第一样本特征信息到第二样本特征信息的距离与预先设置的阈值,确定出第一损失值。并且,每个样本特征信息对应表征样本图像中一个区域的特征,每个特征信息集合对应至少两张样本图像中属于同一类型的区域。
122.在计算第一损失值时,可以采用聚类损失函数来计算第一损失值。第一损失值是判定第一样本特征信息到第二样本特征信息的距离与预先设置的阈值的接近程度。第一损失值越小,说明第一样本特征信息到第二样本特征信息的距离越接近预先设置的阈值,从而可以约束对多个样本特征信息进行聚类处理的效果。
123.步骤s304,根据第一损失值,对注意力网络进行参数调整。
124.判断第一损失值是否收敛至预设的目标值。如果第一损失值小于或等于预设的目标值,或者,连续n次训练得到的第一损失值的变化幅度小于或等于预设的目标值时,认为第一损失值已收敛至预设的目标值,说明第一损失值收敛;否则,说明第一损失值尚未收敛。如果第一损失值未收敛,则对注意力网络的参数进行调整,调整参数后,返回执行从训练数据集中抽取样本图像步骤,继续下一轮的训练过程。
125.步骤s305,基于特征信息集合,分别生成抽取的每张样本图像对应的注意力图像,并将得到的注意力图像输入特征提取网络,得到每张样本图像对应的样本图像特征。
126.可以将每张样本图像对应的特征信息集合中的样本特征信息进行叠加,得到每张样本图像对应的热力图像。将每张样本图像与对应的热力图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,可以得到每张样本图像对应的注意力图像。在得到注意力图像后,可以将注意力图像输入到特征提取网络中,得到每张样本图像对应的样本图像特征。
127.步骤s306,分别将每张样本图像对应的样本图像特征输入用于辅助训练的分类网络,得到每张样本图像的场景类别结果,并根据每张样本图像的场景类别结果与对应的场景类别标签,确定第二损失值。
128.可以分别将每张样本图像对应的样本图像特征输入到用于辅助训练的分类网络中,得到每张样本图像的场景类别结果。针对每张样本图像,可以分别执行如下操作:
129.将样本图像的场景类别结果与场景类别标签进行比对,确定出分类损失值。从样本图像对应的样本图像特征中选取一个样本图像特征作为对照样本图像特征,并根据样本图像特征所对应的特征信息集合和场景类别标签,将除对照样本图像特征之外的所有样本图像特征分为四类,根据四类样本图像特征和对照样本图像特征,确定出正样本集合和负样本集合。再根据正样本集合和负样本集合,确定出多类型损失值,最后将分类损失值和多类型损失值的加权和,作为第二损失值。
130.在计算第二损失值时,可以采用softmax损失函数来计算分类损失值,采用multi

classs constraint损失函数来计算多类型损失值。其中,分类损失值是实际的输出样本图像的场景类别结果与期望的输出样本图像的场景类别标签的接近程度。分类损失值越小,说明实际的输出样本图像的场景类别结果越接近期望的输出样本图像的场景类别标签。采用通过softmax损失函数得到的分类损失值和通过multi

classs constraint损失函数得
到的多类型损失值相结合确定第二损失值的方式来构建类内注意力的关系和类间注意力的关系,可以在对特征提取网络进行训练的过程中使类内的attention图像特征联系更紧密,而类间的attention图像特征区分度更大。
131.步骤s307,根据第二损失值,对特征提取网络进行参数调整。
132.判断第二损失值是否收敛至预设的目标值。如果第二损失值小于或等于预设的目标值,或者,连续n次训练得到的第二损失值的变化幅度小于或等于预设的目标值时,认为第二损失值已收敛至预设的目标值,说明第二损失值收敛;否则,说明第二损失值尚未收敛。如果第二损失值未收敛,则对特征提取网络的参数进行调整,调整参数后,返回执行从训练数据集中抽取样本图像步骤,继续下一轮的训练过程。
133.在一种实施例中,也可以采用从训练数据集中抽取的样本图像先对图像特征提取模型所包含的注意力网络进行训练,在注意力网络训练完成后,可以再次从训练数据集中抽取样本图像,将样本图像输入到已训练的注意力网络中,得到样本图像对应的特征信息集合,并根据特征信息集合生成样本图像对应的注意力图像,然后基于注意力图像对图像特征提取模型所包含的特征提取网络进行训练,得到已训练的特征提取网络。在注意力网络和特征提取网络训练完成后,可以得到已训练的图像特征提取模型。
134.图4示出了图像特征提取模型的详细训练过程,如图4所示,可以包括如下步骤:
135.步骤s401,获取训练数据集。
136.获取到的训练数据集中可以包括多张样本图像,并且每张样本图像均具有场景类别标签。
137.步骤s402,从训练数据集中抽取样本图像。
138.可以预先获取训练数据集,对图像特征提取模型进行训练时,从训练数据集中抽取样本图像作为训练样本数据。并且,抽取的样本图像包括具有同一种场景类别标签的至少两张样本图像。
139.步骤s403,将抽取的至少两张样本图像输入注意力网络,得到至少两张样本图像的多个样本特征信息。
140.在采用训练数据集对图像特征提取模型进行训练时,可以抽取训练数据集中的至少两张样本图像,并将抽取的至少两张样本图像输入到待训练的图像特征提取模型所包含的注意力网络中。基于注意力网络,可以得到至少两张样本图像的多个样本特征信息。例如,抽取的样本图像可以包含两个场景类别标签class1和class2,并且每个场景类别标签对应的样本图像可以为2张,将这4张样本图像输入到注意力网络中,则对于每张样本图像可以对应得到c个1*1024维的样本特征信息。
141.步骤s404,基于对多个样本特征信息进行聚类得到的设定数量的特征信息集合确定第一损失值。
142.可以对多个样本特征信息进行聚类处理,得到样本特征信息对应的设定数量的特征信息集合,并针对每个特征信息集合,确定该特征信息集合中作为聚类中心的第一样本特征信息以及该特征信息集合中距离聚类中心最远的第二样本特征信息。根据第一样本特征信息到第二样本特征信息的距离与预先设置的阈值,确定出第一损失值。并且,每个样本特征信息对应表征样本图像中一个区域的特征,每个特征信息集合对应至少两张样本图像中属于同一类型的区域。
143.例如,将具有同一场景类别标签的2张样本图像输入到注意力网络后,可以得到2张样本图像对应的2c个1*1024维的样本特征信息,对2c个1*1024维的样本特征信息进行k

means聚类,可以得到5个特征信息集合,包括attention区域1、attention区域2、attention区域3、attention区域4和干扰区域。其中,距离聚类中心较近的样本特征信息可以认为是2张样本图像共有的背景特征信息,则可以将这些样本特征信息划分到特征信息集合所包括的attention区域1、attention区域2、attention区域3、attention区域4中某一个attention区域,而距离聚类中心较远的样本特征信息可以认为是样本图像中的前景的干扰特征信息,则可以将这些样本特征信息划分到特征信息集合所包括的干扰区域中。可以根据以下公式来确定第一损失值:
[0144][0145]
其中,l为第一损失值,d
k
为第k个特征信息集合中作为聚类中心的第一样本特征信息到该特征信息集合中距离聚类中心最远的第二样本特征信息的距离,th为预先设置的阈值,k=4是由于舍弃了特征信息集合中的干扰区域,只考虑了特征信息集合中的attention区域1、attention区域2、attention区域3和attention区域4。
[0146]
由于注意力网络的输入包括属于同一场景类别标签的至少2张样本图像,并且对基于至少2张样本图像得到的样本特征信息进行横向聚类,可以对各张样本图像分别对应的样本特征信息进行横向对比,将各张样本图像中图像特征相近的同类型区域划分至同一聚类集合中,分别调整不同的聚类集合对应的权重,使样本图像中不同类型的区域的特征对应不同的权重,从而可以使感兴趣的注意力区域的特征具有较高的权重,而其他区域的特征具有较低的权重,从而更加突出感兴趣的注意力区域。例如,如图5所示,感兴趣的注意力区域为图像中的背景的细节区域,通过上述方法可以是这部分细节区域相对具有较高的权重,而其他区域相对具有较低的权重,从而使背景的细节区域能够更加突出。
[0147]
因此,与相关训练方法相比,采用本申请实施例提供的训练方法训练得到的注意力网络可以更有针对性地提取图像中的背景的细节区域的特征。
[0148]
第一损失值是判定第一样本特征信息到第二样本特征信息的距离与预先设置的阈值的接近程度。第一损失值越小,说明第一样本特征信息到第二样本特征信息的距离越接近预先设置的阈值。
[0149]
步骤s405,确定第一损失值是否收敛至预设的目标值;如果否,执行步骤s406;如果是,执行步骤s407。
[0150]
判断第一损失值是否收敛至预设的目标值。如果第一损失值小于或等于预设的目标值,或者,连续n次训练得到的第一损失值的变化幅度小于或等于预设的目标值时,认为第一损失值已收敛至预设的目标值,说明第一损失值收敛;否则,说明第一损失值尚未收敛。
[0151]
步骤s406,根据第一损失值,对注意力网络进行参数调整。
[0152]
如果第一损失值未收敛,则对图像特征提取模型所包含的注意力网络的参数进行调整,调整参数后,返回执行步骤s402,继续下一轮的训练过程。
[0153]
步骤s407,基于特征信息集合,分别生成抽取的每张样本图像对应的注意力图像。
[0154]
可以先将每张样本图像对应的特征信息集合中的样本特征信息进行叠加,得到每
张样本图像对应的热力图像,再将每张样本图像与对应的热力图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到每张样本图像对应的注意力图像。例如,每张样本图像包含有3个注意力区域,则将叠加后的图像中的注意力区域进行裁剪,可以得到3个注意力图像。
[0155]
步骤s408,将注意力图像输入特征提取网络,得到每张样本图像对应的样本图像特征。
[0156]
可以将得到的注意力图像输入到待训练的图像特征提取模型所包含的特征提取网络中。基于特征提取网络,可以得到每张样本图像对应的样本图像特征。
[0157]
步骤s409,分别将每张样本图像对应的样本图像特征输入用于辅助训练的分类网络,得到每张样本图像的场景类别结果。
[0158]
分别将每张样本图像对应的样本图像特征输入到用于辅助训练的分类网络中,基于分类网络,可以得到每张样本图像对应的场景类别结果。
[0159]
步骤s410,根据每张样本图像的场景类别结果与对应的场景类别标签,确定第二损失值。
[0160]
针对每张样本图像,可以分别执行如下操作:
[0161]
将样本图像的场景类别结果与场景类别标签进行比对,确定出分类损失值。从样本图像对应的样本图像特征中选取一个样本图像特征作为对照样本图像特征,并根据样本图像特征所对应的特征信息集合和场景类别标签,将除对照样本图像特征之外的所有样本图像特征分为四类,并根据四类样本图像特征和对照样本图像特征,确定正样本集合和负样本集合。根据正样本集合和负样本集合,确定出多类型损失值,将分类损失值和多类型损失值的加权和,作为第二损失值。
[0162]
例如,在得到样本图像对应的样本图像特征后,可以从样本图像特征中任意选取出一个样本图像特征作为anchor,然后将剩余的所有样本图像特征分为4组:相同注意力区域相同场景类别标签的样本图像特征s
sasc
,相同注意力区域不同场景类别标签的样本图像特征s
sadc
,不同注意力区域相同场景类别标签的样本图像特征s
dasc
,不同注意力区域不同场景类别标签的样本图像特征s
dadc
。然后根据三种约束对4组样本图像特征进行三种2分类:
[0163]
(1)将相同注意力区域相同场景类别标签的样本图像特征s
sasc
作为正样本,由于其他样本图像特征都与anchor有一个较大的距离,则可以将相同注意力区域不同场景类别标签的样本图像特征ssadc,不同注意力区域相同场景类别标签的样本图像特征sdasc以及不同注意力区域不同场景类别标签的样本图像特征sdadc作为负样本,即:
[0164]
p
sasc
=s
sasc
,n
sasc
=s
sadc
∪s
dasc
∪s
dadc
[0165]
其中,p
sasc
为正样本,n
sasc
为负样本。
[0166]
(2)将相同注意力区域不同场景类别标签的样本图像特征s
sadc
作为正样本,由于相同注意力区域不同场景类别标签的样本图像特征s
sadc
与anchor之间的距离比不同注意力区域不同场景类别标签的样本图像特征s
dadc
与anchor之间的距离更近,则可以将不同注意力区域不同场景类别标签的样本图像特征s
dadc
作为负样本,即:
[0167]
p
sadc
=s
sadc
,n
sadc
=s
dadc
[0168]
其中,p
sadc
为正样本,n
sadc
为负样本。
[0169]
(3)将不同注意力区域相同场景类别标签的样本图像特征s
dasc
作为正样本,由于
不同注意力区域相同场景类别标签的样本图像特征s
dasc
与anchor之间的距离比不同注意力区域不同场景类别标签的样本图像特征s
dadc
与anchor之间的距离更近,则可以将不同注意力区域不同场景类别标签的样本图像特征s
dadc
作为负样本,即:
[0170]
p
dasc
=s
dasc
,n
dasc
=s
dadc
[0171]
其中,p
dasc
为正样本,n
dasc
为负样本。
[0172]
根据以上三种2分类,可以确定出正样本集合和负样本集合分别为:
[0173]
p∈{p
sasc
,p
sadc
,p
dasc
}
[0174]
n∈{n
sasc
,n
sadc
,n
dasc
}
[0175]
其中,p为正样本集合,n为负样本集合。
[0176]
根据正样本集合和负样本集合,可以确定出多类型损失值,即:
[0177][0178]
将样本图像的场景类别结果与场景类别标签进行比对,可以确定出分类损失值,并且分类损失值可以通过softmax损失函数计算得到。则可以将分类损失值和多类型损失值的加权和,作为第二损失值:
[0179][0180]
其中,l为第二损失值,l
softmax
为分类损失值,和为多类型损失值,λ为加权系数。
[0181]
采用通过softmax损失函数得到的分类损失值和通过multi

classs constraint损失函数得到的多类型损失值相结合确定的第二损失值对特征提取网络进行训练,可以使具有相同场景类别标签的注意力区域的样本图像特征之间的区别更小,具有不同场景类别标签的注意力区域的样本图像特征之间的区别更大。由于减小了相同场景图像对应的图像特征之间的区分度,扩大了不同场景图像对应的图像特征之间的区分度,从而使得在对多个图像的场景进行区分时,可以根据通过特征提取网络得到的图像特征很容易确定出图像是否属于同一场景。
[0182]
步骤s411,确定第二损失值是否收敛至预设的目标值;如果否,执行步骤s412;如果是,执行步骤s413。
[0183]
判断第二损失值是否收敛至预设的目标值。如果第二损失值小于或等于预设的目标值,或者,连续n次训练得到的第二损失值的变化幅度小于或等于预设的目标值时,认为第二损失值已收敛至预设的目标值,说明第二损失值收敛;否则,说明第二损失值尚未收敛。
[0184]
步骤s412,根据第二损失值,对特征提取网络进行参数调整。
[0185]
如果第二损失值未收敛,则对图像特征提取模型所包含的特征提取网络的参数进行调整,调整参数后,返回执行步骤s402,继续下一轮的训练过程。
[0186]
步骤s413,结束训练得到已训练的图像特征提取模型。
[0187]
如果第二损失值收敛,则将当前得到的注意力网络和特征提取网络作为已训练的图像特征提取模型。
[0188]
本申请实施例提供的图像特征提取模型所包含的注意力网络可以确定出图像背景中的attention区域,进而可以解决传统的确定图像中attention区域会受到图像前景细节的干扰而无法精确定位图像背景细节的问题。例如,如图5所示的图(a)和图(b)为同一个场景的图像,但是图像前景的人物是不同的,只有图中圈注处理的几个部分可以证明这2张图像是相同场景,其他的大量细节都是干扰信息。采用本申请中的图像特征提取模型可以将图(a)和图(b)所示的2张图像中的图像特征提取出来,进而可以采用欧式距离作为相似度量,确定图(a)和图(b)所示的2张图像为相同场景图像。又如,如图6所示的图(a)和图(b)为不同场景但是极难区分的图像,采用本申请中的图像特征提取模型可以很快将这2张图像区别出来。
[0189]
与图1所示的图像检索方法基于同一发明构思,本申请实施例中还提供了一种图像检索装置。由于该装置是本申请图像检索方法对应的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见上述方法的实施,重复之处不再赘述。
[0190]
图7示出了本申请实施例提供的一种图像检索装置的结构示意图,如图7所示,该图像检索装置包括图像特征确定单元701、相似度确定单元702和目标图像确定单元703。
[0191]
其中,图像特征确定单元701,用于将待检索图像输入已训练的图像特征提取模型的注意力网络,基于注意力网络确定待检索图像对应的多个特征信息;对多个特征信息进行聚类处理,得到待检索图像对应的特征信息集合;将特征信息集合中的特征信息进行叠加,得到待检索图像对应的热力图像;将热力图像与待检索图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到待检索图像对应的注意力图像;将注意力图像输入图像特征提取模型的特征提取网络,基于特征提取网络确定待检索图像中的图像特征;
[0192]
相似度确定单元702,用于确定待匹配图像中的图像特征与预存的备选图像的图像特征之间的相似度;
[0193]
目标图像确定单元703,用于根据相似度,从备选图像中检索出待匹配图像关联的目标图像。
[0194]
在一种可选的实施例中,注意力网络包括第一卷积层、第二卷积层、池化层和全连接层;图像特征确定单元701,还用于:
[0195]
将待检索图像输入第一卷积层,基于第一卷积层获取待检索图像对应的特征图;
[0196]
将特征图输入第二卷积层,基于第二卷积层获取待检索图像对应的多个特征向量;
[0197]
将多个特征向量输入池化层,基于池化层得到待检索图像对应的多个降维特征向量;
[0198]
将多个降维特征向量输入全连接层,基于全连接层获取待检索图像对应的多个特征信息。
[0199]
在一种可选的实施例中,相似度确定单元702,具体用于:
[0200]
确定待匹配图像中的图像特征与预存的备选图像的图像特征之间的欧式距离;
[0201]
根据欧式距离与设定阈值,确定待匹配图像中的图像特征与备选图像的图像特征之间的相似度。
[0202]
在一种可选的实施例中,如图8所示,上述图像检索装置还可以包括模型训练单元801,用于:
[0203]
获取训练数据集;训练数据集中的每张样本图像均具有场景类别标签;
[0204]
基于训练数据集,对图像特征提取模型包含的注意力网络和特征提取网络进行迭代训练,直到满足设定的收敛条件为止,其中,一次迭代训练过程包括:
[0205]
从训练数据集中抽取样本图像;抽取的样本图像包括具有同一种场景类别标签的至少两张样本图像;
[0206]
将抽取的至少两张样本图像输入所述注意力网络,得到至少两张样本图像的多个样本特征信息,并基于对多个样本特征信息进行聚类得到的设定数量的特征信息集合确定第一损失值;每个样本特征信息对应表征样本图像中一个区域的特征;每个特征信息集合对应至少两张样本图像中属于同一类型的区域;
[0207]
根据第一损失值,对注意力网络进行参数调整;
[0208]
基于特征信息集合,分别生成抽取的每张样本图像对应的注意力图像,并将得到的注意力图像输入特征提取网络,得到每张样本图像对应的样本图像特征;
[0209]
分别将每张样本图像对应的样本图像特征输入用于辅助训练的分类网络,得到每张样本图像的场景类别结果,并根据每张样本图像的场景类别结果与对应的场景类别标签,确定第二损失值;
[0210]
根据第二损失值,对特征提取网络进行参数调整。
[0211]
在一种可选的实施例中,模型训练单元801,具体用于:
[0212]
对多个样本特征信息进行聚类处理,得到样本特征信息对应的设定数量的特征信息集合;
[0213]
针对每个特征信息集合,确定特征信息集合中作为聚类中心的第一样本特征信息以及特征信息集合中距离聚类中心最远的第二样本特征信息;
[0214]
根据第一样本特征信息到第二样本特征信息的距离与预先设置的阈值,确定第一损失值。
[0215]
在一种可选的实施例中,模型训练单元801,还用于:
[0216]
将每张样本图像对应的特征信息集合中的样本特征信息进行叠加,得到每张样本图像对应的热力图像;
[0217]
将每张样本图像与对应的热力图像进行叠加,并对叠加后的图像中的注意力区域进行裁剪,得到每张样本图像对应的注意力图像。
[0218]
在一种可选的实施例中,模型训练单元801,还用于:
[0219]
针对每张样本图像,分别执行如下操作:
[0220]
将样本图像的场景类别结果与场景类别标签进行比对,确定分类损失值;
[0221]
从样本图像对应的样本图像特征中选取一个样本图像特征作为对照样本图像特征,并根据样本图像特征所对应的特征信息集合和场景类别标签,将除对照样本图像特征之外的所有样本图像特征分为四类;
[0222]
根据四类样本图像特征和对照样本图像特征,确定正样本集合和负样本集合;
[0223]
根据正样本集合和负样本集合,确定多类型损失值;
[0224]
将分类损失值和多类型损失值的加权和,作为第二损失值。
[0225]
与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种电子设备。该电子设备可以用于检索图像。在一种实施例中,该电子设备可以是服务器,也可以是终端
设备或其他电子设备。在该实施例中,电子设备的结构可以如图9所示,包括存储器901,通讯模块903以及一个或多个处理器902。
[0226]
存储器901,用于存储处理器902执行的计算机程序。存储器901可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
[0227]
存储器901可以是易失性存储器(volatile memory),例如随机存取存储器(random

access memory,ram);存储器901也可以是非易失性存储器(non

volatile memory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid

state drive,ssd)、或者存储器901是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器901可以是上述存储器的组合。
[0228]
处理器902,可以包括一个或多个中央处理单元(central processing unit,cpu)或者为数字处理单元等等。处理器902,用于调用存储器901中存储的计算机程序时实现上述图像检索方法。
[0229]
通讯模块903用于与终端设备和其他服务器进行通信。
[0230]
本申请实施例中不限定上述存储器901、通讯模块903和处理器902之间的具体连接介质。本公开实施例在图9中以存储器901和处理器902之间通过总线904连接,总线904在图9中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线904可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0231]
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中的图像检索方法。所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0232]
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1