您的位置:首页 > 移动开发 > Objective-C

Rich feature hierarchies for accurate object detection and semantic segmentation

2015-04-30 11:27 591 查看


一、主要思想

             本文的主要思想首先采用Selective Search for Object Recognition论文的方法对每张图像分块得到多个个Region proposals,然后对每个Region
proposal提取CNN特征,在采用线性svm进行分类,在VOC2012上面达到了 53.3%的mAP。

    



二、Object detection with R-CNN


    1、模型框架


     (1)获取Region proposals

                 采用Selective Search for Object Recognition论文的方法的快速模式获得。


     (2)特征提取

         采用开源代码caffe(他们是一个研究机构的)提取CNN特征,采用warp的方式把所有图像resize到227*227,因为caffe的输入图像的尺寸是固定的。

        



     (3)分类器

         采用线性SVM建立二分分类器。


     2、训练


      (1)监督的方式的预训练

          采用caffe程序在ILSVRC 2012进行预训练,这个可以学习到大规模的数据集的基本特征,将这些参数作为调优的初始画参数,已解决深度学习中针对特征任务数据量小的问题。


      (2)针对特定任务的调优

         用Region proposals作为训练集,把和ground-truth box的IoU大于0.5的作为正样本,其余作为负样本;每个Region
proposal,resize到227*227;caffe的构架不用变,只需要将最后一层的1000类输出改为21类(20类+1类背景),同时把第八层的相应名字修改了(随便取);以0.001的学习率开始SGD,每个min-batch由32个正样本窗口和96的背景窗口组成的128个Region
proposals,这样做的目的是为了平衡正负样本的差距问题,因为Selective Search产生的负样本非常多。


            (3)训练Object分类器

      由于正负样本的数量极多,并且比例严重失衡,正样本少,负样本多。正对这个问题采用standard hard negative mining
method训练二分类器。初始化的时候,选择ground-truth box的样本作为正样本,把与ground-truth box的IoU小于0.3的作为负样本,采用线性SVM更新模型。


三、实验结果


      1、Detection average precision (%) on VOC 2010 test.

    



           2、Detection average precision (%) on VOC 2007 test




四、总结      

      我这里主要是描述了Detection的工作,文章里面还有很多知识点,比如Visualization, ablation, and  modes
of error,Bounding box regression,Semantic segmentation等,这里不再详解,可以参考论文理解。本文的方法的主要框架思路还是很明晰,对每个小框提取CNN特征,解决多标签问题。不过这种方法需要花费大量的时间在实际应用中可能现实,不过有更快速的方法已经提出,可以参考我的博客《CNN:
Single-label to Multi-label》。之所以后详解这篇论文的代码是开源的,同时我也刚把这篇论文应用到自己的项目当中花费了大量时间,结果还没有出来。而这篇《CNN:
Single-label to Multi-label》的代码还没有公布,本人的能力有限还没有实现。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