CN104036012B - 字典学习、视觉词袋特征提取方法及检索系统 - Google Patents
字典学习、视觉词袋特征提取方法及检索系统 Download PDFInfo
- Publication number
- CN104036012B CN104036012B CN201410287639.2A CN201410287639A CN104036012B CN 104036012 B CN104036012 B CN 104036012B CN 201410287639 A CN201410287639 A CN 201410287639A CN 104036012 B CN104036012 B CN 104036012B
- Authority
- CN
- China
- Prior art keywords
- vision
- dictionary
- local feature
- sparse coding
- sparse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
Landscapes
- Engineering & Computer Science (AREA)
- Library & Information Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种字典学习方法,包括:1)基于维度将图像的局部特征向量分为第一分段和第二分段;2)用多个局部特征向量的第一分段构造第一数据矩阵,用多个局部特征向量的第二分段构造第二数据矩阵;3)对第一数据矩阵进行稀疏非负矩阵分解,得到用于对局部特征向量的第一分段进行稀疏编码的第一字典;对第二数据矩阵进行稀疏非负矩阵分解,得到用于对局部特征向量的第二分段进行稀疏编码的第二字典。本发明还提供了基于上述两个字典对图像局部特征进行分段稀疏表示的视觉词袋特征提取方法和相应的检索系统。本发明能够大幅减少内存占用,降低词表训练时间和特征提取时间,特别适合应用于移动终端。
Description
技术领域
本发明涉及多媒体内容分析与检索技术领域,具体地说,本发明涉及一种字典学习、视觉词袋特征提取方法及检索系统。
背景技术
视觉搜索简单地说就是“以图搜图”。为实现视觉搜索,首先需要对大规模图像库提取特征建立索引库,在用户搜索时,对查询图像提取特征,在特征索引库中快速检索并按相关性(即相似度)排序,返回结果。这个结果是一个排序的库中图像列表,其中每个结果图像可能包含与查询图像相关、结合用户特征和搜索场景的关联信息。目前,面向PC的传统视觉搜索已经积累了大量算法和技术方案可供选择。然而,随着移动互联网的快速发展,人们对移动视觉搜索有了越来越高的需求。移动视觉搜索具有移动化、网络化和智能化等特点,它通过为用户提供“所见即所知”的新一代搜索服务,便捷地将身边现实世界的视觉对象关联至互联网信息世界的视觉对象,成为链接现实世界和信息世界的桥梁和纽带。图1示出了一种典型的移动视觉搜索的构架,它通过智能手机、平板电脑等移动终端获取现实世界中对象的图像或视频,然后进行特征提取,再通过移动互联网将所提取的特征传输至服务器,服务器基于大规模数据库进行大规模视觉搜索,再将搜索结果返回给移动终端,从而实现“所见即所知”的效果。例如在一个应用场景中,用手机拍摄一个古董,然后对所拍摄图片进行检索,即可快速便捷地获得该古董的名称、形状尺寸、历史典故、评论等相关信息,这极大地提升了用户体验,真正地实现了“所见即所知”的效果。可以说,移动视觉搜索极具想象空间,具有广阔的应用前景。
然而,移动视觉搜索还面临一系列需要克服的难点,主要体现在:
(1)移动终端拍摄随意性较大,旋转缩放、内容删减和背景干扰、尤其是视角变化造成的仿射形变等因素往往导致查询图像与库图像之间存在严重的视觉形变,全局颜色、纹理等传统特征很难适用,因而需要研究更为鲁棒的局部特征提取方法。
(2)面对无线网络环境的带宽有限、带宽波动、时延和获取等方面挑战,需要研究视觉查询的紧凑表示。发送图像的紧凑视觉签名,比传送整张图像更具优势,不仅可降低资费,且可避免不必要的大量上行数据传输造成的传输延迟,大幅提升用户体验。
(3)移动终端的处理器性能、内存和电力资源有限,因此需要研究适合于移动终端的特征提取与表示算法,以满足实际应用中对移动终端内存占用、处理速度和精度的需求。
综上所述,围绕移动智能终端,针对视觉查询进行鲁棒特征提取和紧凑表示,在不损失基于原始图像的检索性能前提下,亟待突破特征提取速度慢、内存开销大、数据不紧致的瓶颈;这也是多媒体信号处理、图像分析与检索等多个交叉研究领域共同关注的问题。
视觉特征的鲁棒性、区分性和紧凑性和提取算法的高效性是保证移动视觉搜索系统精度的重要前提。由于前述移动终端拍摄的随意性造成的巨大视觉差异,对特征的鲁棒性提出了更高的要求,全局颜色、纹理等传统特征很难适用。局部特征是指从角点、边缘、斑块等局部显著结构的图像区块中提取的视觉特征。与图像分割产生的区域不同,局部区块允许互相重叠,而且在不同图像条件下检测到的局部区块具有很高的可重复性。局部特征对旋转平移、尺度缩放、光照变化、视角变化、物体运动、遮挡、裁剪等具有较好的鲁棒性,已成为近几年来的研究热点。
文献K.Mikolajczyk and C.Schmid.“A performance evaluation of localdescriptors”,IEEE Transactions on Pattern Analysis and Machine Intelligence(TPAMI),27(10):615-1630,2005.对一些著名的局部区块检测算法和描述算法进行了比较和总结,并指出最好的描述子是SIFT描述子。它由Lowe在ICCV’99提出、2004年IJCV完善总结。SIFT描述子对图像尺度缩放、旋转变换和光照变化情况都能保持较好鲁棒性,并被证明是现有描述子中稳定性和区分性最好的局部特征描述子。但是SIFT描述子最大的缺陷是高维,存储和欧式距离的计算都成问题,对大规模检索,这构成性能的瓶颈。SIFT特征高达128维,传输每个SIFT特征都至少需要1024比特(8比特/维)。而一幅512×512的普通图像中提取的SIFT特征点数通常高达上千个,传输SIFT特征所需比特数甚至超过传输JPEG图像本身。因此,为了采用尽可能少的特征比特数传递尽可能多的查询图像信息,特征量化成为减少传输流量、降低网络延迟、和降低服务器端特征存储占用的重要手段。
文献B.Girod,V.Chandrasekhar,D.M.Chen,N.M.Cheung,R.Grzeszczuk,Y.Reznik,G.Takacs,S.S.Tsai,and R.Vedantham.“Mobile Visual Search”;IEEE SignalProcessing Magazine,Special Issue on Media Search in Mobile Devices,28(4):61-76,July2011.指出:2003年J.Sivic提出的视觉词袋(BoW,Bag of Visual Words)特征量化方法目前基于内容图像检索中最为成功和广泛应用的方法。该方法借鉴文本检索领域的BoW方法,通过K-Means聚类将局部特征采用矢量量化(Vector quantization)为特征聚类的类别标号,即视觉关键词,避免了存储海量的图像特征,并避免了计算高维特征相似性所带来的时间开销,非常适合于大规模数据环境下的局部近似图像检索。但是,该在特征量化时产生了量化损失,降低了特征的区分性,影响了检索效果。
针对这一问题,近年来,研究者们普遍采取增大词表(字典)规模(即视觉关键词总数)的方法增强BoW的区分性。实践证明在视觉词表规模达到100,000以上时,具有良好的区分性,从而能够支持海量高维特征的低比特数存储。值得注意的是:Arandjelovic等最近基于对SIFT描述子进行l1归一化和求平方根,提出RootSIFT(可参考文件:Arandjelovic,R.and Zisserman,A.,“Three things everyone should know to improve objectretrieval”,In Proc.IEEE Conf.on Computer Vision and Pattern Recognition(CVPR),2012),分别在Oxford5K和105K、Paris6K数据集上实现高达0.929、0.891、0.910(非软分配BoW)的检索平均精度MAP。
词表规模的增大给词表训练和特征量化带来了巨大的压力。学者们采用了多种层次结构对传统的K-Means聚类方法进行改进、以及各种近似最近邻搜索方法取代精确最近邻搜索,对词表训练和特征量化过程进行加速。例如:2006年Nister等提出层次聚类的HKM,2007年Philbin等提出近似最近邻AKM,2010年Li等通过记录字典学习迭代的中间结果提出了RAKM方法,2012年Avrithis年提出了近似混合高斯模型的AGM方法,2013年Mikulik等结合HKM和AKM方法构建了一个两层的字典(下文中简称Mikulik方案),每层字典的规模是8K,共有64M个视觉关键词。
然而,上述改进方法仍然需要大量的高维局部特征训练词表,存在词表训练非常耗时、词表内存占用大等问题。以构建1M维BoW为例,对于AKM方法,词表(1M×128)占内存高达512M;对于二级的HKM方法,词表训练需要聚类1025次,生成1025个1024×128维的词表(包含1个一级词表和1024个二级词表),占用内存也超过512M。而Mikulik方案的64M维层次化大词表,其占用内存高达32G,需要20台机器组成的机群训练一整天。同时,由于K-Means聚类集中倾向于数据高密度区域,使得有些特征显著但数据量少的区域被合并,这导致描述子的区分性极大下降。
综上所述,尽管大词表BoW在PC机视觉检索领域取得了很大的成功但是,目前所有大词表BoW方法都不能应用于计算资源受限的移动终端,最大的障碍是其存在词表占用内存过大问题。现有大词表BoW方法,1M维的词表(1M×128)占内存高达512M,即使手机内存能存放这么大的词表,内存载入和计算时间也是很大的问题。
因此,当前迫切需要一种内存占用少的基于大词表BoW的移动视觉搜索解决方案。
发明内容
本发明的任务是提供一种内存占用少的基于大词表BoW的移动视觉搜索解决方案。
本发明提供了一种字典学习方法,包括下列步骤:
1)基于维度将图像的局部特征向量分为第一分段和第二分段;
2)用多个局部特征向量的第一分段构造第一数据矩阵,其中,第一数据矩阵的每个列向量为训练集中一个局部特征向量的第一分段,用多个局部特征向量的第二分段构造第二数据矩阵,其中,第二数据矩阵的每个列向量为训练集中一个局部特征向量的第二分段;
3)对第一数据矩阵进行稀疏非负矩阵分解,得到用于对局部特征向量的第一分段进行稀疏编码的第一字典;对第二数据矩阵进行稀疏非负矩阵分解,得到用于对局部特征向量的第二分段进行稀疏编码的第二字典。
其中,所述步骤3)中,稀疏非负矩阵分解采用在线学习算法、MOD算法或者KSVD算法实现。
其中,所述步骤3)中,所述稀疏非负矩阵分解包括:基于组稀疏编码优化目标函数,求解使组稀疏编码优化目标函数最小化的用于对向量进行稀疏编码的字典及相应的稀疏编码系数矩阵。
其中,所述步骤3)中,所述组稀疏编码优化目标函数中加入了表达组内稀疏编码系数值差异的正则化项。
本发明还提供了一种基于前述的字典学习方法的视觉词袋特征提取方法,包括下列步骤:
1)从图像中提取局部特征点及其局部特征向量,并对该局部特征向量进行分段,得到相应的第一分段和第二分段;
2)基于第一字典,对当前局部特征向量的第一分段进行稀疏编码,得到相应的第一稀疏编码系数向量,基于第二字典,对当前局部特征向量的第二分段进行稀疏编码,得到相应的第二稀疏编码系数向量;
3)根据第一稀疏编码系数向量和第二稀疏编码系数向量中的非零元素所对应的字典基元索引号,将当前局部特征向量分配到视觉词袋中对应的视觉关键词。
其中,所述步骤3)中,找出第一稀疏编码系数向量中最大非零元素所对应的字典基元索引号I1,以及第二稀疏编码系数向量中最大非零元素所对应的字典基元索引号I2,根据索引号组合[I1、I2]将当前局部特征向量分配到视觉词袋中对应的一个视觉关键词。
其中,所述步骤3)中,找出第一稀疏编码系数向量中最大的两个非零元素所对应的字典基元索引号I11和I12,以及第二稀疏编码系数向量中最大的两个非零元素所对应的字典基元索引号I21和I22,根据索引号组合[I11、I21],[I11、I22],[I12、I11]和[I12、I22]将当前局部特征向量软分配到视觉词袋中对应的四个视觉关键词。
其中,所述视觉词袋特征提取方法还包括步骤:
4)对于由第一稀疏编码系数向量中非零元素所对应的字典基元索引号Ia和第二稀疏编码系数向量中非零元素所对应的字典基元索引号Ib组成的索引号组合[Ia、Ib],令Index=Ia×K+Ib,其中K为第二稀疏编码系数向量中元素的个数,用Index表示索引号组合[Ia、Ib]所对应的视觉关键词。
本发明还提供了一种基于前述的视觉词袋特征提取方法的检索方法,包括下列步骤:
1)对于查询图片,基于所述的视觉词袋特征提取方法,将其各个局部特征点分配到视觉词袋中对应的视觉关键词,并提取该查询图片的用于几何验证的元信息;
2)基于倒排索引进行特征匹配,进而进行几何一致性校验,获得查询结果;所述倒排索引基于视觉关键词建立,其中对于每个视觉关键词,记录包含该视觉关键词的图像的标识和该图像中该视觉关键词(即相应的局部特征点)用于几何验证的元信息。
其中,所述用于几何验证的元信息包括局部特征点的在图像中的位置、尺度和主方向等。
本发明还提供了一种基于前述的视觉词袋特征提取方法的检索系统,其特征在于,包括通过互联网连接的终端模块和服务端模块,
所述终端模块用于所述的视觉词袋特征提取方法将当前图像的各个局部特征向量分配到视觉词袋中对应的视觉关键词,并将所述包括视觉关键词信息的紧凑视觉签名发送至服务端模块;
所述服务端模块用于根据从移动终端模块接收到的所述紧凑视觉签名进行特征匹配,获得查询关联信息,并将该查询关联信息返回给终端模块。
其中,所述服务端模块还用于通过字典学习得到所述第一字典和所述第二字典。
与现有技术相比,本发明具有下列技术效果:
1、本发明能够大幅减少内存占用,缩短词表训练时间和特征提取时间,特别适合应用于移动终端。
2、本发明提供的面向局部特征匹配的协同字典学习算法能够帮助提高检索系统的查全率。
3、本发明的软分配方法能够大幅提高视觉搜索的检索性能。
附图说明
以下,结合附图来详细说明本发明的实施例,其中:
图1示出了现有技术中一种典型的移动视觉搜索的构架;
图2示出了本发明一个实施例的二层聚类的一个示例;
图3示出了本发明一个实施例的一个字典学习过程的示例图;
图4示出了本发明一个实施例中基于第一字典和第二字典进行高维视觉词袋特征量化的示例图;
图5示出了本发明一个实施例中的图像高维视觉词袋特征量化的示意图;
图6示出了本发明一个实施例中的BoW软分配方法的示意图;
图7示出了本发明一个实施例的基于大词表BoW的移动视觉检索系统的示意图;
图8示出了本发明一个实施例的基于大词表BoW的移动视觉检索系统在400万ImageNet数据集上的检索效果图;
图9示出了本发明一个实施例的检索方法中一个倒排索引文档示意图。
具体实施方式
根据本发明的一个实施例,提出了一种基于分段稀疏编码的高维视觉词袋特征表示方法。视觉词袋特征表示是指采用矢量量化方法将图像的高维局部特征向量映射为大词表BoW中的视觉关键词,从而减少终端至服务器端的传输流量、降低网络延迟,以及降低服务器端特征存储占用。而本实施例的高维视觉词袋特征量化方法开创性地提出“小码表大词表”的思想,使得特征量化计算对终端内存的占用和耗时大幅减少,原创性地解决了目前现有方法因占用内存过大而不能用于移动终端的问题,从而使BoW广泛应用于移动视觉搜索成为可能。
本实施例采用了一种特殊的两层聚类方法,实现高维局部特征向量与大词表BoW之间的映射。本实施例中,将高维视觉局部特征向量分成两段,每一段分别对应于一个稀疏编码字典。以SIFT特征为例进行说明,SIFT特征共有128维,分段后可获得两个64维的分段,这两个64维的分段也可以看成两个64维的特征向量。为便于描述,本文中将特征向量的前半段称为特征向量第一分段,所对应的稀疏编码字典称为一级字典,将特征向量的前半段称为特征向量第二分段,所对应的稀疏编码字典称为二级字典。
图2示出了本实施例的二层聚类的一个示例。如图2所示,假设一级字典包括K个字典基元,那么基于一级字典的基元序号I1就可以映射为K个子类,即任意一个高维视觉局部特征均可以根据其特征向量第一分段的稀疏编码最大非零元对应的基元序号I1进行第一层分类。并且这个第一层可按序号I1分成K个一级子类。在每个一级子类下,再根据特征向量第二分段进行第二层分类,假设二级字典也包括K个字典基元,那么每个一级子类下还可以进一步划分为K个二级子类。这样,整个高维视觉局部特征能够映射为K2个二级子类,如果将每个二级子类标记为BoW中的一个视觉关键词,那么就能将一个高维视觉局部特征向量量化为具有K2规模的大词表BoW中的一个视觉关键词。
一级字典和二级字典均可利用已知的训练集采用基于稀疏编码和字典学习技术进行字典学习而获得。图3示出了一个字典学习过程的示例图,包括下列步骤:
1)对已知图像进行局部特征提取,获得图像中的局部特征点及其局部特征向量(描述子)。
2)基于维度将每个局部特征向量分成第一分段和第二分段,从训练集中提取的所有局部特征点的特征向量第一分段组成第一数据矩阵,所有局部特征点的特征向量第二分段组成第二数据矩阵。参考图3,假设训练集的所有图像共提取出N个局部特征点,局部特征向量的维度为d,则第一数据矩阵中的行代表第1至第d/2维度,第一数据矩阵中的列代表第1至第N个局部特征点,第二数据矩阵中的行代表第d/2+1至第d维度,第二数据矩阵中的列代表第1至第N个局部特征点。在图3中,用P1、P2、…、PN代表第一或第二数据矩阵的列向量。
3)对于第一数据矩阵,基于在线学习算法(Online Dictionary Learning),进行稀疏非负矩阵分解(Sparse NMF),得到第一字典D1,对于第二数据矩阵,基于在线学习算法,进行稀疏非负矩阵分解,得到第二字典D2。字典学习采用稀疏非负矩阵分解(SparseNMF)进行字典学习,得到稀疏编码的字典。其中,在线学习算法可参考文献:J.Mairal,F.Bach,J.Ponce,and G.Sapiro,“Online learning for matrix factorization andsparse coding,”Journal of Machine Learning Research(JMLR),11:19–60,March2010.。
设表示由N个局部特征组成的第一或第二数据矩阵,xi表示第i个局部特征的特征向量分段。表示K个基元组成的字典,α为样本i的稀疏编码αi构成的系数矩阵,则图像的Sparse NMF分解可表示为:
X≈αD,s.t.D>0,α>0
则D和α的求解可转化为优化问题:
当D和αi均未知时,求两者称为字典学习,在每次迭代时,交替固定D和αi,便可迭代求解D和αi。当字典D已知,求αi则称为稀疏编码。本实施例可用在线字典学习算法求解D。当求出D后,(1)式转化为Lasso问题,可用高效的LARS-Lasso算法求解样本i的稀疏编码αi。LARS-Lasso算法可参考文献:T.J.I.Efron,Bradley;Hastie and R.Tibshirani,“Leastangle regression,”Annals of Statistics,32(2):407–499,2004.。在线的字典学习方法非常高效,加上求解稀疏编码的LARS-LASSO算法也非常高效,对于10M个SIFT特征,训练仅约为半小时,因而大幅提高了词表训练的效率。
图4示出了基于第一字典和第二字典进行高维视觉词袋特征量化的示意图。如图4所示,基于字典学习得到的第一字典和第二字典,进行高维视觉词袋特征量化方法包括下列步骤:
1)从图像中提取局部特征点及其局部特征向量,并对该局部特征向量进行分段,得到相应的特征向量第一分段和第二分段。
2)基于第一字典,对特征向量第一分段进行稀疏编码,得到相应的稀疏编码系数向量α1=[α11,α12,...,α1K]。基于第二字典,对特征向量第二分段的进行稀疏编码,得到相应的稀疏编码系数向量α2=[α21,α22,...,α2K]。
3)选择α1=[α11,α12,...,α1K]、α2=[α21,α22,...,α2K]这两个稀疏编码系数中最大的元素所对应的字典基元索引号I1和I2。
4)用整数形式的索引号Index来表示字典基元索引号I1和I2的组合。
本步骤中,用
Index=I1×K+I2 (2)
惟一地表示最大稀疏基元对应的组合[I1,I2]。这样,每一个局部特征点通过分段稀疏编码表示成一个由式(2)生成整数形式的索引号Index,Index即可作为该局部特征点聚类的视觉关键词索引号,从而完成高维局部特征的量化。根据字典基元索引号I1和I2进行一级分类和二级分类,即可得到相应的大词表BoW的视觉关键词,从而将当前局部特征点分配到大词表BoW中与索引号组合[I1,I2]一一对应的视觉关键词中。需要说明的是,式(2)的编码方式可以被任何能够携带字典基元索引号I1和I2信息的编码方式替代,只要每个索引号的组合[I1,I2]所对应的编码唯一即可。
本实施例中,一级字典、二级字典均为稀疏编码字典,稀疏编码字典也可称为冗余字典。以64维的分段SIFT特征向量为例进行说明,冗余字典实际上是一个64*1024的变换矩阵,该变换矩阵,主要将一个非稀疏的向量变换到一个稀疏向量,稀疏就是指这个向量中绝大部分元素为0。用冗余字典将64维的分段SIFT特征向量分段(其中大部分维度的值不为0,因而不稀疏)变成一个1024维的稀疏向量(只有少数几个非零元),然后用最大非零元对应的列号作为相应的子集编号I1或I2(即字典基元索引号I1、I2)。因为1024>64,也就是列向量个数大于列向量维数,因此这个变换矩阵不是方阵(传统的DCT、小波变换矩阵都是方阵,行数等于列数),是冗余的,所以称为冗余字典。冗余字典共有1024个64维的列向量组成,每个64维的列向量就是一个字典基元,一个字典基元可以看成一个64维分段SIFT特征向量分段的视觉关键词。这样,一级字典和二级字典各有1024个视觉关键词,二者组合可以表示1024×1024,即1M个视觉关键词,也就是说,上述一级字典和二级字典的组合即可对应于具有1M个视觉关键词的大词表BoW。
通常评价一个检索系统的好坏不能单独只看准确率(Precision)或查全率(Recall),而是应该同时考虑准确率和查全率,也就是通常说的ROC曲线。通常用同时反映两者折衷的平均精度AP(Average Precision)来表示,多个查询图像的AP,称为MAP(MeanAP)。实验表明,本实施例的检索效果(MAP)优于其它层次化的视觉检索方案(例如HKM方案),并且在移动终端处,对高维局部特征进行稀疏表示所用的两个字典所占用内存只有512K,为现有所有方法的约1/1000,这使得特征量化计算对终端内存的占用和耗时大幅减少,原创性地解决了目前现有方法因占用内存过大而不能用于移动终端的问题,从而使BoW广泛应用于移动视觉搜索成为可能。
图5示出了图像BoW特征生成的示意图。图像BoW特征生成时,首先统计图像在词表上的频率直方图,词表规模K2,当K=1024(最后可通过实验确定最佳的字典大小K),该词表高达上百万维(1M),可以直接记录非零元的索引(即Index)作为图像的特征,每一个索引对应图像中的一个局部特征点,记录m个索引,就表示该图像具有m个局部特征点,服务器端在接收到这m个索引后,即可根据m个索引通过倒排文档进行匹配和几何一致性校验,查找到和查询图像相似的图像,并进而实现图像的视觉搜索。需说明的是,图像的视觉搜索不仅查找局部特征点,而且要在库中查找与查询图像相似度最高(通常情况下特征点匹配得最多的库中图像与查询图像最相似)的图像。一般根据相似度从高到低排序。图8示出了一个基于大词表BoW的移动视觉检索系统在400万ImageNet数据集上的检索效果图,图8中,右边窗口的第一行对应排序为1~4,第二行为5~8,依此类推。排序越靠前,检索到的图像和查询图像的相似度越高。
图4的实施例中,其步骤3)中选择了稀疏编码系数中最大的元素所对应的字典基元的索引号来代表相应局部特征点的索引信息,这样,每个局部特征点会被分配到BoW中一个聚类(对应于一个视觉关键词)。而图6示出了根据本发明的另一个实施例的BoW软分配方法的示意图。这种分配方法下,每个局部特征点会被分配到BoW中的四个聚类(对应于四个视觉关键词)。图6的实施例中,在进行高维视觉词袋特征量化时,步骤3)中,从α1=[α11,α12,...,α1K]中选出前两大元素所对应的字典基元索引号,记为I11和I12,从α2=[α21,α22,...,α2K]中也选出前两大元素所对应的字典基元索引号,记为I21和I22,对于一个局部特征点,可以将之软分配到图6箭头所示的四个视觉关键词中:[I11、I21][I11、I22][I12、I11]和[I12、I22]中。在步骤4)中,按式(2)分别计算[I11、I21][I11、I22][I12、I11]和[I12、I22]的索引号,从而用整数形式的索引号分别表示[I11、I21][I11、I22][I12、I11]和[I12、I22]。图6的实施例使用了BoW软分配技术,在进行高维视觉词袋特征量化的同时保留了局部特征点更多的原始信息,实验表明,这种做法能够大幅提高视觉搜索的检索性能(MAP能提高8%-10%)。
图7示出了根据本发明一个实施例所提出的一种基于大词表BoW的移动视觉检索系统,该移动视觉检索系统包括移动终端模块和服务端模块,移动终端模块和服务端模块之间通过移动互联网连接。
移动终端模块用于提取图像的局部特征点及其局部特征向量,基于第一字典、第二字典获得局部特征向量的分段稀疏表示,根据分段稀疏编码系数中的非零元素的索引号进行BoW提取与压缩,从而获得代表所提取的局部特征点的紧凑视觉签名(紧凑视觉签名包括为局部特征点所分配的视觉关键词信息,另外还包括后续几何验证的特征点位置、尺度和主方向等信息),并将该紧凑视觉签名发送至服务器端。移动终端模块还用于接收服务器端查询关联信息,并显示搜索结果。其中分段稀疏表示可参考前文的描述,此处不再赘述。
服务端模块用于基于大规模图像库进行局部特征提取,通过字典学习获得相应的冗余字典(即用于一级分类的第一字典和用于二级分类的第二字典),基于冗余字典对局部特征点进行分段稀疏表示,进而根据其中的非零元素的Index序号建立BoW倒排索引,即将包含该视觉关键词的图像id和相应后续几何验证的局部特征点位置、尺度和主方向等信息保存到相应的第Index个链表中,图9示出了一个倒排索引文档的示意图。服务端模块还用于根据从移动终端模块接收到的紧凑视觉签名,基于倒排索引进行特征匹配,进而进行几何一致性校验,最终获得查询关联信息,并将该查询关联信息返回给移动终端模块。
在一个实施例中,基于大词表BoW的移动视觉检索方法包括下列步骤:
步骤1:建立倒排索引。倒排索引本质上是链表的集合,是文本检索中最基本的数据结构,使用单词(Word)快速检索到包含该单词的文档(Document)。如图9所示,对于视觉检索来说,每个视觉关键词(相当于文本检索中的单词,对应一个局部特征量化后的Index)对应一个链表,用以存储包该视觉关键词的图像(相当于文本检索中的文档)id,以及该局部特征的元信息(如图9中的f1、f2等)。该信息包括后续几何验证的特征点位置、尺度和主方向等信息。
步骤2:对于查询图片,按照前文记载的方法提取各局部特征点的紧凑视觉签名。紧凑视觉签名包括为所有局部特征点所分配的视觉关键词信息,另外还包括后续几何验证的特征点位置、尺度和主方向等信息。
步骤3:对于查询图片各局部特征点的紧凑视觉签名,基于倒排索引进行特征匹配,进而进行几何一致性校验,最终获得查询关联信息。
需要说明的是,本发明中,在字典学习过程所采用的在线字典学习算法也可用MOD算法或者KSVD算法等其它算法替代。MOD算法可参考文献:K.Engan,S.O.Aase,and J.HakonHusoy.Method of optimal directions for frame design.In IEEE Int.Conf.Acoust.,Speech,Signal Process-Volume05,ICASSP’99,pages2443–2446,Washington,DC,USA,1999.IEEE Computer Society.。KSVD算法可参考文献:M.Aharon,M.Elad,andA.Bruckstein.K-SVD:An Algorithm for Designing Overcomplete Dictionaries forSparse Representation.Signal Processing,IEEE Transactions on[see alsoAcoustics,Speech,and Signal Processing,IEEE Transactions on],54(11):4311–4322,2006.。
另外,视觉关键词一般对应一个连续空间的索引号,如1M的BoW,每个视觉关键词(可以看成一个桶,桶里装的是倒排文档中的一个链表)的索引号构成的全集就是:0~10242-1这1M个连续整数。基于公式(2)用整数形式的索引号Index来表示字典基元索引号I1和I2的组合,能够巧妙地将一级和二级的两个桶号(即索引号I1和I2)组成的二维数组一一映射到一维1M个连续整数所构成空间中的索引号。
另外,本发明的一个优选实施例中,还提出了一种协同字典学习方法。该方法中,采用稀疏非负矩阵分解(Sparse NMF)进行字典学习时,为了使得学习到的字典对于相互匹配的局部特征点对,得到的稀疏编码尽可能一致,利用组稀疏编码(GSC,Group SparseCoding)技术,通过对同一组内特征在同一个字典基元上的稀疏表达系数进行正则化,使得优化目标的结果对于同一组特征稀疏表达所使用的基元是一致的,即可以使同组内的SIFT特征使用相同的字典基元进行稀疏编码。为了保证同一组对应于同一个字典基元的稀疏表达系数尽可能相同,本优选实施例中提出在GSC的优化目标中新加入稀疏编码系数值差异的正则化项,得到优化目标函数:
s.t.||αj||0≤l,D≥0,A≥0
其中,X={xt}为分段局部特征数据矩阵(即前文中的第一数据矩阵或第二数据矩阵),xt为分段局部特征数据矩阵X中的第t个列向量,每个xt代表一个局部特征点的特征向量分段。D为待求的冗余字典(即前文中的第一字典或第二字典),dj为冗余字典D的第j个列向量,A为待求的稀疏编码系数矩阵,αi,j为稀疏编码系数矩阵A中的元素。λ为正则化系数,用于调节稀疏性和重构误差之间的权重。为新加入的稀疏编码系数值差异的正则化项,它起到稳定稀疏编码系数的作用,使得同一个组内的局部特征向量(例如SIFT局部特征向量)的稀疏编码系数的差异尽可能小。其中j表示组序号,i表示组内局部特征点的序号。G描述了训练集X中的分组信息,|G|表示训练集X组的个数。|D|表示冗余字典D中字典基元向量的个数。l为稀疏编码系数向量αj中的最大非零元个数,本实施例中l取4。该优选实施例能够使得优化目标的结果对于同一组局部特征进行稀疏表达时所使用的基元尽可能一致,从而使生成的BoW特征尽可能一致。基于本实施例所得到的第一字典和第二字典进行高维视觉词袋特征量化和匹配搜索,能够进一步地提升检索效果(MAP),实验表明检索效果(MAP)大约比采用普通稀疏字典的方案(即采用式(1)的优化目标函数的方案)提升了3%。
需要说明的是,图像的高维视觉局部特征不仅可以采用128维的SIFT描述子,也可以采用其它的高维描述子,例如64维的SURF描述子。在基于维度对局部特征向量进行分段时,两个分段的维度可以是一致的,也可以不一致,这都是本领域技术人员易于理解的。
最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方法进行限制,本发明在应用上可以延伸为其它的修改、变化、应用和实施例,并且因此认为所有这样的修改、变化、应用、实施例都在本发明的精神和教导范围内。
Claims (7)
1.一种视觉词袋特征提取方法,包括下列步骤:
1)从图像中提取局部特征点及其局部特征向量,并对该局部特征向量进行分段,得到相应的第一分段和第二分段;
2)基于第一字典,对当前局部特征向量的第一分段进行稀疏编码,得到相应的第一稀疏编码系数向量,基于第二字典,对当前局部特征向量的第二分段进行稀疏编码,得到相应的第二稀疏编码系数向量;其中,第一字典和第二字典根据以下子步骤得出:2a)基于维度将图像的局部特征向量分为第一分段和第二分段;2b)用训练集中局部特征向量的第一分段作为列向量,构造第一数据矩阵,用训练集中局部特征向量的第二分段作为列向量,构造第二数据矩阵;2c)对第一数据矩阵进行稀疏非负矩阵分解,得到用于对局部特征向量的第一分段进行稀疏编码的第一字典;对第二数据矩阵进行稀疏非负矩阵分解,得到用于对局部特征向量的第二分段进行稀疏编码的第二字典;
3)根据第一稀疏编码系数向量和第二稀疏编码系数向量中的非零元素所对应的字典基元索引号,将当前局部特征向量分配到视觉词袋中对应的视觉关键词;
所述步骤3)中,找出第一稀疏编码系数向量中最大非零元素所对应的字典基元索引号I1,以及第二稀疏编码系数向量中最大非零元素所对应的字典基元索引号I2,根据索引号组合[I1、I2]将当前局部特征向量分配到视觉词袋中对应的一个视觉关键词;或者找出第一稀疏编码系数向量中最大的两个非零元素所对应的字典基元索引号I11和I12,以及第二稀疏编码系数向量中最大的两个非零元素所对应的字典基元索引号I21和I22,根据索引号组合[I11、I21],[I11、I22],[I12、I11]和[I12、I22]将当前局部特征向量软分配到视觉词袋中对应的四个视觉关键词。
2.根据权利要求1所述的视觉词袋特征提取方法,其特征在于,所述步骤2c)中,稀疏非负矩阵分解采用在线学习算法、MOD算法或者KSVD算法实现。
3.根据权利要求2所述的视觉词袋特征提取方法,其特征在于,所述步骤2c)中,所述稀疏非负矩阵分解包括:基于组稀疏编码优化目标函数,求解使组稀疏编码优化目标函数最小化的用于对向量进行稀疏编码的字典及相应的稀疏编码系数矩阵。
4.根据权利要求3所述的视觉词袋特征提取方法,其特征在于,所述步骤2c)中,所述组稀疏编码优化目标函数中加入了表达组内稀疏编码系数值差异的正则化项。
5.根据权利要求1所述的视觉词袋特征提取方法,其特征在于,所述视觉词袋特征提取方法还包括步骤:
4)对于由第一稀疏编码系数向量中非零元素所对应的字典基元索引号Ia和第二稀疏编码系数向量中非零元素所对应的字典基元索引号Ib组成的索引号组合[Ia、Ib],令Index=Ia×K+Ib,其中K为第二稀疏编码系数向量中元素的个数,用Index表示索引号组合[Ia、Ib]所对应的视觉关键词。
6.一种基于权利要求1至5中任意一项所述的视觉词袋特征提取方法的检索方法,包括下列步骤:
1)对于查询图片,基于所述的视觉词袋特征提取方法,将其各个局部特征点分配到视觉词袋中对应的视觉关键词,并提取该查询图片的用于几何验证的元信息;
2)基于倒排索引进行特征匹配,进而进行几何一致性校验,获得查询结果;所述倒排索引基于视觉关键词建立,其中对于每个视觉关键词,记录包含该视觉关键词的图像的标识和在该图像中与该视觉关键词相对应的用于几何验证的元信息。
7.一种基于权利要求1至5中任意一项所述的视觉词袋特征提取方法的检索系统,其特征在于,包括通过互联网连接的终端模块和服务端模块;
所述终端模块用于基于权利要求1至5中任意一项所述的视觉词袋特征提取方法将当前图像的各个局部特征向量分配到视觉词袋中对应的视觉关键词,并将所述包括视觉关键词信息的紧凑视觉签名发送至服务端模块;
所述服务端模块用于根据从移动终端模块接收到的所述紧凑视觉签名进行特征匹配,获得查询关联信息,并将该查询关联信息返回给终端模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410287639.2A CN104036012B (zh) | 2014-06-24 | 2014-06-24 | 字典学习、视觉词袋特征提取方法及检索系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410287639.2A CN104036012B (zh) | 2014-06-24 | 2014-06-24 | 字典学习、视觉词袋特征提取方法及检索系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104036012A CN104036012A (zh) | 2014-09-10 |
CN104036012B true CN104036012B (zh) | 2017-06-30 |
Family
ID=51466782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410287639.2A Active CN104036012B (zh) | 2014-06-24 | 2014-06-24 | 字典学习、视觉词袋特征提取方法及检索系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104036012B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765878A (zh) * | 2015-04-27 | 2015-07-08 | 合肥工业大学 | 一种适用于多模态信息的稀疏编码算法及其应用 |
CN104978395B (zh) * | 2015-05-22 | 2019-05-21 | 北京交通大学 | 视觉词典构建及应用方法和装置 |
CN106611016B (zh) * | 2015-10-27 | 2019-04-05 | 北京航空航天大学 | 一种基于可分解词包模型的图像检索方法 |
CN105912611B (zh) * | 2016-04-05 | 2019-04-26 | 中国科学技术大学 | 一种基于cnn的快速图像检索方法 |
CN106649624B (zh) * | 2016-12-06 | 2020-03-03 | 杭州电子科技大学 | 基于全局关系一致性约束的局部特征点验证方法 |
CN106997379B (zh) * | 2017-03-20 | 2020-08-04 | 杭州电子科技大学 | 一种基于图片文本点击量的相近文本的合并方法 |
CN108804429A (zh) * | 2017-04-26 | 2018-11-13 | 广东原昇信息科技有限公司 | 一种基于深度学习的访客搜索行为特征提取方法 |
CN109214843B (zh) * | 2017-06-29 | 2020-08-18 | 阿里巴巴(中国)有限公司 | 一种创意审核方法、装置及服务器 |
CN107730357A (zh) * | 2017-10-19 | 2018-02-23 | 上海斐讯数据通信技术有限公司 | 一种基于视觉词典库实现图像快速检索的方法及系统 |
CN108509925B (zh) * | 2018-04-08 | 2020-04-14 | 东北大学 | 一种基于视觉词袋模型的行人重识别方法 |
CN110059214B (zh) * | 2019-04-01 | 2021-12-14 | 北京奇艺世纪科技有限公司 | 一种图像资源处理方法及装置 |
CN110675412B (zh) * | 2019-09-27 | 2023-08-01 | 腾讯科技(深圳)有限公司 | 图像分割方法、图像分割模型的训练方法、装置及设备 |
CN111324760B (zh) * | 2020-02-19 | 2023-09-26 | 创优数字科技(广东)有限公司 | 一种图像检索方法及装置 |
US12020697B2 (en) * | 2020-07-15 | 2024-06-25 | Raytheon Applied Signal Technology, Inc. | Systems and methods for fast filtering of audio keyword search |
CN112241768B (zh) * | 2020-11-25 | 2024-04-26 | 广东技术师范大学 | 一种基于深度分解字典学习的精细图像分类方法 |
CN117370623B (zh) * | 2023-10-26 | 2024-04-26 | 浙江建达科技股份有限公司 | 一种基于大数据的智慧监督管理方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436591A (zh) * | 2011-11-15 | 2012-05-02 | 中国科学院自动化研究所 | 伪造虹膜图像的判别方法 |
CN102982165A (zh) * | 2012-12-10 | 2013-03-20 | 南京大学 | 一种大规模人脸图像检索方法 |
CN103116762A (zh) * | 2013-03-20 | 2013-05-22 | 南京大学 | 一种基于自调制字典学习的图像分类方法 |
CN103605952A (zh) * | 2013-10-27 | 2014-02-26 | 西安电子科技大学 | 基于拉普拉斯正则组稀疏的人体行为识别方法 |
CN103810252A (zh) * | 2014-01-21 | 2014-05-21 | 南京信息工程大学 | 一种基于群稀疏特征选择的图像检索方法 |
CN103839056A (zh) * | 2014-03-24 | 2014-06-04 | 智慧城市系统服务(中国)有限公司 | 一种人眼状态识别方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130156300A1 (en) * | 2011-12-20 | 2013-06-20 | Fatih Porikli | Multi-Class Classification Method |
-
2014
- 2014-06-24 CN CN201410287639.2A patent/CN104036012B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436591A (zh) * | 2011-11-15 | 2012-05-02 | 中国科学院自动化研究所 | 伪造虹膜图像的判别方法 |
CN102982165A (zh) * | 2012-12-10 | 2013-03-20 | 南京大学 | 一种大规模人脸图像检索方法 |
CN103116762A (zh) * | 2013-03-20 | 2013-05-22 | 南京大学 | 一种基于自调制字典学习的图像分类方法 |
CN103605952A (zh) * | 2013-10-27 | 2014-02-26 | 西安电子科技大学 | 基于拉普拉斯正则组稀疏的人体行为识别方法 |
CN103810252A (zh) * | 2014-01-21 | 2014-05-21 | 南京信息工程大学 | 一种基于群稀疏特征选择的图像检索方法 |
CN103839056A (zh) * | 2014-03-24 | 2014-06-04 | 智慧城市系统服务(中国)有限公司 | 一种人眼状态识别方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104036012A (zh) | 2014-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104036012B (zh) | 字典学习、视觉词袋特征提取方法及检索系统 | |
CN111198959B (zh) | 一种基于卷积神经网络的两阶段图像检索方法 | |
CN108920720B (zh) | 基于深度哈希和gpu加速的大规模图像检索方法 | |
Wang et al. | Aggregating rich hierarchical features for scene classification in remote sensing imagery | |
Ge et al. | Exploiting representations from pre-trained convolutional neural networks for high-resolution remote sensing image retrieval | |
CN108280187B (zh) | 一种基于卷积神经网络深度特征的分级图像检索方法 | |
Jégou et al. | On the burstiness of visual elements | |
Petscharnig et al. | Dimensionality reduction for image features using deep learning and autoencoders | |
CN111027559A (zh) | 一种基于扩张点卷积空间金字塔池化的点云语义分割方法 | |
Xia et al. | Exploiting deep features for remote sensing image retrieval: A systematic investigation | |
CN110929080B (zh) | 基于注意力和生成对抗网络的光学遥感图像检索方法 | |
CN110059206A (zh) | 一种基于深度表征学习的大规模哈希图像检索方法 | |
CN108984642A (zh) | 一种基于哈希编码的印花织物图像检索方法 | |
CN108491430A (zh) | 一种基于对特征方向进行聚类的无监督哈希检索方法 | |
Huang et al. | Sketch-based image retrieval with deep visual semantic descriptor | |
CN106649665A (zh) | 一种面向图像检索的对象级深度特征聚合方法 | |
Lin et al. | Scene recognition using multiple representation network | |
CN105183845A (zh) | 一种结合语义特征的ervq图片索引与检索方法 | |
CN110110120B (zh) | 一种基于深度学习的图像检索方法和装置 | |
CN114972506A (zh) | 一种基于深度学习和街景图像的图像定位方法 | |
CN104778272B (zh) | 一种基于区域挖掘和空间编码的图像位置估计方法 | |
CN114168773A (zh) | 一种基于伪标签和重排序的半监督草图图像检索方法 | |
CN113886615A (zh) | 一种基于多粒度联想学习的手绘图像实时检索方法 | |
CN112668662B (zh) | 基于改进YOLOv3网络的野外山林环境目标检测方法 | |
CN110674334B (zh) | 基于一致性区域深度学习特征的近重复图像检索方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |