稀疏编码系列2:图像的稀疏表示——ScSPM和LLC的总结

总结SPM,ScSPM,LLC 博客开了很久,一直没有写东西。刚好前两天在实验室做了一个关于图像分类的报告,所以拿过来试试水。但优快云的编辑器用起来不是很顺手,所以为了方便,博客中用了很多图片。 引言 关于图像的工作门槛一直比较高,因为图像中的信息太丰富,展现形式也很多,噪声也丰富,所以很难提取有效的特征,这就导致后面的分类任务变得非常麻烦。正如下图所示: 正如于凯所说,特征定义了整个分类问题性能的上限,选分类器 阅读详情

稀疏编码系列:

---------------------------------------------------------------------------

 

  • 前言

       上一篇提到了SPM。这篇博客打算把ScSPM和LLC一起总结了。ScSPM和LLC其实都是对SPM的改进。这些技术,都是对特征的描述。它们既没有创造出新的特征(都是提取SIFT,HOG, RGB-histogram et al),也没有用新的分类器(也都用SVM用于最后的image classification),重点都在于如何由SIFT、HOG形成图像的特征(见图1)。从BOW,到BOW+SPM,都是在做这一步。说到这,怕会迷糊大家------SIFT、HOG本身不就是提取出的特征么,它们不就已经形成了对图像的描述了吗,为啥还有我后面提到的各种BOW云云呢抓狂。这个问题没错,SIFT和HOG它们确实本身已经是提取到的特征了,我们姑且把它们记为x。而现在,BOW+SPM是对特征x再进行一层描述,就成了Φ(x)——这相当于是更深一层(deeper)的model。一个十分相似的概念是SVM里面的核函数kernel,K=Φ(x)Φ(x),x是输入的特征,Φ(x)则对输入的特征又做了一层抽象(不过我们用核函数没有显式地对Φ(x)做定义罢了)。根据百度的余凯老师在CVPR2012的那个Tutorial上做的总结[5]:Deeper model is preferred,自然做深一层的抽象效果会更好了。而Deep Learning也是同样的道理变得火了起来。

       再次盗用一些余凯老师在CVPR2012的那个Tutorial上的一些图:

图 (1)

        SPM,ScSPM,LLC所做的工作也都集中在design feature这一步,而不是在Machine Learning那一步。值得注意的是,我们一直在Design features,而deep learning则是design feature learners。

      BOW+SPM的整体流程如图(2)所示:

图(2)

        Feature Extraction的整体过程就是先提取底层的特征(SIFT,HOG等),然后经过coding和pooling,得到最后的特征表示。

             ----Coding: nonlinear mapping data into another feature space

             ----Pooling: obtain histogram

        而SIFT、HOG本身就是一个coding+pooling的过程,因此BOW+SPM就是一个两层的Coding+Pooling的过程。所以可以说,SIFT、SURF等特征的提出,是为了寻找更好的第一层Coding+Pooling的办法;而SPM、ScSPM、LLC的提出,是为了寻找更好的第二层Coding+Pooling的办法。而ScSPM和LLC所提出的更好的Coding办法就是Sparse Coding。

图(3)

 

  • 再前言

        在总结ScSPM之前又要啰嗦些话。为啥会有SPM→ScSPM呢?原因之一是为了寻找better coding + better pooling的方式提高性能,原因之二就是提高速度。如何提高速度?这里的速度,不是Coding+Pooling的速度,而是分类器的速度。SPM设计的是一个Linear feature,在文章中作者用于实验则是用了nonlinear SVM(要用Mercer Kernels)。相比linear SVM,nonlinear SVM在training和testing的时候速度会慢的。至于其原因,我们不妨看看SVM的对偶形式:

