cs231n学习笔记-CNN-目标检测 定位 分割

首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的。教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈~我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转到教程

               

1. 基本概念

    1)CNN:Convolutional Neural Networks 

    2)FC:Fully Connected

    3)IoU:Intersection over Union (IoU的值定义:Region Proposal与Ground Truth的窗口的交集比并集的比值,如果IoU低于0.5,那么相当于目标还是没有检测到)

    4)ICCV:International Conference on Computer Vision

    5)R-CNN:Region-based Convolutional Neural Networks

    6)AR:Average Recall

    7)mAP:mean Average Precision

    8)RPN:Region Proposal Networks

    9)FAIR:Facebook AI Research

    10)w.r.t.:with respect to

    11)Image Classification(what?):图像分类

    12)Object Detection(what+where?)、Localization、Segmentation:对角检测、定位、分割

     


2. CNN基本知识

2.1 CNN的卷积流程




   卷积计算过程如下图所示:

我们刚才描述的即是卷积。可以把卷积想象为信号处理中的一种奇特乘法。也可将两个矩阵生成点积想象为两个函数。图像就是底层函数,而过滤器就是在其上“卷过”的函数。

图像的主要问题在于其高维度,原因是对高维度的处理时间和运算能力成本很高。卷积网络就是为了通过各种方式降低图像的维度而设计的。过滤器步幅即是减少维度的一种方法,另一种方法是降采样。


2.2 Activations maps的个数与Filter的个数一致




2.3 输入层与Filter、Padding、Stride、参数和输出层的关系


1) 参数个数由Filter定义及Filter个数决定,其公式为:

      The number of parameters = (FxFxD + 1) * K

2)一个Activation Map共享一个Filter及其权重和偏差

3)Activation Map个数与Filter个数相同

2.4 Pooling(池化/降采样)过程

    1)  Pooling在每个Activation Map上单独做,在Pooling之后,Activation Map数量不变

   Pooling层一般用于降维,将一个kxk的区域内取平均或取最大值,作为这一个小区域内的特征,传递到下一层。传统的Pooling层是不重叠的,使Pooling层重叠可以降低错误率,而且对防止过拟合有一定的效果。

     

    

    2)Pooling过程描述(Pooling过程不需要参数)

    

2.5 深度革命2015

     

     1)深度革命中遇到的问题:

          随着CNN网络的发展,尤其的VGG网络的提出,大家发现网络的层数是一个关键因素,貌似越深的网络效果越好。但是随着网络层数的增加,问题也随之而来。

         (1)第一个问题: vanishing/exploding gradients(即梯度消失或爆炸):这就导致训练难以收敛。但是随着 normalized initialization and BN(Batch Normalization)的提出,解决了梯度消失或爆炸问题。
         (2)第二个问题:网络越深,训练误差和测试误差越大。在收敛问题解决后,又一个问题暴露出来:随着网络深度的增加,系统精度得到饱和之后,迅速的下滑。让人意外的是这个性能下降不是过拟合导致的。对一个合适深度的模型加入额外的层数导致训练误差变大。如下图所示,可通过Deep Residual Learning 框架来解决这种因为深度增加而导致准确性下降问题。
           

3. 空间定位与检测

3.1 计算机视觉任务

        

3.2 传统目标检测方法

     传统目标检测流程:

     1)区域选择(穷举策略:采用滑动窗口,且设置不同的大小,不同的长宽比对图像进行遍历,时间复杂度高)

     2)特征提取(SIFT、HOG等;形态多样性、光照变化多样性、背景多样性使得特征鲁棒性差)

     3)分类器(主要有SVM、Adaboost等)

    传统目标检测的主要问题:

     1)基于滑动窗口的区域选择策略没有针对性,时间复杂度高,窗口冗余

     2)手工设计的特征对于多样性的变化没有很好的鲁棒性

3.3 基于侯选区域(Region Proposal)的深度学习目标检测法

3.3.1 R-CNN (CVPR2014, TPAMI2015)

    1)Region Proposal:可以解决滑动窗口的问题

         候选区域(Region Proposal):是预先找出图中目标可能出现的位置。它利用了图像中的纹理、边缘、颜色等信息,可以保证在选取较少窗口(几千甚至几百)的情况下保持较高的召回率(Recall)。

         常用的Region Proposal有(详见"What makes for effective detection proposals?"):

           - Selective Search

           - Edge Boxes 

    2)R-CNN:可以解决特征鲁棒性的问题

   

      参考信息

     (1) 输入测试图像
     (2) 利用selective search算法在图像中从下到上提取2000个左右的Region Proposal
     (3) 将每个Region Proposal缩放(warp)成2

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值