【深度学习】实时物体检测框架Single-Shot MultiBox Detector(SSD)(1)概述

来源:互联网 发布:ubuntu cd显示不存在 编辑:程序博客网 时间:2024/05/21 15:38

一、ssd使用场景及性能分析

目标检测是深度学习图像识别的技术领域,指对单张图片中的物体的类别和位置进行标注。在ssd中,位置信息是通过边界框(bounding-boxes)来描述的。
边界框是一组四个数据,xmin,ymin,xmax,ymax(VOC标准格式)共同描述物体的位置信息。
这里写图片描述

在PASCAL VOC2007 的测试集上,ssd(300x300)取得了72.1的mAP,已经算是非常精准了,更可贵的是它比Fast、Faster R-CNN更快(经测试SSD在nvidia gtx970m上可以取得近30fps的准确度,接近实时,而faster r-cnn不足10fps)
而
因此,SSD模型在准确性和实时性上,都具有非常高的实用价值。





二、ssd原理初探

SSD(300x300)的网络结构如图所示。

这里写图片描述

与 Fast R-CNN、Faster R-CNN 相似,这几种检测网络都用相同预训练模型( ICLR 2015, VGG16),
并在 ILSVRC CLS-LOC 数据集上进行了预训练

所以网络在图上可以分为两部分,前半部分是VGG-16的基础网络(base network)
而后半部分是额外特征层。

使用下图可以看得更加清晰
这里写图片描述

state-of-art 的检测系统大致都是如下步骤是:

  1. 根据生成逻辑(Selective Search等)生成一系列候选框
  2. 在这些候选框中提取特征
  3. 经过一个分类器,来判断里面是不是物体,是什么物体
  4. 非极大值抑制

但这类方法对于嵌入式系统,所需要的计算时间太久了,不足以实时的进行检测。当然也有很多工作是朝着实时检测迈进,但目前为止,都是牺牲检测精度来换取时间

而ssd模型的原理是

  • Multi-scale feature maps for detection
  • 在基础网络结构后,添加了额外的卷积层,这些卷积层的大小是逐层递减的,可以在多尺度下进行预测。

  • Convolutional predictors for detection

  • 每一个添加的特征层(或者在基础网络结构中的特征层),可以使用一系列卷积核,去产生一系列固定大小的 预测结果,具体见下图。对于一个大小为 m×n,具有 p 通道的特征层,使用的卷积核就是 3×3×p 的 kernels。产生的预测结果,那么就是归属类别的一个得分,要么就是相对于默认边界框的位置偏移量(offset)。

    在每一个 m×n 的特征图位置上,使用上面的 3×3 的 kernel,会产生一个输出值。预测边界框的位置偏移量值是输出的默认边界框位置与此时 feature map location 之间的相对距离(YOLO 架构则是用一个全连接层来代替这里的卷积层)。

    这里写图片描述

  • Default boxes and aspect ratios

  • 每一个 box 相对于与其对应的特征图的“格”(feature map cell) 的位置是固定的。 在每一个 feature map cell 中,我们要预测得到的边界框,与默认生成的边界框(default boxes)之间的偏移量(offsets),以及每一个预测边界框中包含物体的得分(每一个类别概率都要计算出)。

    因此,对于一个位置上的 k 个边界框中的每一个,我们需要计算出 c 个类,每一个类的分类得分,还有这个 边界框相对于它的默认生成边界框 的 4 个偏移值(offsets)。于是,在特征图中的每一个格上,就需要有 (c+4)×k 个卷积滤波核。对于一张 m×n 大小的特征图,即会产生 (c+4)×k×m×n 个输出结果。

  • Hard negative mining

  • 在生成一系列的 predictions 之后,会产生很多个符合 ground truth box 的 predictions boxes,但同时,不符合 ground truth boxes 也很多,而且这个 negative boxes,远多于 positive boxes。这会造成 negative boxes、positive boxes 之间的不均衡。训练时难以收敛。

    因此,本文采取,先将每一个物体位置上对应 predictions(default boxes)是 negative 的 boxes 进行排序,按照 default boxes 的 confidence 的大小。 选择最高的几个,保证最后 negatives、positives 的比例在 3:1。
    本文通过实验发现,这样的比例可以更快的优化,训练也更稳定。

  • Data augmentation

  • 本文同时对训练数据做了 data augmentation,数据增广。关于数据增广,推荐一篇文章:Must Know Tips/Tricks in Deep Neural Networks,其中的 section 1 就讲了 data augmentation 技术。
    每一张训练图像,随机的进行如下几种选择:

    • 使用原始的图像
    • 采样一个 patch,与物体之间最小的 jaccard overlap 为:0.1,0.3,0.5,0.7 与 0.9
    • 随机的采样一个 patch

    采样的 patch 是原始图像大小比例是 [0.1,1],aspect ratio 在 0.5 与 2 之间。

    当 groundtruth box 的 中心(center)在采样的 patch 中时,我们保留重叠部分。

    在这些采样步骤之后,每一个采样的 patch 被 resize 到固定的大小,并且以 0.5 的概率随机的 水平翻转(horizontally flipped)

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 gw250和飞致250哪耐用 订飞机票哪个网站便宜 飞哪儿机票查询 网上订飞机票哪个网站好 全飞秒和准分子哪个好 怪物猎人世界飞雷龙在哪 飞图网 顾飞蒋丞同人图 开心到飞起朋友圈配图 燕子飞动作分解图 飞图 帮男票打飞手势图 巫哲的撒野飞丞同人图 飞机票p图软件 ft8.xyz飞图吧 飞图干衣机 飞图平板电脑 开心到飞起的配图 由木人被飞段上图 2018年九宫飞星图详解 2019年九宫飞星图各个生肖有利 飞地 飞地经济 孤单地飞新书 中国飞地有哪些 飞地艺术坊 飞地画室 噬灵时代 会飞地小鱼儿 飞地经济是什么意思 中国海外飞地 孤单地飞 修罗帝尊 中国的飞地 永恒天帝 孤单地飞 中国在国外的飞地 横扫荒宇 孤单地飞 网游之战御天下 孤单地飞 飞坦 猎人之我的飞坦老爸 无限驭奴塔林飞 混沌御奴塔林飞 飞虹塔