SSD(单次多盒检测)用于实时物体检测

简介: Fast-RCNN、Faster-RCNN 等算法为目标检测提供了更准确的结果,但它们对于实时检测来说显得有点慢,于是 SSD 就在这个时候应运而生。

雷锋网(公众号:雷锋网) AI 研习社按:本文为雷锋网字幕组编译的技术博客,原标题 SSD(Single Shot Multi-Box Detection) for real time object detection,作者 Rabin Poudyal。

翻译 | 陶玉龙    校对 | 佟金广     整理 |  孔令双

卷积神经网络在检测图像中的物体时优于其他神经网络结构。很快,研究人员改进了 CNN 来进行对象定位与检测,并称这种结构为 R-CNN(Region-CNN)。R-CNN 的输出是具有矩形框和分类的图像,矩形框围绕着图像中的对象。以下是 R-CNN 的工作步骤:

使用我们称为选择性搜索的算法扫描输入图像,进而查找可能的对象,生成大约 2000 个候选区域, 

在每个候选区域上运行 CNN,

获取每个 CNN 的输出并将其输入:

SVM 来区域进行分类

线性回归器来收紧对象的边界框,如果对象存在

TB1ihnrGv1TBuNjy0FjXXajyXXa.jpg

R-CNN 运用于目标检测

虽然与传统的 CNN 相比,R-CNN 在目标定位,检测和分类方面都取得了很大进步,但在实现目标实时检测方面依旧存在问题。以下是其中的一些问题:     

     1、训练数据很难处理,而且耗时很长

     2、训练分为两个阶段进行(即:候选区域的选择和分类)

     3、网络在推理阶段很慢(处理非训练数据时)

为了改进 R-CNN,研究人员们相继提出了其他算法,如 Fast-RCNN,Faster-RCNN 等。 这些算法为目标检测提供了更准确的结果。 但它们对于实时检测来说显得有点慢。SSD 就在这个时候应运而生,它在准确性和计算速度方面具有良好的平衡。

SSD(单发多边框检测器)的含义 

单发:目标定位和分类在网络的单个前向传递中完成 : 

多框:边界框回归的技术

检测器:对检测到的对象进行分类

结构

TB15b6Qx4uTBuNkHFNRXXc9qpXa.jpg

SSD 结构

SSD 的结构建立在 VGG-16 的基础上。但在这里对 VGG-16 进行了一些微小调整,从 Conv6 层开始,我们用一系列辅助卷积层来代替原先全连接层。因为 VGG-16 可以提供高质量的图像分类和迁移学习来改善结果, 我们将其作为 SSD 的基础网络。通过使用辅助卷积层,我们可以提取图像多个尺度的特征,并逐步减小每个卷积层的尺寸。我已在下一节讨论了它的工作原理。您可以看到 VGG-16 架构的以下图像, 它包含全连接层。

TB1oPjrXjfguuRjSszcXXbb7FXa.jpg

VGG-16 结构

工作机制

TB1ds9tGuySBuNjy1zdXXXPxFXa.jpg

为了训练我们的算法,我们需要一个包含带有对象的图像的训练集,这些对象必须在它们上面有边界框。 通过这种方式学习,算法学习如何在对象上放置矩形框以及放置在何处。 我们通过调参使预测出的边界框和实际的边界框之间的误差最小,从而优化我们的模型以正确地检测对象。与 CNN 不同,我们不仅预测图像中是否存在物体,还需要预测物体在图像中的位置。在训练期间,算法也要学习调整对象边界框中的高度和宽度。 

TB10qYsXjbguuRkHFrdXXb.LFXa.jpg

上图是我们用于目标检测的训练数据集的示例。 这些数据集必须包含在图像中标记类别的对象。 更多默认框会有更准确的检测,但会以速度牺牲作为代价。

Pascal VOC 和 COCO 数据集对初学者而言是一个很好的入门。

处理尺度问题

TB1m6nrXjfguuRjSszcXXbb7FXa.jpg

在左边是一张有几匹马的图像。我们将输入图像划分为网格集。 然后我们围绕这些网格制作几个不同宽高比的矩形框。 我们在这些框中应用卷积来研究这些网格中是否存在对象。这里的一匹黑马在图像中更靠近摄像头。因此,我们绘制的边界框无法识别是否是马,因为边界框没有任何可以识别马匹的特征。

