笔记:Deep attributes from context aware regional neural codes

来源:互联网 发布:java删除文件 编辑:程序博客网 时间:2024/04/30 02:03

这篇文章是基于CNN特征结合传统分类器的一个文章,可以算是当前的一大热点方向,最后的实验结果在Pascal Voc07以及12上的效果也相当好,说明这个工作确实是很有价值的。
从两个方面对文章进行说明:
1)特征:文章的一个亮点就是采用了proposal来提取特征,用于分类等等一些任务。这个的创新在于之前的特征都是基于整幅图,将整个图片用在pre-trained CNN,然后将中间层的结果作为特征,这种特征一方面无法解释, 另一方面整幅图的特征往往重点不突出,这个就是我理解的semantic information。本文采用的deep attributes(DA)采用的步骤如下:首先对整个图像提取proposal(本文提到的提取proposal的方法包括edge box或者是selective search),然后将这些proposal作为输入,提取相应区域的regional feature;最后将这些feature作为输入,做一个CRP(cross region pooling).作为最后训练分类器的特征。下面这个图很好的表示了这个过程:
这里写图片描述
关于region features这块确实很巧妙,不过它对于传统的方法应该也是可以用的,将目标跟踪的proposal引入到分类任务中,可以有效的区分背景与分类目标,当然这里需要训练集里的目标也比较清晰。不知道这个是否之前在传统的模型就有人试过。
2)训练分类器:提取到DA之后,可以直接用于训练传统的分类器了,比如SVM或者其他线性分类器。文章在这个基础上,进一步结合proposal的选取做了一个工作。我们知道一幅图不同proposal对应图像不同的region,这样的话每个region对与最终分类的贡献也就不一样,可以分为三类:目标region:本身包含了分类目标(比如人);context region:上下文,比如出现了一匹马通常就会有人(一般是人骑马);还有就是背景区域:比如一棵树和人同时出现在图像中,而树和人在日常生活中并没有太相关的联系,所以可以把树看成背景区域,包含噪声。这三种很明显的target region对分类的贡献高于其他两者,context region高于background noise region。如何利用这些信息进行refining?文章提出了CARR(context aware region refining):
这里写图片描述
通俗的说就是依靠训练的分类器给每个region一个分数,根据这个分数来进行排序;然后选取region中分数最高的(可以看作对分类贡献最大的) 一部分做CRP构造整个图的特征用于训练分类器。通过这种方式降低了图片中的噪声信息对训练阶段的影响。
文章给出了对应的预测阶段的分类算法:
这里写图片描述
这里有个地方不明白,测试阶段为什么还有for t=1:T那层循环,按照我的理解,应该只需要用训练阶段最终的分类器去判别不同region的分数,然后排序即可,也就是for t=T:T这个一层循环即可,而且也看不懂T-1层循环的结果对最终T层循环的结果有什么影响。这个还有待看过文章的人的指点。

学习笔记,不当之处敬请指点~

0 0
原创粉丝点击