视觉词袋模型(BOVW)

摘要:
sift算法的特点:1)SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性;2)独特性好,信息量丰富,适用于在海量特征数据库中进行快速、准确的匹配;3)多量性,即使少数的几个物体也可以产生大量的SIFT特征向量;4)高速性,经优化的SIFT匹配算法甚至可以达到实时的要求;5)可扩展性,可以很方便的与其他形式的特征向量进行联合。

一、介绍

Bag-of-words model (BoW model) 最早出现在神经语言程序学(NLP)和信息检索(IR)领域. 该模型忽略掉文本的语法和语序, 用一组无序的单词(words)来表达一段文字或一个文档. 近年来, BoW模型被广泛应用于计算机视觉中. 与应用于文本的BoW类比, 图像的特征(feature)被当作单词(Word),把图像“文字化”之后,有助于大规模的图像检索.也有人把简写为Bag-of-Feature model(BOF model)或Bag-of-Visual-Word(BOVW model).

二、基本思想

1、提取特征:根据数据集选取特征,然后进行描述,形成特征数据,如检测图像中的sift keypoints,然后计算keypoints descriptors,生成128-D的特征向量;

2、学习词袋:利用处理好的特征数据全部合并,再用聚类的方法把特征词分为若干类,此若干类的数目由自己设定,每一个类相当于一个视觉词;

3、利用视觉词袋量化图像特征:每一张图像由很多视觉词汇组成,我们利用统计的词频直方图,可以表示图像属于哪一类。

三、关键步骤

1、特征描述(关键点提取)

在提取特征的时候,根据数据集选择特征,一般最流行的特征是sift、surf特征

  •   SIFT特征

将一幅图像映射为一个局部特征向量集;特征向量具有平移、缩放、旋转不变性,同时对光照变化、仿射能让投影变换也有一定的不变性。

sift算法的特点:

1) SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性;

2) 独特性(Distinctiveness)好,信息量丰富,适用于在海量特征数据库中进行快速、准确的匹配;

3) 多量性,即使少数的几个物体也可以产生大量的SIFT特征向量;

4) 高速性,经优化的SIFT匹配算法甚至可以达到实时的要求;

5) 可扩展性,可以很方便的与其他形式的特征向量进行联合。

Lowe关于sift的经典论文:http://www.cs.ubc.ca/~lowe/papers/iccv99.pdf

代码展示:

  • HOG特征

2、聚类算法

  • K-means

1)计算每个聚类确定一个初始聚类中心,这样就可以有k个初始聚类中心

2)将样本集中的样本按照最小距离原则分配到最近邻聚类

3)使用每个聚类中的样本均值做为新的聚类中心直到聚类中心不再变化

四、

经典论文:Object retrieval with large vocabularies and fast spatial matching

免责声明:文章转载自《视觉词袋模型(BOVW)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇关于Idea模块化部署web项目,Web Resource Directories作用机器学习|我们在UCL找到了一个糖尿病数据集,用机器学习预测糖尿病(一)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

机器学习总结-谱聚类

谱聚类 谱聚类概括的说是基于图论的聚类方法,通过样本矩阵的拉普拉斯矩阵的特征向量进行聚类。 谱聚类的想法是将图划分成若干子图,要求同一个子图的点相似度高,不同子图的点相似度低。 顺便复习一下相似度(距离)的度量公式: 闵可夫斯基距离MinKowski(欧氏距离):(dist(X,Y)=left ( sum_{i=1}^{n}left | x_{i}-y_...

图像分割之mean shift

阅读目的:理解quick shift,同时理解mean shift原理,mean shift用于图像聚类,优点是不需要指定聚类中心个数,缺点是计算量太大(原因)。 mean shift主要用来寻找符合一些数据样本的模型,证明样本符合某一概率密度函数(PDF),是一种非参数迭代算法能够寻找模型和聚类。 数据经过非参数密度估计能够得到符合数据分布的概率密度函...

使用HDBSCAN 算法对分子聚类

对分子进行聚类分析,首先必须要考虑的是其描述符的问题,分子描述符通常是非常高维的,必须对其进行降维才好继续后面的分析,特别分子量特别大的时候。常用的降维手段有PCA,TSNE和UMAP.一说,TSNE用于可视化. 聚类的方法有许多,比如k-means,层次聚类. 但是这两个一个需要定义k,一个需要定义阈值,这样需要试错法合理进行着两个量的设置,不是很方便....

跟我学算法-pca(降维)

pca是一种黑箱子式的降维方式,通过映射,希望投影后的数据尽可能的分散, 因此要保证映射后的方差尽可能大,下一个映射的方向与当前映射方向正交 pca的步骤: 第一步: 首先要对当前数据(去均值)求协方差矩阵,协方差矩阵= 数据*数据的转置/(m-1) m表示的列数,对角线上表示的是方差,其他位置表示的是协方差 第二步:需要通过矩阵对角化,使得协方差为0,只...

聚类-31省市居民家庭消费水平-city

===分三类的===== ======分四类的======== 直接写文件名,那么你的那个txt文件应该是和py文件在同一个路径的 ============code=========== import numpy as npfrom sklearn.cluster import KMeansdef loadData(filePath):fr = ope...

Zernike不变矩

1、Zernike矩介绍 Zernike矩是基于 Zernike多项式的正交化函数,所利用的正交多项式集是 1个在单位圆内的完备正交集。Zernike矩是复数矩 ,一般把 Zernike矩的模作为特征来描述物体形状。1个目标对象的形状特征可以用 1组很小的 Zernike矩特征向量很好的表示,低阶矩特征向量描述的是 1幅图像目标的整体形状,高阶矩特征向量描...