zoukankan      html  css  js  c++  java
  • 深度学习(七)object detection

    目标检测(object detection)的基本思路: 检测(detection)+ 定位(localization)

    目标检测在很多场景有用,如无人驾驶和安防系统。

    • 传统方法

      特征提取算法(如:haar特征,HOG特征)+分类器(如:svm)

    • 深度学习方法
      • R-CNN (Regions with CNN features) 基于卷积神经网络特征的区域方法

     Selective Search to Extract Regions + CNN提取特征 + SVM分类

    主要步骤:

    (1) 输入测试图像

    (2) 利用selective search算法在图像中提取2000个左右的region proposal。

    (3) 将每个region proposal缩放(warp)成227x227的大小并输入到CNN,将CNN的fc7层的输出作为特征。

    (4) 将每个region proposal提取到的CNN特征输入到SVM进行分类。

      • Fast-RCNN

    去掉了单独SVM分类的部分,直接用CNN的网络实现分类

    Fast R-CNN在整个图片上使用CNN,然后对特征映射使用“兴趣区域” (Region of Interest, RoI) 池化,最后使用前馈网络进行分类和回归。

    主要步骤:

    (1)在图像中确定约1000-2000个候选框 (使用选择性搜索)

    (2)对整张图片输进CNN,得到feature map

    (3)找到每个候选框在feature map上的映射patch,将此patch作为每个候选框的卷积特征输入到SPP layer和之后的层

    (4)对候选框中提取出的特征,使用分类器判别是否属于一个特定类

    (5)对于属于某一特征的候选框,用回归器进一步调整其位置

      • Faster-RCNN

    Faster-RCNN添加了区域提案网络 (Region Proposal Network, RPN),摆脱了选择性搜索算法,并可以做到端到端的训练。

    RPNs的任务是基于objectness分数输出对象,然后用RoI池化 (RoI Pooling) 和完全连接层分类。
    主要步骤:

    (1)对整张图片输进CNN,得到feature map

    (2)卷积特征输入到RPN,得到候选框的特征信息

    (3)对候选框中提取出的特征,使用分类器判别是否属于一个特定类

    (4)对于属于某一特征的候选框,用回归器进一步调整其位置

      • SSD

    SSD算法是一种直接预测目标类别和bounding box的多目标检测算法。与faster rcnn相比,该算法没有生成 proposal 的过程,这就极大提高了检测速度。

     

    • 代码实践

    Reference:https://blog.csdn.net/f290131665/article/details/81012556

  • 相关阅读:
    R语言中gsub使用示例记录
    linux 系统中wget实现并行下载
    R语言中实现将多行数据合并为一行
    python安装包国内镜像加速
    VMware Workstation 与 Device/Credential Guard不兼容
    缩放矩阵, 这里面有关于矩阵的 种种操作 这个要学下 很有用
    ffd 点的控制效果、
    摘抄 : max mel 的一些用法。
    帮朋友写的查找选择的父子骨骼。之前我都是用递归,这个好、
    距离的算法。 下面两个是对等的。
  • 原文地址:https://www.cnblogs.com/lightsun/p/9489426.html
Copyright © 2011-2022 走看看