(1)

        如果核函数是一个线性的kernel:K(z, zi)=zTzi,那么SVM的决策函数就可以改写为:

    (2)

          从两式可以看见,抛开训练和存储的复杂度不说,对于测试来说,(1)式对每个测试样本要单独计算K(z, zi),因此testing的时间复杂度为O(n)。而(2)式的wT可以一次性事先算出,所以每次testing的时间复杂度为O(1)。此外,linear classifier的可扩展性会更好。

          因此,如果能在coding+pooling后设计得到线性可分的特征描述,那就最好了。因此能否设计一个nonlinear feature + linear SVM得到与 linear feature + nonlinear SVM等效甚至更好的效果,成为ScSPM和LLC的研究重点。

  • ScSPM

        SPM在coding一步采用的是Hard-VQ,也就是说一个descriptor只能投影到dictionary中的一个term上。这样就造成了明显的重建误差(worse reconstruction,large quantization errors)。这样,原本很相似的descripors经过coding之后就会变得非常不相似了。ScSPM为此取消了这一约束,它认为descripor可以投影到某几个terms上,而不仅仅是一个。因此,其目标函数变成了:

     (3)

        其中M是descriptor的数目,Um表示第m个descriptor在字典V上的投影系数。

        它对投影系数用L1-norm做约束实现了稀疏。求解问题称为LASSO (least absolute shrinkage and selection operator),在得到稀疏结果的同时,它无法得到解析解,因此速度肯定是很慢的。关于L1-norm和LASSO问题,可以参看这里。

        为什么Sparse Coding好,主要有以下几个原因:

      1)已经提到过的重建性能好;[2]

      2)sparse有助于获取salient patterns of descripors;[2]

      3)image statistics方面的研究表明image patches都是sparse signals;[2]

      4)biological visual systems的研究表明信号的稀疏特征有助于学习;[4]

      5)稀疏的特征更加线性可分。[2]

         总之,"Sparse coding is a better building block“。

         Coding过后,ScSPM采用的Pooling方法是max pooling:Zj=max Uij。相比SPM的average pooling:Zj=1/M *Σ Uij。可以看见average pooling是一个linear feature representation,而max pooling是nonlinear的。我是这么理解再前言中提到的linear和nonlinear feature的。(@13.08.11:今天在写理解sparse coding的时候发现这里搞错了。不光是pooling的函数是线性的,VQ的coding得到的u关于x好像也是线性的。)

        作者在实验中得出max pooling的效果好于average pooling,原因是max pooling对local spatial variations比较鲁棒。而Hard-VQ就不好用max pooling了,因为U中各元素非0即1。

        另外实验的一个有趣结果是发现ScSPM对大的codebook size表现出更好的性能,反观SPM,codebook大小对SPM结果影响不大。至于为啥,我也不懂。

  • LLC

         LLC和ScSPM差不多了,也是利用了Sparsity。值得一说的是,其实Hard-VQ也是一种Sparse Coding,只不过它是一种重建误差比较大的稀疏编码。LLC对ScSPM的改进,则在于引入了locality。为了便于描述,盗用一下论文的图:

图(4)

        这个图实在是太棒了,太能解释问题了。VQ不用说,重点在于SC和LLC之间,LLC引入了locality的约束,即不仅仅是sparse要满足,非零的系数还应该赋值给相近的dictionary terms。作者在[4]中解释到,locality 很重要是因为:

     1)nonlinear function的一阶近似要求codes是local的;

     2)locality能够保证codes的稀疏性,而稀疏却不能保证locality;

     3)稀疏的coding只有再codes有局部性的时候有助于learning。

        总之,"locality is more essential than sparsity"。

        LLC的目标函数是:

     (4)

       和(3)一样,(4)可以按照加号的前后分成两部分:加号前的一项最小化是为了减少量化误差(学习字典、确认投影系数);加号后的一项则是做出假设约束(包括是一些参数的regularization)。这个求解是可以得到闭合解的,同时也有快速的近似算法解决这个问题,因此速度上比ScSPM快。

       di描述的是xi到每个dictionary term的距离。显然这么做是为了降低距离大的term对应的系数。

       locality体现出的最大优势就是,相似的descriptors之间可以共享相似的descriptors,因此保留了codes之间的correlation。而SC为了最小化重建误差,可能引入了不相邻的terms,所以不能保证smooth。Hard-VQ则更不用说了。

       实验部分,则采用max pooling + L2-normalization。

   

        文章的最后,盗窃一个ScSPM第一作者的总结表格结束吧(又是以偷窃别人图标的方式结束委屈)

 

References:

[1] S. Lazebnik, C. Schmid, and J. Ponce. Beyond bags of features: Spatial pyramid matching for recognizing natural scene categories. CVPR2006

[2] Jianchao Yang, Kai Yu, Yihong Gong, and Thomas Huang. Linear spatial pyramid matching using sparse coding for image classification. CVPR2009.

