一种图像高维特征的相似比较方法及装置的制造方法_2

文档序号:9375821阅读:来源:国知局
相似检索过程示意图;
[0034]图3是根据本发明实施例的一种图像高维特征的相似比较方法的主要步骤示意图;
[0035]图4是根据本发明实施方式的生成图像的局部敏感哈希编码及建立分段索引的过程示意图;
[0036]图5是根据本发明实施方式的分段哈希索引表结构图;
[0037]图6是根据本发明实施方式的基于分段索引的图像相似检索过程示意图;
[0038]图7是根据本发明实施例的一种图像高维特征的相似比较装置的主要模块示意图。
【具体实施方式】
[0039]以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识至IJ,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0040]以下将结合图3至图6对本发明的实施过程进行介绍。图3是根据本发明实施例的一种图像高维特征的相似比较方法的主要步骤示意图。如图3所示,本发明的一种图像高维特征的相似比较方法包括如下的步骤S31至步骤S34。
[0041]步骤S31:将所提取的图像特征向量通过局部敏感哈希算法进行降维处理后得到低维特征向量。本步骤中的图像的特征向量可利用深度学习技术构建神经网络来提取,一般所使用的神经网络为卷积神经网络CNN。下面结合图4所示的根据本发明实施方式的生成图像的局部敏感哈希编码及建立分段索引的过程示意图,可以看出,原始图像经过卷积神经网络CNN进行特征提取后,得到m维的CNN特征向量。之后,对该m维的特征向量通过局部敏感哈希LSH进行降维处理,得到低(如:k,k远小于m)维的特征向量LSH编码。
[0042]步骤S32:将所述低维特征向量平均分段并建立分段索引表。在对LSH编码平均分段并建立分段索引之前,可以通过在一个较小的验证集上通过实验确定最优的分段长度,以使得本发明的技术方案在检索速度和精度之间取得一个相对比较满意的折衷。之后,根据确定的最优的分段长度d,将该低维的LSH编码向量进行平均分段。举例来说,编号为1001的样本的LSH编码为:
[0043][O, I, I, O, O, 3,I, O, I, O, 2,I, O, I, 2,I, I, O, I, -1, 2,I, O, I, I, I, O, O]
[0044]若最优的分段长度为d = 7,则需将其分为四段,得到的分段索引项分别为:
[0045]I [O, I, 1,0,0, 3, 1]、2[0,1,0, 2, 1,0, 1]、3[2,I, 1,0, 1,-1,2]、4[1,0,I, I, 1,0,0]
[0046]其中每段前的数字代表定位序号,第一段为1,第二段为2,以此类推。
[0047]将低维特征向量LSH编码平均分段后,对该低维特征向量在内存中建立分段哈希索引表,主要步骤可概括如下:
[0048]步骤S321:将所述低维特征向量平均分段,以分段后的特征向量作为索引项,并计算每个索引项的指纹值;
[0049]步骤S322:将所述指纹值对与所述分段索引表包含的预定的入口个数最接近的素数进行取余运算,得到所述索引项的入口地址;
[0050]步骤S323:将所述低维特征向量根据得到的所述入口地址插入所述分段索引表中以建立分段索引表。
[0051]结合图5所示的根据本发明实施方式的分段哈希索引表结构图,以前述的编号为1001的样本为例进行介绍。将该样本分为4段后,以分段后的特征向量作为索引项,计算每个分段索引项的指纹值,例如可通过消息摘要算法第五版(即:MD5函数)来进行计算,以求得每个索引项的指纹值。然后,将这些指纹值对与分段索引表包含的预定的入口个数最接近的素数进行取余运算,得到各个索引项的入口地址。分段索引表的入口个数N可根据需要进行设定,例如可根据机器的内存大小,或者功能实现的需要等进行设定。在实际应用中,由于分段索引项的个数很多,因此各个索引项的入口地址可能会重复,也就是通常所说的键值冲突,本发明将键值冲突的索引项以冲突集的形式保存为冲突集链表。最后,将低维特征向量LSH编码根据得到的入口地址插入分段索引表中以建立分段索引表。
[0052]通过以上的步骤S31和步骤S32,即可实现本发明实施方式的生成图像的局部敏感哈希编码及建立分段索引的过程。下面结合附图介绍基于分段索引的图像相似检索过程。
[0053]步骤S33:通过将查询图像的分段后的低维特征向量在所述分段索引表中进行检索得到候选样本集。在进行相似图像查询时,可以按照以下的几个步骤来进行。
[0054]步骤S331:通过访问查询图像的所述分段后的低维特征向量的入口地址,得到冲关集;
[0055]步骤S332:将与所述查询图像的分段后的低维特征向量的指纹值相同的所述冲突集节点对应的所述低维特征向量提取出来,作为候选集;
[0056]步骤S333:把各个分段检索得到的所述候选集合并起来,去掉其中重复的所述低维特征向量,得到候选样本集。
[0057]结合图5所示的分段哈希索引表结构,以前述的编号为1001的样本为例进行介绍查候选样本集的过程。如步骤S331,首先,计算分段后的每一个分段索引项的指纹值,以找到每一个分段索引项在索引表的入口地址S,通过访问该入口地址S得到对应的冲突集链表,冲突集链表中的每个节点向右的指针用于保存冲突集链表,向下的指针用于保存候选集链表。所谓候选集,就是当某个查询图像的一个分段索引项的指纹值和该节点的“分段局部敏感哈希LSH编码”的指纹值相同时,后续需要进行仔细距离比较的该分段索引项的候选样本集合,此处的候选样本即是相应的低维特征向量。如步骤S332所述,将该候选集提取出来。最后,如步骤S333所述,各个分段检索都完成后,将得到的所有候选集合并起来,去掉其中重复的低维特征向量,得到最终需要进行距离比较的候选样本集。
[0058]步骤S34:将所述候选样本集中的样本分别与所述查询图像的低维特征向量进行相似度量。在进行相似度量时,首先,分别计算所述候选样本集中的每个样本与所述查询图像的低维特征向量之间的曼哈顿距离得分;然后,将所述得分按照从小到大排序,并取前预定个数的得分对应的样本的图像作为该查询图像的相似图像。
[0059]根据曼哈顿距离的原理,得分越小则相似度越高,因此根据计算的曼哈顿距离得分即可将相似度比较出来并排序。在实际应用中,可以根据应用的需要事先设定好要显示的相似图像的个数,也可由用户自己选择要显示的相似图像的个数。
[0060]通过以上的步骤S33和步骤S34,即可实现如图6所示的根据本发明实施方式的基于分段索引的图像相似检索的过程。即:将查询图像的低维特征向量与分段局部敏感哈希LSH编码向量集中的每个元素分别进行基于分段索引与曼哈顿距离的相似判别,最后得到相似局部敏感哈希LSH编码的记录集合,从而得到对应的相似图像。
[0061]由以上的步骤S31至步骤S34可以实现本发明的技术方案。经过实验得出,对于一个100万的图片集来说,由卷积神经网络的倒数第3层的特征向量将得到512位局部敏感哈希LSH编码,如果选用d = 24位的分段长度进行分段并建立索引,在进行图像相似检索时,检索速度大约比不进行分段直接进行两两比较可提高1000倍,也就是说,采用分段索引后检索速度比直接基于原始局部敏感哈希LSH编码的比较有很大的提高。另外,由于局部敏感哈希编码中包含有可量化的距离信息,选用曼哈顿距离进行相似度量时会充分利用该距离信息,而汉明距离只是对数字比较是否相等,因此基于曼哈顿距离进行相似度量的检索精度比基于汉明距离的方案要高。经过大量实验数据论证,检索精
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1