TB1shU6x8mWBuNkSndVXXcsApXa.jpg

如果我们看上述 SSD 的架构,我们可以看到在 conv6 层之后的每个步骤中图像的大小在显著减小。 我们讨论的关于划分网格和在这些网格上查找对象的每个操作都适用于从网络的后面到前面的卷积的每个步骤。 分类器也应用在每个步骤中来检测对象。 因此,由于物体在每个步骤中变得更小,它很容易识别。

SSD 算法还知道如何从一个卷积操作返回到另一个卷积操作。 它不仅会前向运算而且会后向运算。 例如,如果它在 conv4 中看到马,那么它可以返回到 conv6 并且将在马周围绘制矩形框。

原文链接:

https://medium.com/@rabinpoudyal1995/ssd-single-shot-multi-box-detection-for-real-time-object-detection-5f2a06e33a4a

雷锋网 AI 研习社编译。

号外号外~

一个专注于

AI技术发展和AI工程师成长的求知求职社区

诞生啦!

欢迎大家访问以下链接或者扫码体验

https://club.leiphone.com/page/home

TB1HslvGqmWBuNjy1XaXXXCbXXa.jpg TB1hGbsXjrguuRjy0FeXXXcbFXa.jpg
目录
相关文章
|
机器学习/深度学习 算法 自动驾驶
|
2月前
|
人工智能 计算机视觉
首次!用合成人脸数据集训练的识别模型,性能高于真实数据集
【10月更文挑战第9天】Vec2Face是一种创新的人脸图像合成方法,旨在解决现有方法在生成具有高区分度身份和广泛属性变化的人脸图像时的局限性。该方法通过使用样本向量作为输入,结合特征掩码自编码器和解码器,能够高效生成大规模人脸数据集,显著提升人脸识别模型的训练效果。Vec2Face在多个真实世界测试集上表现出色,首次在某些测试集上超越了使用真实数据集训练的模型。然而,该方法仍存在一些局限性,如生成的变化可能无法完全覆盖真实世界的多样性,且需要较高的计算资源。
32 2
|
5月前
|
人工智能 自然语言处理 测试技术
将图像自动文本化,图像描述质量更高、更准确了
【7月更文挑战第11天】AI研究提升图像文本化准确性:新框架IT融合多模态大模型与视觉专家,生成详细无幻觉的图像描述。通过三个阶段—全局文本化、视觉细节提取和重描述,实现更高质量的图像转文本。研究人员建立DID-Bench、D2I-Bench和LIN-Bench基准,展示描述质量显著提升。尽管有进步,仍面临幻觉、细节缺失及大规模处理挑战。[论文链接](https://arxiv.org/pdf/2406.07502v1)**
45 1
|
7月前
|
传感器 存储 编解码
图像采集系统
图像采集系统
82 1
视觉智能平台中,如果你想批量清空人脸样本库里的样本数据
视觉智能平台中,如果你想批量清空人脸样本库里的样本数据
161 5
|
机器学习/深度学习 编解码 算法
|
算法 数据挖掘 数据处理
加速体细胞突变检测分析流程-系列2(ctDNA等高深度样本)
加速体细胞突变检测分析流程-系列2(ctDNA等高深度样本)
83 0
|
数据挖掘 API 开发者
【手机在网状态查询】实时更新,超高准确率
如果你需要实行一个需要查询身份证归属地信息的相关功能,那么身份证归属地查询API是必不可少的。它可以通过调用API接口实现快速、自动地查询身份证归属地信息,而且准确度高,效率高。
210 0
【手机在网状态查询】实时更新,超高准确率
|
机器学习/深度学习 编解码 计算机视觉
ICLR2022 ViDT | 检测超越YOLOS,实例分割超越SOLOv2,同时达到实时!!!
ICLR2022 ViDT | 检测超越YOLOS,实例分割超越SOLOv2,同时达到实时!!!
430 0
|
机器学习/深度学习 传感器 算法
单GPU实现20Hz在线决策,最新基于序列生成模型的高效轨迹规划方法解读
单GPU实现20Hz在线决策,最新基于序列生成模型的高效轨迹规划方法解读
154 0