计算机视觉——图像检索

一、图像检索概述

图像检索,简单的说,便是从图片检索数据库中检索出满足条件的图片,图像检索技术的研究根据描述图像内容方式的不同可以分为两类:

一类是基于文本的图像检索技术,简称TBIR,

一类为基于内容的图像检索技术,简称CBIR。

1. 两类图像检索技术

基于文本的图像检索(TBIR)技术,其主要原理为利用文本描述,如文本描述图片的内容、作者等等的方式来检索图片;

基于图像的内容语义的图像检索技术(CBIR),利用图片的颜色、纹理及图片包含的物体、类别等信息检索图片,如给定检索目标图片,在图像检索数据库中检索出与它相似的图片。

基于图像的内容语义的图像检索包括相同物体图像检索和相同类别图像检索,检索任务分别为检索同一个物体地不同图片和检索同一个类别地图片。例如,行人检索中检索的是同一个人即同一个身份在不同场景不同摄像头下拍得的图片属于相同物体的图像检索,而在3D形状检索中则是检索属于同一类的物品,如飞机等。

2. 图像检索技术的步骤

图像检索技术主要包含几个步骤,分别为:输入图片、特征提取、度量学习、重排序。

特征提取:即将图片数据进行降维,提取数据的判别性信息,一般将一张图片降维为一个向量;

度量学习:一般利用度量函数,计算图片特征之间的距离,作为loss,训练特征提取网络,使得相似图片提取的特征相似,不同类的图片提取的特征差异性较大。

重排序:利用数据间的流形关系,对度量结果进行重新排序,从而得到更好的检索结果。
在这里插入图片描述

二、基于BOW的图像检索原理

1. BoW词袋模型原理

1.1 模型简介

Bag-of-Words模型源于文本分类技术。在信息检索中,它假定对于一个文本,忽略其词序、语法和句法,将其仅仅看作是一个词集合,或者说是词的一个组合。文本中每个词的出现都是独立的,不依赖于其他词是否出现,或者说这篇文章的作者在任意一个位置选择词汇都不受前面句子的影响而独立选择的。
Bag-of-words在CV中的应用首先出现在Andrew Zisserman中为解决对视频场景的搜索,其提出了使用Bag-of-words关键点投影的方法来表示图像信息。后续更多的研究者归结此方法为Bag-of-Features,并用于图像分类、目标识别和图像检索。Bag-of-Features模型仿照文本检索领域的Bag-of-Words方法,把每幅图像描述为一个局部区域或关键点(Patches/Key Points)特征的无序集合,这些特征点可以看成一个词。这样,就能够把文本检索及分类的方法用到图像分类及检索中去。
使用某种聚类算法(如K-means)将特征进行聚类,每个聚类中心被看作是词典中的一个视觉词汇(Visual Word),相当于文本检索中的词,视觉词汇由聚类中心对应特征形成的码字(code word)来表示(可看当为一种特征量化过程)。所有视觉词汇形成一个视觉词典(Visual Vocabulary),对应一个码书(code book),即码字的集合,词典中所含词的个数反映了词典的大小。图像中的每个特征都将被映射到视觉词典的某个词上,这种映射可以通过计算特征间的距离去实现。然后,统计每个视觉词的出现与否或次数,图像可描述为一个维数相同的直方图向量,即Bag-of-Features。在Bag-of-Features方法的基础上,Andrew Zisserman进一步借鉴文本检索中TF-IDF模型(Term Frequency一Inverse Document Frequency)来计算Bag-of-Features特征向量。接下来便可以使用文本搜索引擎中的反向索引技术对图像建立索引,高效的进行图像检索。
Bag-of-Features更多地是用于图像分类或对象识别。在上述思路下对训练集提取Bag-of-Features特征,在某种监督学习(如:SVM)的策略下,对训练集的Bag-of-Features特征向量进行训练,获得对象或场景的分类模型;对于待测图像,提取局部特征,计算局部特征与词典中每个码字的特征距离,选取最近距离的码字代表该特征,建立一个统计直方图,统计属于每个码字的特征个数,即为待测图像的Bag-of-Features特征;在分类模型下,对该特征进行预测,从而实现对待测图像的分类。

1.2 为什么要用BoW模型描述图像

SIFT特征虽然也能描述一幅图像,但是每个S

  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
图像检索是指在图像库中根据用户的需求查找相应的图像。基于深度学习的图像检索算法近年来得到了快速发展,取得了优秀的检索效果。 本文将介绍一种基于深度学习的图像检索算法,该算法主要基于卷积神经网络(CNN)和循环神经网络(RNN)进行图像特征提取和相似度计算。该算法的主要步骤包括图像预处理、CNN特征提取、RNN编码和相似度计算。 首先,对于输入的图像,需要进行预处理操作,包括图像缩放、裁剪、归一化等。预处理后的图像可以作为CNN的输入。 其次,使用预训练的CNN模型(如VGG、ResNet等)对输入的图像进行特征提取。CNN模型通常包含多个卷积、池化和全连接层,可以有效地提取图像的局部和全局特征。在本算法中,我们将CNN的中间层输出作为图像的特征表示。 接着,将CNN提取的特征输入到RNN中进行编码。RNN是一种递归神经网络,可以对序列数据进行建模。在本算法中,我们将CNN提取的特征序列作为RNN的输入,通过RNN编码得到图像的最终特征表示。 最后,使用余弦相似度计算两个图像之间的相似度。余弦相似度是一种常用的相似度计算方法,可以衡量两个向量之间的夹角余弦值,值越大表示两个向量越相似。在本算法中,我们将图像的特征向量作为余弦相似度的输入,得到两个图像之间的相似度分数。 在实验中,我们使用了一个包含数千张图像的数据集进行评估。实验结果表明,本算法可以在较短的时间内实现高效的图像检索,并且具有较好的检索效果。同时,在实验中,我们还比较了不同的CNN模型和RNN结构对检索效果的影响,得到了一些有价值的结论。 代码实现方面,我们使用了Python编程语言和深度学习框架TensorFlow。代码主要分为数据预处理、CNN特征提取、RNN编码和相似度计算四个部分。具体实现细节可以参考代码仓库(链接待补充)。 总的来说,基于深度学习的图像检索算法是一种非常有前景的研究方向,可以为图像检索领域带来更加高效和精确的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值