[3] Jinjun Wang, Jianchao Yang, Kai Yu, Fengjun Lv, and Thomas Huang. Locality-constrained linear coding for image classification. CVPR2010

[4] Kai Yu, Tong Zhang, and Yihong Gong. Nonlinear learning using local coordinate coding. NIPS2009.

[5] Kai Yu. CVPR12 Tutorial on Deep Learning: Sparse Coding.

-----------------------

作者:jiang1st2010

引用请注明来源:http://blog.youkuaiyun.com/jwh_bupt/article/details/9837555

稀疏编码及其改进(ScSPM,LLC,super-vector coding) LLC http://www.ifp.illinois.edu/~jyang29/LLC.htm The traditional SPM approachbased on bag-of-features (BoF) requires nonlinear classifiers to achieve goodimage classification performance. This paper 阅读详情

相关推荐

LLC学习笔记4

几篇参考文献存在着一个改进的顺序,BOF -> SPM -> ScSPm ->LLC 其中BOF->SPM是在Pooling阶段进行改进,SPM -> ScSPm ->LLC则是在coding阶段进行改进。。令X是一幅图像中提取得到的D维local descriptors, 给定一个由M个条目的codebook B=[b1,b2,…,bM]∈ℝ^(D X M),使用不同的编码方案将each des

Terry的专栏 3004

图像的稀疏表示(Sparse Representation)

文章目录前言稀疏信号稀疏表示稀疏分解字典生成应用图像稀疏表示图像去噪图像融合图像重构目标跟踪人脸识别其他 前言 在进入正题前先结合自己的经验对稀疏理论的相关内容扯几句。自己的话本身之前做了一段时间的图像融合内容,后来这块也放了放。但是之前在看论文的时候,基于稀疏理论的图像融合相关的论文还挺多的,但是一直没去仔细看这个,也没系统的整理过。最近看到好几篇2020年的论文,都是用这个做的融合,当然稀疏理论的应用场景远不止此。于是还是想再好好查一查,梳理一下。其实之前刚开始看这个东西的时候,挺抽象的,包括什么稀疏编

Zetropy 2万+

STRING数据库的蛋白质相互作用(PPI)网络分析

在转录调控相关的文献中,我们经常能够看到这样的蛋白质相互作用网络(protein protein interaction network,PPI network)。具体而言,这些相关的文献中首先通过RNA-seq、表达谱芯片或者蛋白质组分析等,找到了在不同分组样本间一系列的差异表达基因或蛋白。

weixin_43029125的博客 9455

图像的稀疏表示——ScSPM和LLC的总结

上一篇提到了SPM。这篇博客打算把ScSPM和LLC一起总结了。ScSPM和LLC其实都是对SPM的改进。这些技术,都是对特征的描述。它们既没有创造出新的特征(都是提取SIFT,HOG, RGB-histogram et al),也没有用新的分类器(也都用SVM用于最后的image classification),重点都在于如何由SIFT、HOG形成图像的特征(见图1)。从BOW,到BOW+SPM

blog 3万+

Palantir Vertex:数字孪生模拟与决策系统深度指南

Palantir Vertex是Foundry系统中的核心数字孪生模块,本质上是一个决策模拟器而非简单的数据可视化工具。它基于本体层构建,通过对象关系网络模拟现实世界实体,填补数据模型与业务决策间的鸿沟。核心功能包括:创建隔离的沙盒场景进行假设测试、修改参数模拟不同干预方案、对比虚实数据发现异常,并最终将最优决策回传至业务系统。典型应用场景涵盖供应链韧性评估、资产维护优化和应急方案制定等,帮助用户在复杂环境中做出更优决策。

轩哥的个人研究和成长记录 891

BLDC六步换相驱动实战:从霍尔真值表到PWM调速的代码实现

本文详细解析了BLDC六步换相驱动原理,从霍尔真值表解读到PWM调速的代码实现,提供了基于STM32的实战方案。重点介绍了霍尔信号解码、换相状态机设计以及PWM动态调速策略,帮助开发者快速掌握无刷电机驱动技术。

weixin_28273593的博客 211

