精华内容
下载资源
问答
  • 论文提出了新的少样本目标检测算法,创新点包括Attention-RPN、多关系检测器以及对比训练策略,另外还构建了包含1000类的少样本检测数据集FSOD,在FSOD上训练得到的论文模型能够直接迁移到新类别的检测中,不需要...

    论文提出了新的少样本目标检测算法,创新点包括Attention-RPN、多关系检测器以及对比训练策略,另外还构建了包含1000类的少样本检测数据集FSOD,在FSOD上训练得到的论文模型能够直接迁移到新类别的检测中,不需要fine-tune

    来源:晓飞的算法工程笔记 公众号

    论文: Few-Shot Object Detection with Attention-RPN and Multi-Relation Detector

    Introduction


      不同于正常的目标检测任务,few-show目标检测任务需要通过几张新目标类别的图片在测试集中找出所有对应的前景。为了处理好这个任务,论文主要有两个贡献:

    • 提出一个通用的few-show目标检测算法,通过精心设计的对比训练策略以及RPN和检测器中加入的attention模块,该网络能够榨干目标间的匹配关系,不需要fine-tune就可以进行靠谱的新目标检测。实验表明,early stage的attention模块能够显著提升proposal的质量,而后面的多关系检测(multi-relation detector)模块则能有效抑制和过滤错误的背景
    • 提供了一个1000类的少样本训练集FSOD,论文提出的模型的性能提升有一定程度得益于此训练集,是一个前所未有的训练集

    FSOD: A Highly-Diverse Few-Shot Object Detection Dataset


      尽管目前目标检测的训练集已经非常庞大,但是对于少样本目标检测算法的使用而言,这些训练集的类别都太少了。因此,论文构造了一个少样本目标检测专用的训练集

    Dataset Construction

      新训练集基于ImageNet(选了531类)和Open Images dataset V4(选了469类),但训练集间的类别不同,为了防止合并后存在漏标的情况,先对label进行分析和合并成树状结构,补充标注,然后去掉标注质量差的图片,包括包含目标太小(0.05%\le 0.05\%)的图片。将类别分为训练集和测试集,先用COCO的类别作为基础训练集,防止pretrain的影响,然后尽量选择与当前训练集差距较大的类别作为测试集,共包含200类,再选择另外800类作为训练集

    Dataset Analysis

      新训练集的数据情况如图3和表1,主要有两个特性:

    • High diversity in categories,类别覆盖的领域很多,包括动物、衣服、武器等,且训练集和测试集的类别来自不同的领域
    • Challenging setting,数据集在box大小和宽高比上有很多种,26.5%的图片包含至少3个目标,且有大量非目标类别的物体,干扰性很大

    Our Methodology


    Problem Definition

      给予包含目标特写的辅助图片(support image)scs_c以及可能包含cc类目标的查询图片qcq_c,任务是找出查询图片中所有辅助图片对应的类别目标,并且标记其准确的位置。如果辅助集包含KK个类别,每个类提供NN张图片,则称为K-way N-shot检测

    Deep Attentioned Few-Shot Detection

      论文提出新attention网络,该网络能够在RPN模块和多关系检测模块中学习辅助集与查询集间的通用的匹配关系。网络为包含多分支的权重共享框架,一个分支用于查询集,其它则用于辅助集(为了方便,图4只画了一个分支),对于同类别的辅助分支,使用平均特征图作为辅助特征图。查询分支的权重共享主干为Faster R-CNN(包括RPN),使用这个分支来训练辅助集和查询集的匹配关系,能够学习到同类别的通用知识

    • Attention-Based Region Proposal Network

      在少样本目标检测中,RPN能够产生潜在的相关box用于接下来的检测任务,不仅要分辨前景和背景,还要过滤不属于辅助集的前景。如果没有足够的辅助集信息,RPN将会产生大量不相关的proposal。为了解决这个问题,提出了attention RPN,能够使用辅助图片的信息来过滤背景以及不相关的前景,产生更少但更准的候选目标

      Attention RPN的核心是计算相似度特征图,对于辅助特征图XtS×S×CX\in t^{S\times S\times C}以及查询特征图YtH×W×CY\in t^{H\times W\times C},相似度特征图GG计算如上。辅助特征XX用来作为核在查询特征图上进行类似depth-wise卷积的滑动。在实际中,查询特征采用RPN的输入特征,用于卷积的辅助特征大小为1×11\times 1,由global average产生,在获得attention特征后,使用3×33\times 3卷积进一步提取特征,然后接objectness分类和box预测,attention RPN的loss LrpnL_{rpn}会跟Faster R-CNN一样加入到模型的训练中

    • Multi-Relation Detector

      RPN后面一般会接一个检测器用于对proposal进行重新评估和调整,而论文则希望检测器能够有强大的类别区分能力,提出了多关系检测器(multi-relation detector)来度量相似性.该检测器包含3个attention相似性模块,将3个模块的分数求和作为最终的匹配分数。对于大小均为7×7×C7\times 7\times C的辅助特征fsf_s和查询特征fqf_q

    • global-relation head,用于学习全局匹配的深层embedding。将fsf_sfqf_qconcatenate成特征fcf_c,然后平均池化成1×1×2C1\times 1\times 2C,最后用加ReLU的两层全连接层输出最后的分数
    • local-correlation head,学习pixel-wise和depth-wise的关系,即对应位置的关系。首先使用1×1×C1\times 1\times C卷积分别操作fsf_sfqf_q,使用前面的Attention RPN的相似性计算Gh,w,cG_{h,w,c}进行depth-wise的相似性计算获得相似性特征图,S=H=W=7S=H=W=7,最后用单层全连接层获得分数

    • patch-relation head,用于学习非线性的块匹配,即一对多的关系。将fsf_sfqf_qconcatenate成特征fcf_c,然后输出到表8的块关系模块中,表8的卷积层后面都接ReLU,所有卷积层和池化层都进行0填充,模块将特征图从7×77\times 7下采样为1×11\times 1(这里池化层的s1/p0感觉描述不清楚,等源码放出来再看看),最后同时接两个全连接层,一个全连接产生匹配分数,另外一个产生bbox的预测

      论文对3种head的重要性进行了实验,可以看到这3种head能很好地互补,结合起来能够完整地表达目标间的关系

    Two-way Contrastive Training Strategy

      通常少样本训练策略为每次输入为(qc,sc)(q_c,s_c),论文认为模型应该同时学习识别同类别和区分不同类别,提出2-way对比训练策略

      如图7,该策略每轮随机选择一张查询图片qcq_c、一张辅助图片scs_c以及一张别的类别的辅助图片sns_n组成三元组(qc,sc,sn),cn(q_c, s_c, s_n),c\ne n,查询图片中只有cc类目标标记为前景。在训练时,不仅学习(qc,sc)(q_c,s_c)间的相似性,也学习(qc,sn)(q_c,s_n)间的差异性。由于背景proposal的数量比较大,占据着训练过程,所以(pf,sp)(p_f,s_p)(pb,sp)(p_b,s_p)(pb,sn)(p_b,s_n)控制为1:2:1比例,根据匹配分数从高到低选择。每个proposal的损失为L=Lmatching+LboxL=L_{matching}+L_{box},匹配损失使用二值交叉熵

      论文对不同的训练策略进行了对比,2-way 5-shot对比训练策略效果最优,并且可以看到attention RPN也是有效的,AP50AP_{50}提升了1.9

    Experiments


    Training Details

      查询图片短边为600像素,长边上限1000像素,辅助图片裁剪目标区域加16像素的位置,resize然后0填充至320×320320\times 320,在推理时,相同类别的辅助集使用平均特征集

    Comparison with State-of-the-Art Methods

      这里表格的finetune是指直接在测试集上进行finetune

    Realistic Applications

    More Categories vs More Samples?

    CONCLUSION


      论文提出了新的少样本目标检测算法,创新点包括Attention-RPN、多关系检测器以及对比训练策略,另外还构建了包含1000类的少样本检测数据集FSOD,在FSOD上训练得到的论文模型能够直接迁移到新类别的检测中,不需要fine-tune



    如果本文对你有帮助,麻烦点个赞或在看呗~
    更多内容请关注 微信公众号【晓飞的算法工程笔记】

    work-life balance.

    展开全文
  • 作者 |VincentLee来源 |晓飞的算法工程笔记不同于正常的目标检测任务,few-show目标检测任务需要通过几张新目标类别的图片在测试集中找出所有对应的前景。为了处理好这个任...

    作者 | VincentLee

    来源 | 晓飞的算法工程笔记

    不同于正常的目标检测任务,few-show目标检测任务需要通过几张新目标类别的图片在测试集中找出所有对应的前景。为了处理好这个任务,论文主要有两个贡献:

    • 提出一个通用的few-show目标检测算法,通过精心设计的对比训练策略以及RPN和检测器中加入的attention模块,该网络能够榨干目标间的匹配关系,不需要fine-tune就可以进行靠谱的新目标检测。实验表明,early stage的attention模块能够显著提升proposal的质量,而后面的多关系检测(multi-relation detector)模块则能有效抑制和过滤错误的背景

    • 提供了一个1000类的少样本训练集FSOD,论文提出的模型的性能提升有一定程度得益于此训练集,是一个前所未有的训练集

    FSOD: A Highly-Diverse Few-Shot Object Detection Dataset

    尽管目前目标检测的训练集已经非常庞大,但是对于少样本目标检测算法的使用而言,这些训练集的类别都太少了。因此,论文构造了一个少样本目标检测专用的训练集

    Dataset Construction

    新训练集基于ImageNet(选了531类)和Open Images dataset V4(选了469类),但训练集间的类别不同,为了防止合并后存在漏标的情况,先对label进行分析和合并成树状结构,补充标注,然后去掉标注质量差的图片,包括包含目标太小()的图片。将类别分为训练集和测试集,先用COCO的类别作为基础训练集,防止pretrain的影响,然后尽量选择与当前训练集差距较大的类别作为测试集,共包含200类,再选择另外800类作为训练集。

    Dataset Analysis

    新训练集的数据情况如图3和表1,主要有两个特性:

    • High diversity in categories,类别覆盖的领域很多,包括动物、衣服、武器等,且训练集和测试集的类别来自不同的领域

    • Challenging setting,数据集在box大小和宽高比上有很多种,26.5%的图片包含至少3个目标,且有大量非目标类别的物体,干扰性很大

    方法论


    Problem Definition

    给予包含目标特写的辅助图片(support image)以及可能包含类目标的查询图片,任务是找出查询图片中所有辅助图片对应的类别目标,并且标记其准确的位置。如果辅助集包含个类别,每个类提供张图片,则称为K-way N-shot检测。

    Deep Attentioned Few-Shot Detection

    论文提出新attention网络,该网络能够在RPN模块和多关系检测模块中学习辅助集与查询集间的通用的匹配关系。网络为包含多分支的权重共享框架,一个分支用于查询集,其它则用于辅助集(为了方便,图4只画了一个分支),对于同类别的辅助分支,使用平均特征图作为辅助特征图。查询分支的权重共享主干为Faster R-CNN(包括RPN),使用这个分支来训练辅助集和查询集的匹配关系,能够学习到同类别的通用知识。

    • Attention-Based Region Proposal Network


    在少样本目标检测中,RPN能够产生潜在的相关box用于接下来的检测任务,不仅要分辨前景和背景,还要过滤不属于辅助集的前景。如果没有足够的辅助集信息,RPN将会产生大量不相关的proposal。为了解决这个问题,提出了attention RPN,能够使用辅助图片的信息来过滤背景以及不相关的前景,产生更少但更准的候选目标.

    Attention RPN的核心是计算相似度特征图,对于辅助特征图以及查询特征图,相似度特征图计算如上。辅助特征用来作为核在查询特征图上进行类似depth-wise卷积的滑动。在实际中,查询特征采用RPN的输入特征,用于卷积的辅助特征大小为,由global average产生,在获得attention特征后,使用卷积进一步提取特征,然后接objectness分类和box预测,attention RPN的loss 会跟Faster R-CNN一样加入到模型的训练中

    • Multi-Relation Detector

    RPN后面一般会接一个检测器用于对proposal进行重新评估和调整,而论文则希望检测器能够有强大的类别区分能力,提出了多关系检测器(multi-relation detector)来度量相似性.该检测器包含3个attention相似性模块,将3个模块的分数求和作为最终的匹配分数。对于大小均为的辅助特征和查询特征

    • global-relation head,用于学习全局匹配的深层embedding。将concatenate成特征,然后平均池化成,最后用加ReLU的两层全连接层输出最后的分数

    • local-correlation head,学习pixel-wise和depth-wise的关系,即对应位置的关系。首先使用卷积分别操作,使用前面的Attention RPN的相似性计算进行depth-wise的相似性计算获得相似性特征图,,最后用单层全连接层获得分数

    • patch-relation head,用于学习非线性的块匹配,即一对多的关系。将concatenate成特征,然后输出到表8的块关系模块中,表8的卷积层后面都接ReLU,所有卷积层和池化层都进行0填充,模块将特征图从下采样为(这里池化层的s1/p0感觉描述不清楚,等源码放出来再看看),最后同时接两个全连接层,一个全连接产生匹配分数,另外一个产生bbox的预测

    论文对3种head的重要性进行了实验,可以看到这3种head能很好地互补,结合起来能够完整地表达目标间的关系。

    Two-way Contrastive Training Strategy

    通常少样本训练策略为每次输入为,论文认为模型应该同时学习识别同类别和区分不同类别,提出2-way对比训练策略。

    如图7,该策略每轮随机选择一张查询图片、一张辅助图片以及一张别的类别的辅助图片组成三元组,查询图片中只有类目标标记为前景。在训练时,不仅学习间的相似性,也学习间的差异性。由于背景proposal的数量比较大,占据着训练过程,所以控制为1:2:1比例,根据匹配分数从高到低选择。每个proposal的损失为,匹配损失使用二值交叉熵。

    论文对不同的训练策略进行了对比,2-way 5-shot对比训练策略效果最优,并且可以看到attention RPN也是有效的,提升了1.9。

    实验

    Training Details

    查询图片短边为600像素,长边上限1000像素,辅助图片裁剪目标区域加16像素的位置,resize然后0填充至,在推理时,相同类别的辅助集使用平均特征集

    Comparison with State-of-the-Art Methods

      这里表格的finetune是指直接在测试集上进行finetune

    Realistic Applications


    More Categories vs More Samples?

    结论

    论文提出了新的少样本目标检测算法,创新点包括Attention-RPN、多关系检测器以及对比训练策略,另外还构建了包含1000类的少样本检测数据集FSOD,在FSOD上训练得到的论文模型能够直接迁移到新类别的检测中,不需要fine-tune。

    论文地址:https://arxiv.org/abs/1908.01998

    【end】

    原力计划

    《原力计划【第二季】- 学习力挑战》正式开始!即日起至 3月21日,千万流量支持原创作者!更有专属【勋章】等你来挑战

    推荐阅读

      你点的每个“在看”,我都认真当成了AI

    展开全文
  • 作者 |VincentLee来源 | 晓飞的算法工程笔记该论文研究了非常有意义的增量式少样本目标检测场景iFSD(Incremental Few-Sh...

    作者 | VincentLee

    来源 | 晓飞的算法工程笔记

    该论文研究了非常有意义的增量式少样本目标检测场景iFSD(Incremental Few-Shot Detection),场景设置如下:

    • 检测模型可以在包含充足样本的基础类别上进行训练

    • 训练好后,iFSD能够应用到真实世界中,任何新类别在任何时候都能通过少量标注样本进行注册

    • 对于无限的新类别的学习,在内存使用量、存储用量和计算量上都应该是可行的,理想情况下,模型可以发布在资源有限的设备上,如手机和机器人

    目前的常规目标检测算法大都难以适用于iFSD的场景设置,一般的做法是对新类别进行fine-tune,但这样既耗时效果又一般。为此,论文提出无限制CentreNet(OpeN-ended Centre nEt, ONCE),在原CentreNet(CenterNet?)的基础上,采用基于特征的知识迁移策略,将网络分成类可知和类不可知模块进行增量式少样本学习。首先使用基类训练一个通用的特征提取器,然后基于meta-learning学习class code生成器,最后通过结合特征和class code进行目标定位。

    论文的主要贡献如下:

    • 在增量式少样本目标检测问题上,论文首次尝试减少常规需要深度训练的目标检测算法对大量训练数据进行批量训练的依赖

    • 提出无限制CentreNet(OpeN-ended Centre nEt, ONCE),将CentreNet适应到增量式少样本场景中

    • 在目标检测和服装关键点检测实验上,ONCE都比目前的方法要好

    方法论

    增量式少样本目标检测算法(Incremental Few-Shot Detection, iFSD)的目标为获得能够仅使用少量样本就能进行增量式学习新类别学习器,将目标类别分为足够样本的基础类别和少量样本的新类别,分别用于系统初始化和增量式学习,注意在增量式学习期间不能使用基类数据。

    目标检测架构

    常规的目标检测算法由于两阶段设计以及softmax分类器的使用,导致很难动态直接加入新类别。论文选择了CentreNet作为基础模型,出于以下两点考虑:

    • 高效的one-stage目标检测pipeline

    • 类别独立的建模范式(per-class heatmap centroid prediction),新类能够以插件形式接入

    CentreNet将目标检测定义为point-attribute的回归问题,结构如图1,将中心点和空间大小(宽和高)作为回归目标,每个目标使用2D heatmap进行表示,而heatmap是类间独立的。

    Incremental Few-shot Object Detection

    由于CentreNet是批量学习的模型,不适合iFSD场景,在其结构上引入meta-learning的思想,即文中的无限制CentreNet(OpeN-ended Centre nEt , ONCE)

    Model formulation:ONCE将CtreNet分为两部分:(i) 通用的特征提取器,将输入转化为3D特征图 (ii) 目标定位器,包含用于将特征图成heatmap的类特定编码(class code)。为了脱离批量学习的形式,类特定编码(class code)由meta-learned network(class code generator)根据辅助集生成

    Meta-Training: Learning a Few-Shot Detector,为了充分压榨基础类别的作用,将ONCE训练分别两个串行的阶段。第一阶段训练类不可知的特征提取器,第二阶段固定特征提取器,联合训练目标定位器和meta-network,meta-network根据给定的辅助集生成类特定编码,目标定位器则结合类编码和特征进行少样本目标定位学习

    Meta-Testing: Enrolling New Classes,给予包含少量标注图片的新类别辅助集,直接使用学习到的特征提取器、目标定位器和meta-network。先通过meta-network生成类特定编码参数化目标定位器,然后直接进行图2 stage I对应的推理,不需要模型再训练。

    • Stage I: Feature Extractor Learning

    阶段一主要训练ONCE的类可知特征提取器,使用正常的CentreNet训练方法进行完整训练,目标定位器不用于阶段二,但后面基类的class code会复用阶段一的。

    对于训练图片,提取类可知特征图,目标定位器结合学习到的与类相关的卷积核(class code)得到类的中心点heatmapYk。

    对于目标的定位,先确定局部峰值,局部峰值为bbox输出位置,要求大于等于所有临界像素,最终的bbox结果如公式2,为中心偏移,为尺寸预测,结合offset code和size code获得,具体方法与上面的类别heatmap获取类似,使用回归损失对的参数和的参数进行优化。

    • Stage II: Class Code Generator Learning

    在阶段一学习到的参数仅包含基类,是固定的。为了适应iFSD场景,使用class code生成器来根据样本图片在线生成新类别的class code。生成器的训练使用matching network的meta-learning策略,从基类中采样大量的少样本训练数据子集,模拟测试时的场景。

    定义单个iFSD任务为在基类上平均采样获得的类标签集,标签集仅包含一个或几个类别,将标签集中的每个类的图片随机分为辅助集合(meta-training)和查询集(meta-valudation)Q。

     在推理阶段,辅助集用于为每个类别生成class code

    基于class code集合,按照公式4和公式5在查询图片上进行目标检测,通过最小化在上的平均预测误差来优化class code生成器的参数,误差计算使用损失为GT heatmap。

    • Meta Testing: Enrolling New Classes

    给予少量的标注样本,新类别的meta-testing流程如下:

    • 使用少量的标注样本通过公式3获取class code

    • 通过公式4获取测试图片的特征

    • 通过公式1定位新类别的目标实例

    • 找到heatmap中局部最大位置,通过公式2获取所有bbox的坐标进行输出

    对于基类的测试在第一步直接使用阶段一学习到class code,通过上述步骤,可以简单且独立地将新类别加入到iFSD中。

    • Architecture

    特征提取器使用主干为ResNet的Simple baseline,结构如上图,包含encoder-decoder对。首先提取图片的低分辨率的3D特征图,然后通过可学习的上采样卷积输出高分辨率的特征图。class code生成器使用相同的encoder主干,在进行阶段二之前,生成器的权重拷贝特征提取器的权重进行初始化,最终通过global average pooling输出256维的class code 。鉴于辅助集的数量可能各不一样,最终的class code为类所有辅助图片的class code的平均值。

    实验

    Non-Incremental Few-Shot Detection

    将样本少的新类(10 shot)和样本充足的基类(all)混在一起进行训练,结果如表1。

    Incremental Few-Shot Object Detection

    • Experimental setup

    same-dataset实验,将COCO的60类作为基类,其余20类作为新类别。对于meta-training,从基类随机采样32个任务,每个任务包含3个类别,每个类别包含5个标注的bbox。对于meta-testing,使用全部20个新类别,每个类别随机采样几张图片,有两种测试方法,一种是一次性加入全部类别(incremental batch learning),另一种是逐步加入类别(continuous incremental learning)
    cross-dataset实验,跟上述类似,只是meta-training的基类从COCO采样,meta-testing的新类从VOC采样。

    • Object detection on COCO

    ONCE的性能比其它方法优异,尽管在新类别上的准确率普遍较低,但ONCE算是一种不错的快速解决增量式少样本检测的方法。

    在逐渐增加类别的场景下,ONCE表现稳定,而其它方法的表现则逐渐变差。

    • Object detection transfer from COCO to VOC

    与same-dataset的结果相差不大。

    Few-Shot Fashion Landmark Detection

    结论

    在研究了现实的增量少样本目标检测问题后,论文提出了一个不错的快速解决算法ONCE,能够以推理的形式将新类别进行注册而不需要再使用旧的训练数据,相比其它类似的方法更有效。

    这里需要注意的是,论文的方法与主流的少样本目标检测算法不太一样,目前很多性能高的方法大都基于比对的方式进行有目标的检测,并且需要大量的数据进行模型训练再应用到新类中,要检测所有的类别则需要全部进行比对,十分耗时。而论文是增量式添加类别到模型,以常规的推理形式直接检测,十分高效且数据量需求十分低,虽然最终的性能有点难看,但是这个思路还是可以有很多工作可以补的。

    论文地址:https://arxiv.org/abs/2003.04668

    【end】
    
    ◆有奖征文◆
    
    
    推荐阅读了解这4个重点,带你探索未来将如何设计智能系统和机器人!IJCAI 2020灭霸式拒稿,AI审稿是否更公平?64% 的企业未实现智能化,5 成公司算法工程师团队规模小于 10人,AI 工程师的机遇在哪里?Docker 开发环境的滑坡比特币Logo背后有哪些历史及象征意义?Logo 上的“B”为什么会向右倾斜?抗住百万人直播、被联合国推荐,起底飞书技术演进之路!你点的每个“在看”,我都认真当成了AI
    
    展开全文
  • 目标检测】RCNN算法详解

    万次阅读 多人点赞 2016-04-05 23:10:36
    深度学习用于目标检测的RCNN算法

    Girshick, Ross, et al. “Rich feature hierarchies for accurate object detection and semantic segmentation.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2014.

    Region CNN(RCNN)可以说是利用深度学习进行目标检测的开山之作。作者Ross Girshick多次在PASCAL VOC的目标检测竞赛中折桂,2010年更带领团队获得终身成就奖,如今供职于Facebook旗下的FAIR。
    这篇文章思路简洁,在DPM方法多年平台期后,效果提高显著。包括本文在内的一系列目标检测算法:RCNN, Fast RCNN, Faster RCNN代表当下目标检测的前沿水平,在github都给出了基于Caffe的源码

    思想

    本文解决了目标检测中的两个关键问题。

    问题一:速度

    经典的目标检测算法使用滑动窗法依次判断所有可能的区域。本文则预先提取一系列较可能是物体的候选区域,之后仅在这些候选区域上提取特征,进行判断。

    问题二:训练集

    经典的目标检测算法在区域中提取人工设定的特征(Haar,HOG)。本文则需要训练深度网络进行特征提取。可供使用的有两个数据库:
    一个较大的识别库(ImageNet ILSVC 2012):标定每张图片中物体的类别。一千万图像,1000类。
    一个较小的检测库(PASCAL VOC 2007):标定每张图片中,物体的类别和位置。一万图像,20类。
    本文使用识别库进行预训练,而后用检测库调优参数。最后在检测库上评测。

    流程

    RCNN算法分为4个步骤

    • 一张图像生成1K~2K个候选区域
    • 对每个候选区域,使用深度网络提取特征
    • 特征送入每一类的SVM 分类器,判别是否属于该类
    • 使用回归器精细修正候选框位置
      这里写图片描述

    候选区域生成

    使用了Selective Search1方法从一张图像生成约2000-3000个候选区域。基本思路如下:

    • 使用一种过分割手段,将图像分割成小区域
    • 查看现有小区域,合并可能性最高的两个区域。重复直到整张图像合并成一个区域位置
    • 输出所有曾经存在过的区域,所谓候选区域

    候选区域生成和后续步骤相对独立,实际可以使用任意算法进行。

    合并规则

    优先合并以下四种区域:

    • 颜色(颜色直方图)相近的
    • 纹理(梯度直方图)相近的
    • 合并后总面积小的
    • 合并后,总面积在其BBOX中所占比例大的

    第三条,保证合并操作的尺度较为均匀,避免一个大区域陆续“吃掉”其他小区域。

    例:设有区域a-b-c-d-e-f-g-h。较好的合并方式是:ab-cd-ef-gh -> abcd-efgh -> abcdefgh。
    不好的合并方法是:ab-c-d-e-f-g-h ->abcd-e-f-g-h ->abcdef-gh -> abcdefgh。

    第四条,保证合并后形状规则。

    例:左图适于合并,右图不适于合并。
    这里写图片描述

    上述四条规则只涉及区域的颜色直方图、纹理直方图、面积和位置。合并后的区域特征可以直接由子区域特征计算而来,速度较快。

    多样化与后处理

    为尽可能不遗漏候选区域,上述操作在多个颜色空间中同时进行(RGB,HSV,Lab等)。在一个颜色空间中,使用上述四条规则的不同组合进行合并。所有颜色空间与所有规则的全部结果,在去除重复后,都作为候选区域输出。

    作者提供了Selective Search的源码,内含较多.p文件和.mex文件,难以细查具体实现。

    特征提取

    预处理

    使用深度网络提取特征之前,首先把候选区域归一化成同一尺寸227×227。
    此处有一些细节可做变化:外扩的尺寸大小,形变时是否保持原比例,对框外区域直接截取还是补灰。会轻微影响性能。

    预训练

    网络结构
    基本借鉴Hinton 2012年在Image Net上的分类网络2,略作简化3
    这里写图片描述
    此网络提取的特征为4096维,之后送入一个4096->1000的全连接(fc)层进行分类。
    学习率0.01。

    训练数据
    使用ILVCR 2012的全部数据进行训练,输入一张图片,输出1000维的类别标号。

    调优训练

    网络结构
    同样使用上述网络,最后一层换成4096->21的全连接网络。
    学习率0.001,每一个batch包含32个正样本(属于20类)和96个背景。

    训练数据
    使用PASCAL VOC 2007的训练集,输入一张图片,输出21维的类别标号,表示20类+背景。
    考察一个候选框和当前图像上所有标定框重叠面积最大的一个。如果重叠比例大于0.5,则认为此候选框为此标定的类别;否则认为此候选框为背景。

    类别判断

    分类器
    对每一类目标,使用一个线性SVM二类分类器进行判别。输入为深度网络输出的4096维特征,输出是否属于此类。
    由于负样本很多,使用hard negative mining方法。
    正样本
    本类的真值标定框。
    负样本
    考察每一个候选框,如果和本类所有标定框的重叠都小于0.3,认定其为负样本

    位置精修

    目标检测问题的衡量标准是重叠面积:许多看似准确的检测结果,往往因为候选框不够准确,重叠面积很小。故需要一个位置精修步骤。
    回归器
    对每一类目标,使用一个线性脊回归器进行精修。正则项λ=10000\lambda=10000λ=10000
    输入为深度网络pool5层的4096维特征,输出为xy方向的缩放和平移。
    训练样本
    判定为本类的候选框中,和真值重叠面积大于0.6的候选框。

    结果

    论文发表的2014年,DPM已经进入瓶颈期,即使使用复杂的特征和结构得到的提升也十分有限。本文将深度学习引入检测领域,一举将PASCAL VOC上的检测率从35.1%提升到53.7%
    本文的前两个步骤(候选区域提取+特征提取)与待检测类别无关,可以在不同类之间共用。这两步在GPU上约需13秒。
    同时检测多类时,需要倍增的只有后两步骤(判别+精修),都是简单的线性运算,速度很快。这两步对于100K类别只需10秒。

    以本论文为基础,后续的fast RCNN4(参看这篇博客)和faster RCNN5(参看这篇博客)在速度上有突飞猛进的发展,基本解决了PASCAL VOC上的目标检测问题。


    1. J. Uijlings, K. van de Sande, T. Gevers, and A. Smeulders. Selective search for object recognition. IJCV, 2013. ↩︎

    2. A. Krizhevsky, I. Sutskever, and G. Hinton. ImageNet classification with deep convolutional neural networks. In NIPS, 2012 ↩︎

    3. 所有层都是串行的。relu层为in-place操作,偏左绘制。 ↩︎

    4. Girshick, Ross. “Fast r-cnn.” Proceedings of the IEEE International Conference on Computer Vision. 2015. ↩︎

    5. Ren, Shaoqing, et al. “Faster R-CNN: Towards real-time object detection with region proposal networks.” Advances in Neural Information Processing Systems. 2015. ↩︎

    展开全文
  • 3. One Stage目标检测算法 我们将对单次目标检测器(包括SSD系列和YOLO系列等算法)进行综述。我们将分析FPN以理解多尺度特征图如何提高准确率,特别是目标的检测,其在单次检测器中的检测效果通常很差。然后我们...
  • 目标检测】Faster RCNN算法详解

    万次阅读 多人点赞 2016-04-21 15:08:06
    继RCNN,fast RCNN之后,目标检测界的领军人物Ross Girshick在2015年提出faster RCNN。目标检测速度达到15fps。
  • 目标检测算法总结

    千次阅读 2019-06-25 09:43:56
    参考:目标检测算法之SSD 概述 目前目标检测算法的主流算法主要分为两类: two-stage方法。比如R-CNN系算法。主要思路是先通过启发式方法(selective search)或者CNN网络(RPN)产生一系列稀疏的候选框,然后对这些...
  • 目标检测算法对比

    万次阅读 2018-04-14 21:49:58
    R-CNN。 来自 ICCV 2015,可以说是利用深度学习进行目标检测的开山之作。作者Ross Girshick多次在PASCAL VOC的目标检测竞赛中折桂,...包括本文在内的一系列目标检测算法:RCNN, Fast RCNN, Faster RCNN代表当下目...
  • 目标检测算法汇集介绍

    万次阅读 多人点赞 2018-09-15 19:15:33
    目标检测算法 目标检测概念 目标检测这里阐述两个应用场景,1 为物体位置检测,2 为物体关键点检测。 1 物体位置检测 相比与图片分类,目标检测算法结果要求不仅识别出图片中的物理类别并且输出物体...
  • 目标检测算法大致可分为两阶段(two stage)目标检测算法和一阶段(one stage)目标检测算法,在没有过多的tricks的情况下,两阶段的目标检测算法的检测精度是要比一阶段的目标检测算法精度高的。 原因分析: 其实...
  • 3D点云目标检测算法汇总

    千次阅读 2020-02-15 21:23:45
    来源:汇总|3D点云目标检测算法 前言 前面总结了几种基于激光雷达点云数据的3D目标检测算法,还有一些算法不再单独列出,这里做个简单总结来分享下! 基于激光雷达点云的3D目标检测算法 1、End-to-End Multi-View ...
  • 常见传统目标检测算法

    万次阅读 多人点赞 2019-03-29 18:15:57
    3.2008年,rgb大神(记住这个人,后面的R-CNN系列检测算法也是出自他之手)研究出了著名的DPM算法,在深度学习方法成熟之前的很长一段时间里,就是这个算法一直在目标检测中发挥作用; 以上算法是属于传统目标检测的...
  • 目标检测算法之SSD

    万次阅读 多人点赞 2018-04-06 15:17:33
    码字不易,欢迎给个赞! 欢迎交流与转载,文章会同步发布在公众号:机器学习算法...目标检测近年来已经取得了很重要的进展,主流的算法主要分为两个类型:(1)two-stage方法,如R-CNN系算法,其主要思路是先通过启...
  • 目标检测算法资源总结

    千次阅读 2019-02-14 19:22:37
    目标检测资源总结 目标检测是什么: 图像分类,检测及分割是计算机视觉领域的三大任务。 图像分类模型是将图像划分为单个类别,通常对应于图像中最突出的物体。 但是现实世界的很多图片通常包含不只一个物体,此时...
  • 本文根据Hanzi Wang等人的论文“Background subtraction based on a robust consensus method ”结合自己的理解而成,如果对论文...在文中,作者提出了一种基于统计的高效自适应的运动目标检测算法。该算法被称为SACO
  • 目标检测算法分类

    千次阅读 2019-05-12 16:51:24
    两步走的目标检测:先进行区域推荐,而后进行目标分类 代表:R-CNN、SPP-net、Fast R-CNN、Faster R-CNN 端到端的目标检测:采用一个网络一步到位 代表:YOLO、SSD 先来回归下分类的原理,这是一个常见的CNN...
  • 目标检测】Fast RCNN算法详解

    万次阅读 多人点赞 2016-04-12 13:05:42
    继2014年的RCNN之后,Ross Girshick在15年推出Fast RCNN,构思精巧,流程更为紧凑,大幅提升了目标检测的速度。
  • 目标检测算法:rcnn

    千次阅读 2018-10-24 23:38:16
    目标检测算法-rcnnRCNN(regions with CNN features)关于边框回归(bounding box)关于选择搜索(selective search)图像分割算法(Effective graph-based image segmentation)难负例挖掘(hard negative mining method)...
  • 目标检测算法汇总比较

    万次阅读 2018-10-16 18:54:10
    很难衡量一个检测算法的好坏,因为除了算法本身的思路之外,还有许多因素影响它的速度和精度,比如: 特征提取网络(VGG, ResNet, Inception, MobileNet); 输出的步长,越大分类数目越多,相...
  • 目标检测算法发展移步:目标检测算法 本文从算法改进的方向,进行横向比较,包括backbone,特征融合、loss、proposal/anchor/heatmap、NMS、正负样本设置等 Reference:Object Detection in 20 Years: A Survey ...
  • 上一章我们了解到,物体识别检测算法是在传统CNN算法基础上加上目标区域建议策略和边框回归算法得到的。前辈们的工作主要体现在目标区域建议的改进策略上,从最开始的穷举建议框,到划分图像区域,再到从特征图上...
  • FCOS: 最新的one-stage逐像素目标检测算法

    万次阅读 多人点赞 2019-04-07 18:50:02
    本文提出了一种全卷积one-stage目标检测算法(FCOS),以逐像素预测的方式解决目标检测问题,类似于语义分割。目前最流行的不论是one-stage目标检测算法,如RetinaNet,SSD,YOLOv3,还是two-stage目标检测算法,如...
  • one-stage和two-stage目标检测算法

    千次阅读 2019-08-26 22:41:31
    目前目标检测领域的深度学习方法主要分为两类:two stage 的目标检测算法;one stage 的目标检测算法。前者是先由算法生成一系列作为样本的候选框,再通过卷积神经网络进行样本分类;后者则不用产生候选框,直接将...
  • 目录1.目标检测问题定义1.1目标检测定义1.2目标检测vs图像分类1.3目标检测vs目标分割2.目标检测问题方法2.1传统目标检测方法到深度学习目标检测方法...传统目标检测算法3.1综述3.2Viola-Jones3.3HOG+SVM3.4 DPM3.5NM...
  • DPM目标检测算法

    万次阅读 2018-04-18 14:38:37
    DPM目标检测算法 DPM算法由Felzenszwalb于2010年提出,是一种基于部件的检测方法,对目标的形变具有很强的鲁棒性。目前DPM已成为众多分类、分割、姿态估计等算法的核心部分,Felzenszwalb本人也因此被VOC授予...
  • SACON(SAmple CONsensus)算法是基于样本一致性的运动目标检测算法。该算法通过对每个像素进行样本一致性判断来判定像素是否为背景。 算法框架图    由上图可知,该算法主要分为四个主要部分,分别是...
  • 目标检测算法——SSD详解

    万次阅读 多人点赞 2019-02-28 15:20:07
    目录 一、 背景(基本介绍) 二、 网络结构 三、 具体过程 1. default box 匹配 2. 损失函数 ...SSD 算法的改进:DSSD 1. DSSD 网络结构 图19 VGG网络与ResNet网络的对比 2. 实现细节 3. 训练...
  • two stage 、one stage 的目标检测算法

    万次阅读 2018-10-24 11:05:08
    AI 科技评论按:本文作者 Ronald,首发于作者的知乎专栏「炼丹师备忘录」,AI 科技评论获其授权转发。目前目标检测领域的深度学习方法主要分为两类:two stage 的目标检测算法;one...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 44,348
精华内容 17,739
关键字:

小样本目标检测算法