一种基于卷积神经网络的两阶段图像检索方法技术

技术编号:24289817 阅读:82 留言:0更新日期:2020-05-26 20:07
本发明专利技术提出了一种基于卷积神经网络的两阶段图像检索方法,其步骤如下:在VGG16网络的卷积层和密集连接层之间添加特征提取层构建卷积神经网络模型;利用训练集和验证集对卷积神经网络模型进行训练,利用反向传播调整卷积神经网络模型的参数;将测试集输入训练好的卷积神经网络模型,利用哈希函数映射将特征向量映射得到二进制哈希码,利用softmax分类函数对密集连接层输出的向量进行分类,构建二级索引库;将待检索图像输入训练好的卷积神经网络模型,进行第一阶段的检索,进行第二阶段检索。本发明专利技术在相应的图像类别下进一步搜索,通过分类优化检索实现了图像的精确分类和快速检索,加快了相似特征的检索速度,提高了查询效率。

A two-stage image retrieval method based on convolutional neural network

【技术实现步骤摘要】
一种基于卷积神经网络的两阶段图像检索方法
本专利技术涉及图像检索的
,尤其涉及一种基于卷积神经网络的两阶段图像检索方法。
技术介绍
随着各领域可用图像资源的快速增长,有效的图像搜索方法变得越来越重要。基于内容的图像检索(CBIR)旨在通过分析图像内容功能(如颜色、纹理和布局)来检索类似的图像。因此图像表示和相似性测量是任务的关键。卷积神经网络(CNN)具有强大的特征提取能力,可以直接处理图像,消除不同基础特征的影响。因此,深度CNN显著提高了各种视觉任务的性能。这些成就都归功于CNN深入学习丰富的中层图像表现的能力。然而,由于卷积神经网络所提取的特征是高维的,因此直接计算两个向量之间的相似性是十分低效的。Babenko等人建议使用主成分分析(PCA)的方法来压缩提取的特征维度,并取得了良好的性能。计算成本和图像表示在CBIR中起着至关重要的作用。随着视觉内容的持续增长,大型数据库的快速搜索已成为一种新兴需求。许多研究都旨在回答如何有效地从大型数据库中检索相关数据的问题。传统的线性搜索由于计算成本大,不适合在大型语料库中搜索。基于哈希的图像检索将高维特征映射到低维空间,并生成紧凑的二进制代码。生成的二进制代码可用于快速图像搜索,以进行二进制模式匹配或汉明距离测量。这一理念大大降低了计算成本,进一步优化了搜索效率。但是,在处理大型数据集时,必须构建相应的矩阵并生成二进制码。当前的几种加速图像检索的哈希算法可以分为两大类:无监督方法和监督法。最具代表性的无监督哈希方法是局部敏感哈希(LSH),使用未标记的数据来学习一组哈希函数,目标是将类似的数据映射到与类似的二进制文件到最大值。LSH通过将数据点投影到具有随机阈值的随机超平面来生成二进制代码。谱哈希(SH)是监督方法中另一种具有代表性的方法。根据给定数据的主要分量分析方向,通过给定数据PCA方向上的非线性函数阈值生成密集的二进制编码。虽然使用受监督的信息可以提高二进制哈希代码的学习性能。这些受监督的哈希方法通常使用成对标签来生成有效的哈希函数。除了对哈希函数的研究之外,图像表示在CBIR中也起着至关重要的作用。近年来,基于卷积神经网络的视觉描述符在图像检索中得到了广泛的应用。一些研究侧重于尺寸减少,并通过压缩CNN功能提高检索性能。但是,利用卷积神经网络的学习功能直接在欧几里得空间中进行搜索匹配是低效的。Xia等人使用矩阵分解算法来学习数据的表示形式,并提出了一种监督哈希方法来学习二进制哈希代码,该方法通过深度学习快速检索图像,在常用数据集上表现出最高的图像检索性能。由于它重新计算了成对相似性矩阵数据的输入,占用了大量的存储空间和计算时间,因此不利于在大型数据集的情况下使用。
技术实现思路
针对现有图像检索的方法计算成本大,搜索匹配效率低,不适合在大型数据库中搜索的技术问题,本专利技术提出一种基于卷积神经网络的两阶段图像检索方法,修改VGG16网络的原始模型用于图像检索,可以更快速、简单、高效地执行图像检索,适用于大型数据集。为了达到上述目的,本专利技术的技术方案是这样实现的:一种基于卷积神经网络的两阶段图像检索方法,其步骤如下:步骤一:在VGG16网络的卷积层和密集连接层之间添加一个特征提取层构建卷积神经网络模型;将数据集分成训练集、验证集和测试集;步骤二:利用训练集和验证集对步骤一构建的卷积神经网络模型进行训练,同时利用反向传播调整卷积神经网络模型的参数,将卷积神经网络模型训练为具有特征提取能力和图像分类能力;步骤三:将测试集中的图像输入步骤二中训练好的卷积神经网络模型,特征提取层对图像进行特征提取得到特征向量,利用哈希函数映射将特征向量映射得到二进制哈希码,利用softmax分类函数对密集连接层输出的向量进行分类,将测试集中的图像按类别分类构造类别索引码,从而构建二级索引库;步骤四:将待检索图像输入训练好的卷积神经网络模型,获得待检索图像的特征向量和密集连接层输出向量,进行第一阶段的检索:将待检索图像的密集连接层输出向量输入softmax分类函数得到二进制类别码,根据二进制类别码在二级索引库中检索得到哈希索引码列表;步骤五:进行第二阶段检索:利用哈希函数映射处理待检索图像的特征向量得到二进制哈希码,将二进制哈希码的值传递到哈希索引码列表中进行局部敏感哈希操作,得到根据相似度排序的检索结果。所述卷积神经网络模型中VGG16网络的结构包括依次连接的卷积层、特征提取层和密集连接层,其中,卷积层包括依次连接的两个卷积层I、池化层I、三个卷积层II、池化层II、三个卷积层III、池化层III、三个卷积层IV、池化层IV和三个卷积层V,卷积层I-V的大小都为3*3,池化层I-IV的大小都为2*2;特征提取层和最终分类层的权重是随机初始化的,特征提取层的初始权重是随机的,密集连接层训练并微调之前设定的参数。所述步骤二中反向传播调整卷积神经网络模型的参数的方法为:1)由于神经网络的输出结果与实际结果有误差,计算估计值与实际值之间的误差,并将误差从输出层向隐藏层反向传播,直至传播到输入层;2)根据误差调整相连神经元的权重,使得总损失函数减小;迭代上述步骤1)和2),直到损失函数的值最小停止;其中,ym代表第m个输入图像的真实标签值,y′m代表模型输出的第m个输入图像的预测结果,n为输入图像的总数。所述哈希函数映射通过离散余弦变换将图像从像素域变换到频率域,经过离散余弦变换后的系数矩阵从左上角到右下角频率越来越高,因此图片的能量主要保留在左上角的低频系数上了,只要保留系数矩阵左上角的8*8的矩阵,计算所有64个像素的灰度平均值为离散余弦变换均值;设置0和1组成的64位哈希值,大于等于离散余弦变换均值的设为1,小于离散余弦变换均值的设为0,组合在一起,构成一个64位的二进制哈希码。所述类别索引码用10位二进制表示,从0000000000到1111111111分别代表不同的图像类别;所述类别索引码的构造方法为:softmax分类函数的判别公式为:其中,xi为密集连接层输出的4096维度向量(列向量),θk为步骤二训练卷积神经网络模型得到的输出层参数,是参数θk的转置,表示类别的个数;P(i)为输入图像是某类别的概率,其值在区间[0,1];将softmax分类函数输出的概率P(i)转化为二进制数:其中,s(i)为每个二进制位的值,10个二进制数s组成二进制类别码S;若概率大于0.5,则该二进制位的值为位1,否则为0。所述二级索引库中二进制类别码组成第一级索引,二进制哈希索引码组成第二级索引。所述步骤五中局部敏感哈希操作的实现方法为:计算两点经过局部敏感哈希后的冲突概率,对于点H1和点H2,经过哈希函数映射之后两点的冲突概率为:其中,f2(t)表示正态分布的绝对值的概率密度函数,r=|H1-H2|为两点的欧式距离,当宽度W固定时,点H1和点H2之间的碰撞概率随它们之间的距离的增加而单调减小;t为积分变量,t本文档来自技高网
...

