Object Detection

Object Detection

Object localization

  • 输出维度改变(加系数)
  • 被检测对象的边界框参数化表示
Parameterize
  • $p_{c}$ 是否含有对象(若为背景,则无检测对象,$p_{c} = 0$ )
  • $(b_{x}, b_{y})$ 方框中心
  • $b_{w, h}$ –> $(0, 1)$ 比例
  • $c_{1, 2, 3}$ 不同类别

对边界框坐标($b_{x}, b_{y}, b_{h}, b_{w}$)应用平方差或类似方法,对$p_{c}$ 应用逻辑斯特回归

利用神经网络输出批量实数识别图片中的对象

Landmark Detection 特征点检测

  • 选定特征点个数,并生成包含这些特征点的标签训练集,输出脸部关键特征点的位置

  • 用二维坐标系定义人物姿态,批量增加输出单元,用以输出要识别的各个特征点的($x, y$)坐标值

Sliding Windows Detection 基于滑动窗口

  1. 首先创建一个标签训练集,适当剪切汽车图片样本(正样本)

  2. 选定一个特定窗口大小,将红色方框内的图像输入CNN预测

  3. 固定步幅移动窗口,遍历图像每个区域,将剪切后的小图像输入CNN,对每个位置按0 | 1 分类

  4. 改变窗口大小、步幅等,重复,不管目标在何位置都可以有个窗口检测到它

    所以在神经网络兴起之前,人们通常采用更简单的分类器进行对象检测,(手工外理工程特

    征的简单的线性分类器来执行对象检测)至于误差,因为每个分类器的计算成本都很低,它只是一个线

    性函数,所以滑动窗口目标检测算法表现良好,是个不错的算法。然而,卷积网络运行单个分类人物的成本却高得多,像这样滑动窗口太慢。除非采用超细粒度或极小步幅,否则无法准确定位图片中的对象

Convolutional Implementation of sliding windows 窗口滑动卷积实现

Preface

$Fully Connected Layers -> Convolutional Layers$

  • 从数学的角度看:和FC一样,400个节点每个节点中都有一个5x5x16的filter(kernel x 400),所以每个值都是上一层5x5x16激活值经过每个任意线性函数的输出结果
  • 最后再经过 1x1 kernel的处理,得到一个softmax激活值,最终得到1x1x4的输出层(而不是↑4个数字)
  • 两个单元集变成了 1×1×4001×1 x4 的维度

参考:Sermanet, Pierre, et al. “OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks.” Eprint Arxiv (2013).

Convolutional Implementation of sliding windows 窗口滑动卷积实现

  • 滑动窗口卷积神经网络输入14x14x3的图片,输出层(softmax单元输出)是1x1x4

  • 在计算中激活值对应的区域相对位置

  • 共享大量计算4次卷积操作 – 运行同样的参数,假设测试集图片16x16x3,滑动窗口卷积网络运行4次,输出4个标签

  • 窗口滑动卷积操作的原理:是我们不需要把输入图像分割成四个子集,分别执行前向传播,而是把它们作为张图片输入给卷积网络进行计算,其中的公共区域可以共享很多计算,一次得到所有的预测值

  • CONS: 边界框位置不够准确

Bounding Box Predictions

YOLO (You only look once)

  • 基本思路:采用图像分类和定位算法,分别应用于图像划分的网格中,每个格子都有8-d向量

  • 中心落入格子(实践中会使用更精细的 19×19 网格, 19 x 19×8。这样的网格精细得多,那么多个对象分配到同一个格子得概率就小得多)

  • 输入100 x 100 x 3图像神经网络,最后映射到3 x 3 x 8输出尺寸:输入$x$,输出3 x 3 x 8的目标标签$y$

  • 显式地输出边界框坐标(让神经网络输出边界相可以具有任意宽高比,并且能输出更精确的坐标,不会受到滑动商口分类器的步长大小限制)

  • 运行速度快,实时识别:单次卷积实现,有很多共享计算步骤,在处理这 3×3 计算中很多计算步骤是共享的

Intersection over union 交并比

Non-max suppression 非极大值抑制

  • $p{_c}$ : 非最大值意味着你只输出概率最大的分类结果,但抑制很接近,但不是最大的其他预测结果
  • 􏱱􏰛􏰪􏰚􏰝􏱥􏲧􏰦􏱡􏱣􏰛􏵠􏵅􏳔􏳕高亮标记最大值后,逐一审视剩下的矩形,所有和这个最大的边框有很高交并比,高度重叠的其他边界框,那么这些输出就会被抑制
  • 检测单个对象

  • 同时检测三个对象,输出向量就会有三个额外的分量

  • 正确的做法是独立进行三次非极大值制,对每个输出类别都做一次

Anchor Box


   Reprint policy


《Object Detection》 by David Qiao is licensed under a Creative Commons Attribution 4.0 International License
  TOC