上个博文我讲了一些CNN相关的论文,比较浅显都是入门知识,这节课来总结一些稀疏表示方面的文章。至于上个博文说到的要讲的sparse coding的知识,我将会放在Deep Learning的专题里面讲解。好了,闲话不多说,下面还是列出几篇我看过的sparse representation方面的论文。

第一篇:Robust Face Recognition via Sparse Representation,这是08年马毅等发表PAMI上的一篇文中,利用稀疏表达识别人脸,打开Google Scholar引用次数3500多次。其实之前我一直没弄懂SP到底是怎样工作的,最后才明白其实SRC相当于一种分类的方法,但是不同于传统的NN, NS, SVM等分类方法。SRC是利用字典得到一系列的稀疏系数,然后利用系数的性质得到test data的所属类别。其原理如下图所示:

上图最左边是一张test image(上下两张图片分别是occluded和corrupted),每个test image可以表示字典和对应的系数相乘然后加上一个误差。等号右边第一列就是图像,第二列是字典的可视化,第三列是误差。红色的系数对应的就是字典中红色框出的人脸,实验中我们用AR库700个样本构建字典,一共100类人脸,每类7个样本。指出,这里的字典是过完备字典(即字典的行数小于列数),最简单的字典我们可以直接把每一个训练样本拉成列得到,具体构建方法如下:

A就是我们要构造的字典,A1~Ak对应k类,其中, 那么给定一张测试样本y就可以表示成这样:

其中就是我们要求的系数。那么问题来了,给定一个test 样本,怎么才能让这个系数很好的表示呢。我们想是一个向量,如果test对应那一类的样本的系数比较大,而其他类对应的系数为零,这样我们就能用很好的表示test了,且这样的系数也是稀疏的。那么怎么才能使得这样的系数足够稀疏呢,这就是数学上的问题了。给定要求的式子:

其中y是test样本, A是字典,x0是待求的系数,我们的目的是要使得x0足够稀疏。这里先来谈谈之前的问题,“过完备字典”,为什么字典必须是过完备的呢。假设我们的字典不是过完备的,那么上式是过定的,对应的x0就只有唯一解了,而这个解往往不是稀疏的。相反,如果字典是过完备的,那么上式就是欠定的,对应着无穷多的。这样我们可以做一个最优化问题,找出这无穷多解里最稀疏的作为上式的解,而这个解对应着就是同类系数非零,其他类系数全零的情况了。

那么问题来了,我们怎么才能找到这个最稀疏的解呢,我们可以看成是求下式的一个最优化问题:

由于求解这个0范数是一个NP难问题,所以文中想到放宽稀疏条件,转而求解1范数问题:

这一点文中有详细的讲解:

由于实际情况中往往会引入噪声,所以我们求解中我们实际上是求解这个式子(其中Z是噪声),那么在求解这个优化问题的约束项就变成了这样

通过求解这个最优化问题,我们就可以得到最稀疏的1范数解,理论上说这个解肯定没有0范数解稀疏,但是通过不断的迭代这个解释可以求出来的并且这个解在分类问题上效果已经很好了,这样我们就可以通过求出的解(也就是稀疏系数),来判断y到底属于哪一类。之前不是说过我们的字典用了700张image,100individual(7each)吗。假设test对应的是第三类的样本,那么理论上说第三类的7个系数非零,而其他的99类的系数全零。由于实际中求出的解不可能如此理想,所以我么可以通过判断residual(残差)来决定y属于哪一类。residual如下:

其中,对应的是第i类的系数,A是字典,y是测试样本。这样我们可以把100类每类的7个系数分别代入上式,哪一类使得最小,y就属于那一类。这就是SP的分类原理了。具体算法求解过程如下:

由于用系数分类的时候我们必须判断系数的两个性质residuals和sparsity,residuals越小说明测试样本被字典表示的效果越好。会出现这种情况,给定一个非人脸的样本也能使得很好的被字典表示,但是这时候sparsity往往不满足。也就是说并非residuals越小越好,要把两者结合起来判断才可能,才能很好的用来分类,于是文中提出了SCI的概念:

(x是test样本对应的系数)我们判断此测试样本valid(即此样本是人脸样本),In Algorithm 1, one may choose to output the identity of y only if it passes this criterion。

至此我们大概把稀疏表达的原理说清楚了,上面提到的字典构建方法比较简单,直接用train data拉成列。我们可以改进下利用一些特征选择的算法提取样本的特征,然后用这些特征来构建字典,文中利用Eigenfaces, Laplacianfaces,  Fisherfaces, Randomfaces and downsampled images 分别进行了测试,用这些方法进行特征选择然后构建字典。得到的分类效果如下图:

从图中可以看出这几种方法得到的效果相差无几,也就是说SRC对特征并不敏感,即使是不进行任何特征选择也能得到很好的分类效果。同时文中还把SRC的分类效果和NN,NS,SVM等分类效果做了比较,其结果如下:

从图中不难看出,SRC的分类效果远远要好过其它三类,并且文中分析SRC对遮挡情况的鲁棒性也比较好,总而言之这是一个非常好的东西,哈哈。多的不说了,如要深究自己去细看文章就是了。

第二篇:Sparse Representation Based Fisher Discrimination Dictionary Learning for Image Classification 这篇文章是偶然情况下一个同学给我看的,看了之后就感觉灰常不错,对我们这种初出茅庐的菜鸟启发性很大。这篇文章其实是对上篇文章的一个改进,从题目我们就可以看出这篇文章把SRC和Fisher线性判别做了一个综合,文章巧妙就巧妙在将FLD的思想用到了系数的分析上而非类别的分析上。其数学思想如下所示:

其中 。如果我们能使得最小,表示此测试样本能很好的被字典表示,如果能使得

最小,就能使同类系数最紧密,不同类系数最稀疏。同时使这两项最小,就能得到更好的稀疏系数了,显然这个系数比之前SRC的系数更好。 这就是这篇文章的大概思想了,实验代码我也跑过,分类效果确实不错,但速度着实太慢,实时性不好。

第三篇:Robust Object Tracking via Sparsity-based Collaborative Model 这是教研室学术交流会上一个师兄讲到的文章,后来我又仔细的把文章看了一篇,文章利用SPC进行目标跟踪,首先利用第一帧建立训练样本字典,字典的构建如下所示:

A+表示正样本训练的字典,A-是负样本构成的字典。把A+和A-放在一起构建一个总的字典A。红色框内表示前景目标,红色框外表示背景目标。由于稀疏表示构建的字典必须是过完备的这就要求训练量很大,但实际检测中为了实时性好不可能选取太多的训练样本。于是文中就利用特种空间去冗余的方法降低每一个样本的行数,以求达到字典过完备的目的。这是本文的一大亮点之一。其特征选取方法如下:

在实验过程中由于,人的移动背景区域在不断的变化,所以我们要不断更新负样本。而正样本是我们要检测的目标,正样本就不必更新了。文中还有一大亮点就是利用kmeans得到k个聚类中心,利用这些聚类中心构建一个新的字典D,并且利用字典D得到稀疏系数,生成直方图。在待检测区域滑窗选取patch,每一个patch就会对应着一个系数直方图,利用这个系数直方图和原直方图比较就可以知道,这个patch是否遮挡。具体操作如下:

cv论文(SPARSE REPRESENTATION相关)的更多相关文章

  1. cv 论文(CNN相关)

    最近发现很多以前看的论文都忘了,所以想写点东西来整理下之前的paper,paper主要是cv(computer vision)方向的. 第一篇:Gradient-based learning appl ...

  2. cv论文(Low-rank相关)

    最近把以前的几篇关于Low-rank的文章重新看了一遍,由于之前的一些积累,重新看一遍感觉收获颇多.写这篇博文的时候也参考了一些网上的博客,其中数这篇博文最为经典http://blog.csdn.ne ...

  3. [综] Sparse Representation 稀疏表示 压缩感知

    稀疏表示 分为 2个过程:1. 获得字典(训练优化字典:直接给出字典),其中字典学习又分为2个步骤:Sparse Coding和Dictionary Update:2. 用得到超完备字典后,对测试数据 ...

  4. [UFLDL] *Sparse Representation

    Deep learning:二十九(Sparse coding练习) Deep learning:二十八(使用BP算法思想求解Sparse coding中矩阵范数导数) Deep learning:二 ...

  5. {Reship}{Sparse Representation}稀疏表示

    ===================================================== http://blog.sina.com.cn/s/blog_6d0e97bb01015wo ...

  6. 基于稀疏表示的图像超分辨率《Image Super-Resolution Via Sparse Representation》

    由于最近正在做图像超分辨重建方面的研究,有幸看到了杨建超老师和马毅老师等大牛于2010年发表的一篇关于图像超分辨率的经典论文<ImageSuper-Resolution Via Sparse R ...

  7. Norm and Sparse Representation

    因为整理的时候用的是word, 所以就直接传pdf了. 1.关于范数和矩阵求导.pdf 参考的主要是网上的几个博文. 2.稀疏表示的简单整理.pdf 参考论文为: A Survey of Sparse ...

  8. {Reship}{Sparse Representation}稀疏表示入门

    声明:本人属于绝对的新手,刚刚接触“稀疏表示”这个领域.之所以写下以下的若干个连载,是鼓励自己不要急功近利,而要步步为赢!所以下文肯定有所纰漏,敬请指出,我们共同进步! 踏入“稀疏表达”(Sparse ...

  9. 稀疏表示 Sparse Representation

    稀疏表示_百度百科 https://baike.baidu.com/item/%E7%A8%80%E7%96%8F%E8%A1%A8%E7%A4%BA/16530498 信号稀疏表示是过去近20年来信 ...

随机推荐

  1. UCML平台中 如何设置列表单元格中的链接失效

    解决方案: 找到“a.datagrid-cell-bclink”,麻烦的是这个标记是由js动态加载的,需要等待这个加载完成:等加载完成后,删除a标记“$(“a.datagrid-cell-bclink ...

  2. win8系统下保存出现闪退的解决方案

    不知道有没有人和我一样用的是win8系统,同时还遇到保存QQ截图保存闪退.保存sublime文件闪推.系统自带截图保存闪退.....更可恶的是我用chrome中百度搜索“win8保存东西闪退”结果浏览 ...

  3. 关于JS异步加载方案

    javascript延迟加载的解决方案: 1.使用defer标签 <span style="font-size: small;"><script type=&qu ...

  4. 用JavaScript刷新框架子页面的七种方法

    下面以三个页面分别命名为framedemo.html,top.html,button.html为例来具体说明如何做. 其中framedemo.html由上下两个页面组成,代码如下: < !DOC ...

  5. 解决Handler与Activity同步冲突

    这个问题可以由Handler的一个子类HandlerThread来解决. 程序参考自Mars老师的Android课程第一季第十五集. 代码以及注释有所改动,如下: package com.handle ...

  6. jqueryGrid 内置的onclickSubmit afterSubmit

    $(document).ready(function() { $('#jpgCustomers').jqGrid({ //url from wich data should be requested ...

  7. Ajax入门小例子

    大牛文章:http://www.cnblogs.com/guduoduo/p/3681296.html                               ---Ajax基础学习 http:/ ...

  8. 11g RAC R2 之Linux DNS 配置

    在动手配置前,最好先了解下DNS的理论,以免犯不必要的错误.这都是被坑后的觉悟 -_-!!! Oracle 11g RAC 集群中引入了SCAN(SingleClientAccessName)的概念, ...

  9. Python原始套接字编程

    在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互. 因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_R ...

  10. Linux /dev 自动创建设备节点

    #include <linux/module.h> #include <linux/module.h> #include <linux/kernel.h> #inc ...