【技术保护点】
1.一种基于卷积神经网络的两阶段图像检索方法,其特征在于,其步骤如下:/n步骤一:在VGG16网络的卷积层和密集连接层之间添加一个特征提取层构建卷积神经网络模型;将数据集分成训练集、验证集和测试集;/n步骤二:利用训练集和验证集对步骤一构建的卷积神经网络模型进行训练,同时利用反向传播调整卷积神经网络模型的参数,将卷积神经网络模型训练为具有特征提取能力和图像分类能力;/n步骤三:将测试集中的图像输入步骤二中训练好的卷积神经网络模型,特征提取层对图像进行特征提取得到特征向量,利用哈希函数映射将特征向量映射得到二进制哈希码,利用softmax分类函数对密集连接层输出的向量进行分类,将测试集中的图像按类别分类构造类别索引码,从而构建二级索引库;/n步骤四:将待检索图像输入训练好的卷积神经网络模型,获得待检索图像的特征向量和密集连接层输出向量,进行第一阶段的检索:将待检索图像的密集连接层输出向量输入softmax分类函数得到二进制类别码,根据二进制类别码在二级索引库中检索得到哈希索引码列表;/n步骤五:进行第二阶段检索:利用哈希函数映射处理待检索图像的特征向量得到二进制哈希码,将二进制哈希码的值传递到哈希索引码列表中进行局部敏感哈希操作,得到根据相似度排序的检索结果。/n...