稀疏表示字典学习KSVD算法详解与MATLAB实现(超清晰!

论文题目 K-SVD: An Algorithm for Designing Overcomplete Dictionaries for Sparse Representation 这篇论文的去噪效果还是很不错的,个人认为凡是学习图像去噪/复原这一方向的都应该学习。 我这篇文章是很久之前写的了,借鉴了一些大佬的理解,但由于时间久远,忘了哪部分是借鉴的谁,所以若有雷同请指出,我会重新编辑,附上大佬的...

一九九六年秋_ 3万+

Python | KS检验以及其余非参数检验的实现

Python | KS检验以及其余非参数检验的实现1 什么是KS检验2 KS检验分类?3 KS检验的Python实现3.1 检验指定的数列是否服从正态分布3.2 检验指定的两个数列是否服从相同分布4 其余的非参数检验4.1 Wilcoxon符号秩检验(t检验的非参数版本)4.2 Kruskal-Wallis H检验(方差分析的非参数版本)4.3 Mann-Whitney秩检验5 参考 1 什么是KS检验 定义:检验一个分布f(x)与理论分布g(x)【比如正态分布】是否一致,或两个观测值分布是否有显著差异的检

RUC_Lee的博客 1万+

图像的稀疏表示BoW、SPM、ScSPM和LLC介绍

图像的稀疏表示BoW、SPM、ScSPM和LLC介绍引言稀疏表示BoWSPMScSPMLLC参考文献 引言 首先介绍一下写这篇博客的背景,最近在看视频无监督的paper,无监督最早采用特征提取+聚类的模型,其中一篇提到了利用LLC进行快速聚类,所以了解了一下图像的稀疏表示。 图像的稀疏表示方法经历了BoW、SPM、LLC的发展历程,目前应用比较广的是LLC。 稀疏表示 BoW Bag Of Word(词袋)模型,是现在一种用于图像检索的一种方法。它最早用于对于文章内容的检索,原理是将文本看作是单词的集合,通

weixin_43844219的博客 2708

BUSCO评估基因组的完整性

因为数据库收集的时候找的就是在不同的物种间都是单拷贝的基因,所以说在评估的物种里面应该也是单拷贝的状态才对。基因组层面评估:先去基因组上预测这些基因,再去做评估,如果说给他是一个注释好的基因集,这个时候提供的是一个蛋白集合,它就直接是去进行同源搜索,再去评估,看BUSCO数据库里面的这些单拷贝基因有或者无;首先,tblastn也是同源搜索,同源搜索之后,去对转录本进行读码框预测,预测完的结果还是去进行hmmsearch的搜索(hmmsearch是做蛋白质结构域搜索的),最终拿到BUSCO评估结果。

qq_64400864的博客 2959

SAP 管道业务(Pipeline Procurement)是用于水、电、气等不间断供应且无库存管理的物料采购场景,核心是消耗即记账、无库存持有,通过 MM-FI 集成实现实时负债与成本过账

摘要:SAP管道业务适用于水电气等无库存管理的物料采购场景,通过消耗即记账机制实现实时负债与成本过账。核心配置包括创建PIPE物料类型(无库存管理)、维护管道采购信息记录、配置自动记账科目等。SAP PO可集成外部系统实现流程自动化,如自动过账提取数据、发票校验等。实施要点在于物料主数据、信息记录和科目确定的精准配置,以及PO接口的可靠对接,最终构建端到端的高效采购与财务结算体系。

金牌架构师 748

参数共享 稀疏交互 等变表示_图像的稀疏表示BoW、SPM、ScSPM和LLC介绍

引言首先介绍一下写这篇文章的背景,最近在看视频无监督的paper,无监督最早采用特征提取+聚类的模型,其中一篇提到了利用LLC进行快速聚类,所以了解了一下图像的稀疏表示。图像的稀疏表示方法经历了ScPM到LLC的发展历程,但是他们两者是建立在对BoW和SPM的修改上,因此本文将后者也纳入稀疏表示的范畴。需要注意的是,图像的稀疏表示的表述或许有些歧义,因为这些方法探讨或者研究的不是特征的提取方法,而...

weixin_42328834的博客 372

(考研湖科大教书匠计算机网络)第四章网络层-第三节3、4:划分子网的IPv4地址和无分类IP地址

子网掩码: 32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特作为子网号子网掩码使用连续的比特1来对应网络号和子网号子网掩码使用连续的比特0来对应主机号将划分子网的IPv4地址与其相应的子网掩码进行逻辑与运算就可得到IPv4地址所在子网的网络地址如下图。

快乐江湖的博客 1347

c++获取图像在直方图_图像的稀疏表示BoW、SPM、ScSPM和LLC介绍

引言首先介绍一下写这篇文章的背景,最近在看视频无监督的paper,无监督最早采用特征提取+聚类的模型,其中一篇提到了利用LLC进行快速聚类,所以了解了一下图像的稀疏表示。图像的稀疏表示方法经历了ScPM到LLC的发展历程,但是他们两者是建立在对BoW和SPM的修改上,因此本文将后者也纳入稀疏表示的范畴。需要注意的是,图像的稀疏表示的表述或许有些歧义,因为这些方法探讨或者研究的不是特征的提取方法,而...

weixin_39728909的博客 376

【DEIM创新改进】独家下采样创新改进篇 | ECCV 2026 | DEIM 引入FSD-Down频域-空间动态下采样,在下采样过程中保留小目标的高频信息、助力小目标检测、遥感小目标检测有效涨点

🔥本文提出了一种名为FSD-Down的频域-空间动态下采样模块,用于改进DEIM网络模型在小目标检测中的性能。FSD-Down通过小波分解显式保留低频语义和高频细节,结合分组卷积、动态通道权重和可学习缩放因子,自适应强化目标边缘与纹理特征。该模块能有效减轻传统下采样造成的频率混叠和细节丢失,提升对小目标、密集目标和低对比度目标的检测能力。实验表明,FSD-Down计算开销可控,在保持实时性的同时显著提升检测精度,特别是在VisDrone和AITODv2数据集上对小目标的检测性能提升显著。

Ai缝合怪、助力小伙伴高效发论文 82

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

先进的编码技术-稀疏表达-2-ScSPM和LLC的总结

稀疏编码系列: (一)----Spatial Pyramid 小结(二)----图像的稀疏表示——ScSPM和LLC的总结(三)----理解sparse coding(四)----稀疏模型与结构性稀疏模型 ---------------------------------------------------------------------------   前言

wuhang19911024的博客 1173

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

在线场景感知:图像稀疏表示—ScSPM和LLC总结(以及lasso族、岭回归)

前言: 场景感知其实不分三维场景和二维场景,可以使用通用的方法,不同之处在于数据的形式,以及导致前期特征提取及后期在线场景分割过程。场景感知即是场景语义分析问题,即分析场景中物体的特征组合与相应场景的关系,可以理解为一个通常的模式识别问题。 论文系列对稀疏编码介绍比较详细...本文经过少量修改和注释,如有不适,请移步原文...

alppkk4545的博客 305

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

在线场景感知:图像稀疏表示-ScSPM和LLC总结(lasso族、岭回归)

前言 场景感知应用于三维场景和二维场景,可以使用通用的方法,不同之处在于数据的形式,以及导致前期特征提取及后期在线场景分割过程。场景感知即是场景语义分析问题,即分析场景中物体的特征组合与相应场景的关系,可以理解为一个通常的模式识别问题。论文系列对稀疏编码介绍比较详细...本文经过少量修改和注释,如有不适,请移步原文。 code下载:http://www.ifp....

wishchinYang的专栏 3866

ScSPM和LLC

图像的稀疏表示——ScSPM和LLC的总结 分类: Machine Learning2013-08-09 09:52 790人阅读 评论(5) 收藏 举报 Sparse Representatio稀疏编码 目录(?)[+] 稀疏编码系列: (一)----Spatial Pyramid 小结(二)----图像的稀疏表示——ScSPM和LL

maxiemei的专栏 1365

C++版的LLC代码

图像稀疏编码总结:LLC和SCSPM ,文章对稀疏编码讲解非常详细。 《Locality-constrained Linear Coding for Image Classification》的作者提供Matlab的代码实现,见http://www.ifp.illinois.edu/~jyang29/LLC.htm。 下面是根据作者的代码,基于Open...

alppkk4545的博客 819

理解稀疏编码sparse coding

2016年01月03日 19:31:25阅读数:8558稀疏编码系列:(一)----Spatial Pyramid 小结(二)----图像的稀疏表示——ScSPM和LLC的总结(三)----理解sparse coding(四)----稀疏模型与结构性稀疏模型-----------------------------------------------------------------------...

初学者的博客 4万+
上一篇: 稀疏编码系列1:Spatial Pyramid Matching 小结
下一篇: 稀疏编码系列3:理解稀疏编码sparse coding
CopperDong
博客等级 码龄14年 1205粉丝 466原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值