The object of the present invention is to obtain hash codes that can improve the accuracy of image retrieval. A method of generating hash codes for image retrieval by using depth convolution network is proposed. This method chooses DenseNet model with better performance as the basic model, extracts image features, adds a hash layer before the classification layer, and obtains the hash code of the image after the output of the hash layer is binarized. The method of the invention adopts two basic networks with shared weights. When training the model, the image pair is taken as input, and the classification loss of the image and the similar loss of the image pair are added into the loss function. The hash code of the similar image obtained after training is more similar. Moreover, the method of the invention designs a new hash function, which sorts the values on each bit of the output of the hash layer, binarizes the output of the hash layer according to the sorting result, and obtains the hash code. The hash code obtained by the method of the invention can effectively improve the average accuracy of image retrieval when used in image retrieval.
【技术实现步骤摘要】
一种利用深度卷积网络生成用于图像检索的哈希码的方法
本专利技术涉及一种利用深度卷积网络生成用于图像检索的哈希码的方法。
技术介绍
随着各种摄影设备和网络的普及,人们可以随时随地拍摄各种各样的图像和视频,并在网络上与朋友分享,由此带来的是网络上数字图像和视频的爆炸式增长。2013年,Facebook上的总图像数已达2500亿张,并且用户平均每天上传3.5亿张。2016年,微信朋友圈每天上传图像10亿张。面对网络上飞速增长、规模庞大的数字图像,如何在海量的数据中实现快速准确的图像检索,是一项重要的研究。在语义搜索中,能够构造保持相似性的二进制码(即哈希码),并能进行高效图像搜索的哈希算法受到了高度重视。哈希算法是一种最近邻算法,算法关键在于设计一个能将内容相似的图像映射到相似哈希码中,它首先需要抽取图像的高维特征向量,如颜色、形状、纹理等,再通过哈希函数将特征向量转换为一个固定长度的二进制哈希码(即将高维视觉特征映射到低维的汉明空间中),这个变换过程也称为哈希变换。将每一幅图像都用一串哈希码来表示,并且越相似的图像,它们对应的哈希码的汉明距离越小。因此,在图像检索时,可以通过计算图像哈希码之间的汉明距离即可实现近似最近邻(ApproximateNearestNeighbor,ANN)搜索。汉明距离的计算速度快于对图像直接进行相似度计算的速度,这使得检索算法能大幅提高匹配时的计算速度,同时也减小检索系统对存储空间的需求。但是传统的哈希算法是基于人工设计提取图像特征的,算法的性能很大程度上取决于所抽取的特征,这使得检索系统在进行图像检索时容易产生语义鸿沟和意图鸿沟 ...
【技术保护点】
1.一种利用深度卷积网络生成用于图像检索的哈希码的方法,其特征在于,具体步骤如下:步骤1,建立图像对的相似信息矩阵S:将图像分类数据库中的同一类图像视为相似图像,以此建立图像对的相似信息矩阵S;步骤2,设计整体网络模型:将DenseNet去除最后的输出层作为基础网络模型提取图像特征,在基础网络模型后添加一个哈希层用以获得哈希码,哈希层后添加分类输出层用以获得图像分类信息;步骤3,损失函数设计:为了使得相似图像哈希码相似,损失函数中包含有以下损失:根据分类信息获得的分类损失、图像对的相似信息损失、哈希变换过程中的量化损失;步骤4,哈希函数设计:考虑哈希层的输出向量中位与位之间的关系,提出哈希函数,对哈希层输出的各位上的数字进行从大到小排序,如果特征向量某一位上的值在排序中靠前一半,则编码为1;若在排序中靠后一半,则编码为0;步骤5,模型训练:采用两路的基础模型对输入图像对中的两幅图像同时提取图像特征,两路基础模型的权重共享,使用随机梯度下降优化算法对模型进行训练;步骤6,获得图像哈希码:将图像输入到步骤5训练好的模型中,获得对应的哈希码。
【技术特征摘要】
1.一种利用深度卷积网络生成用于图像检索的哈希码的方法,其特征在于,具体步骤如下:步骤1,建立图像对的相似信息矩阵S:将图像分类数据库中的同一类图像视为相似图像,以此建立图像对的相似信息矩阵S;步骤2,设计整体网络模型:将DenseNet去除最后的输出层作为基础网络模型提取图像特征,在基础网络模型后添加一个哈希层用以获得哈希码,哈希层后添加分类输出层用以获得图像分类信息;步骤3,损失函数设计:为了使得相似图像哈希码相似,损失函数中包含有以下损失:根据分类信息获得的分类损失、图像对的相似信息损失、哈希变换过程中的量化损失;步骤4,哈希函数设计:考虑哈希层的输出向量中位与位之间的关系,提出哈希函数,对哈希层输出的各位上的数字进行从大到小排序,如果特征向量某一位上的值在排序中靠前一半,则编码为1;若在排序中靠后一半,则编码为0;步骤5,模型训练:采用两路的基础模型对输入图像对中的两幅图像同时提取图像特征,两路基础模型的权重共享,使用随机梯度下降优化算法对模型进行训练;步骤6,获得图像哈希码:将图像输入到步骤5训练好的模型中,获得对应的哈希码。2.根据权利要求1所述的利用深度卷积网络生成用于图像检索的哈希码的方法,其特征在于,在所述步骤1中,要建立图像对的相似信息矩阵S,遵循当前深度哈希方法中的设定,将图像分类数据库中的同一类图像视为相...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。