【技术特征摘要】
1.一种基于卷积神经网络的两阶段图像检索方法,其特征在于,其步骤如下:
步骤一:在VGG16网络的卷积层和密集连接层之间添加一个特征提取层构建卷积神经网络模型;将数据集分成训练集、验证集和测试集;
步骤二:利用训练集和验证集对步骤一构建的卷积神经网络模型进行训练,同时利用反向传播调整卷积神经网络模型的参数,将卷积神经网络模型训练为具有特征提取能力和图像分类能力;
步骤三:将测试集中的图像输入步骤二中训练好的卷积神经网络模型,特征提取层对图像进行特征提取得到特征向量,利用哈希函数映射将特征向量映射得到二进制哈希码,利用softmax分类函数对密集连接层输出的向量进行分类,将测试集中的图像按类别分类构造类别索引码,从而构建二级索引库;
步骤四:将待检索图像输入训练好的卷积神经网络模型,获得待检索图像的特征向量和密集连接层输出向量,进行第一阶段的检索:将待检索图像的密集连接层输出向量输入softmax分类函数得到二进制类别码,根据二进制类别码在二级索引库中检索得到哈希索引码列表;
步骤五:进行第二阶段检索:利用哈希函数映射处理待检索图像的特征向量得到二进制哈希码,将二进制哈希码的值传递到哈希索引码列表中进行局部敏感哈希操作,得到根据相似度排序的检索结果。


2.根据权利要求1所述的基于卷积神经网络的两阶段图像检索方法,其特征在于,所述卷积神经网络模型中VGG16网络的结构包括依次连接的卷积层、特征提取层和密集连接层,其中,卷积层包括依次连接的两个卷积层I、池化层I、三个卷积层II、池化层II、三个卷积层III、池化层III、三个卷积层IV、池化层IV和三个卷积层V,卷积层I-V的大小都为3*3,池化层I-IV的大小都为2*2;特征提取层和最终分类层的权重是随机初始化的,特征提取层的初始权重是随机的,密集连接层训练并微调之前设定的参数。


3.根据权利要求2所述的基于卷积神经网络的两阶段图像检索方法,其特征在于,所述步骤二中反向传播调整卷积神经网络模型的参数的方法为:
1)由于神经网络的输出结果与实际结果有误差,计算估计值与实际值之间的误差,并将误差从输出层向隐藏层反向传播,直至传播到输入层;
2)根据误差调整相连神经元的权重,使得总损失函数减小;
迭代上述步骤1)和2),直到损失函数的值最小停止;其中,ym代表第m个输入图像的真实标签值,y′m代表模型输出的第m个输入图像的预测结果,n为输入图像的总数。


4.根据权利要求1或3所述的基于卷积神经网络的两阶段图像检索方法,其特征在于,所...

【专利技术属性】
技术研发人员:李玉华王昌海范艳焕贺智强韩旭张建伟马江涛黄万伟马军霞陈明马欢孙玉胜
申请(专利权)人:郑州轻工业大学
类型:发明
国别省市:河南;41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1