Exemplar-SVMs for Object Detection and Beyond—Overview(一)

来源:互联网 发布:淘宝国际转运怎么开通 编辑:程序博客网 时间:2024/04/30 02:54

Exemplar-SVMs for Object Detection and Beyond--Overview(一)

Reference:

[1] Ensemble of Exemplar-SVMs for Object Detection and Beyond,ICCV 2011Carnegie Mellon University

[2] Exemplar-based Representations for Object Detection, Association and Beyond PHD thesis,2011

[3] Probabilistic outputs for support vector machines and comparisons to regularized likelihood methods 1999

[4] Image Retrieval and Classification Using Local Distance Functions NIPS 2007UC Berkeley

[5] Recognition by Association via Learning Per-exemplar Distances CVPR 08Carnegie Mellon University

[6]The proactive brain: using analogies and associations to generate predictions

Code: http://people.csail.mit.edu/tomasz/

HOG:Opencv HOG行人检测 源码分析(一)

DPM: DPM(Deformable Parts Model)原理

Overview

"Restricting the representations derived from scenes to being conceptual amounts to imposing a severe handicap on the visual system"

Shimon Edelman

对于分类问题,我们早已习惯,先分类标号,选择分类器训练,然后识别,根本没有想过还有没有其它方式。认知学的研究表明,大脑对于新事物的识别一个看"它像什么"的问题,而不是直接分类判断"它是什么"的问题。我们是通过和它最像的物体的信息来得知它是什么。英语中的recognition是re- cognition即再认知,再字即体现了参考先例的含义。扯得有点远了,有机会再把认知科学的观点整理一下有兴趣的可以看看文献[6]。本文遵照相似性划分正样本,而不是按照范畴类别划分,本文将这一点引入传统的统计学习方法,提出了Exemplar-SVM,属于instance-based methods。

上图的左边是一般的参数化方法的训练模式,比如HOG模板,将所有正样本和负样本放一起,寻求一个分界面。这种模式认为正样本是可以参数化的,可以用一个模型来表示,简而言之,认为正样本长得都很像。右边是本文提出的方法。它不是将所有正样本放在一起和负样本训练,而是每个正样本和所有不包含正样本的纯粹负样本放在一起训练。作者认为正样本是完全无法参数化的,即它们之间差异太大,因此每个正样本都应该自立门户形成各自的exemplar SVM ,而不是将正样本笼统的放在一起训练一个粗糙的category SVM 。

这种思想很极端,也很反常规,完全不顾正样本的共性,完全尊重它们的个性。这也是为什么这篇论文跟我要做的方向相关性不是很大,但是我却依然看得很仔细的原因。

这种做法可以最大程度地应对目标的各种形变。文献[4]说明了考虑个性的重要性:

Advantages

左边是HOG模板这类Category detector 的检测结果,我们能得到的仅仅只是Bus粗略的bounding box ,而右下角是Exemplar-SVM的检测结果,与其最相近exemplar是红色双层公交车,而这辆车事先就标记了粗略的分割,几何图形,甚至3D模型。因此后续如果做分割,三维重建等就特别方便。

总之,抛开识别率,复杂性,我们能得到的信息会更多。

Related

图 1

  1. k Nearest Neighbor

图 2

kNN算法非常直观,民主投票,我们就只参考周围大多数人的意见,比如我们周围参考3个人的意见,那么图中的绿色圆就划分为三角形一类,如果参考周围5个人的意见那它就划分为正方形一类。

k 自然就是参考样本的个数,当k=1时,就变成最邻近分类器了也就是NN。

很明显,对每一个测试样本,kNN需要和所有训练样本集都算一遍距离,然后找到k个距离最新的样本做参考,计算量特别大,此外分类的时候还需要保存训练集的样本,耗内存(属于memory-based learning),而且这种方法本身正确性也不高

  1. Per-exemplar distance functions

这种方法本质上也是计算距离,只不过它考虑到不同维度的距离权重不一样,有点像社会主义的民主投票,可以通过max margin 优化得到权值,具体参考文献[4],这也是一种经典的方法,可以好好看看,比如是构造正,负样本对。对比图 1,NN算法的分界面是正圆,而距离函数的分界面是椭圆,水平距离比垂直距离的权值要大。文献[4]和文献[5]和本文最为接近。

对比上面的结果,明显发现exemplar-SVM的效果要好,因为它使用了大量负样本训练,所以能很好的将负样本区分出来。

Result

(1)Detection

图中绿色的表示检测到的目标位置,黄色表示,将对应的exemplar 直接放在绿色的位置。

上图是检测错误的例子。

VOC 2007 的检测结果

与DPM Version 3(LDPM)对比,平均精确度有所降低,不过DPM模型确实要复杂得多,每个模板都有6个Parts,而且还考虑形变Cost,于是作者大呼unfair,但是DPM只用了2个模板,而作者的模板数目约为300!!与HOG(DT)对比,0.227 >> 0.097 不过我觉得这更不公平,HOG只用了单一整体模板,而这里却多达300!!!

下面是使用exemplar SVM所能提供的其它信息,看得眼花缭乱……

(2)Related Object Priming

马上有什么?马上有人吗?作者推断自行车/摩托车/马上有没有人很简单,如果样本马上面有人重合面积大于0.1,那么这个样本就可以来自动填充人,即如果在图像中检测到该马样本,则就说马上有人,人的位置直接就用直接使用样本中人的bounding box。其实这只是我的推测,作者这部分并不详细,Majority Voting 也没弄明白,竟然连参考文献都没有,估计是Hough 变换之类的……

(3)Segmentation

在PASCAL VOC 2007数据集上取得了 90.6% pixelwise accuracy ,有点恐怖哈

(4)geometry estimation

Exemplar SVM: 62:3% pixelwise labeling accuracy

《Geometric context from a single image》: 43:0%

DPM +nearest neighbor : 51:0%

(4)3D Model Transfer


1 0