深度学习之SSD总结

SSD是一种直接预测目标类别和bounding box的多目标检测算法。它使用低层feature map检测小目标,使用高层feature map检测大目标。
一、SSD的优势与劣势
1.优势
(1)没有生成边界框(proposal)的过程,进而提高了速度。
(2)SSD的核心是预测固定的一系列默认边界框的类别分数和边界框偏移,使用更小的卷积滤波器应用到特征映射上。
(3)为了实现高检测精度,我们根据不同尺度的特征映射生成不同尺度的特征映射生成不同尺度的预测,并通过纵横比明确分开预测。
(4)这些设计功能使得即使在低分辨率输入图像上也能实现简单的端到端训练和高精度,从而进一步提高速度与精度之间的权衡。
2.劣势
(1)需要人工设置prior box的min_size,max_size和aspect_ratio值。网络中prior box的基础大小和形状不能直接通过学习获得,而是需要手工设置。而网络中每一层feature使用的prior box大小和形状恰好都不一样,导致调试过程非常依赖经验。
(2)虽然采用了pyramdial feature hierarchy的思路,但是对小目标的recall依然一般,并没有达到碾压Faster RCNN的级别。作者认为,这是由于SSD使用conv4_3低级feature去检测小目标,而低级特征卷积层数少,存在特征提取不充分的问题。
二、模型
1.概述
SSD方法基于前馈卷积网络,该网络产生固定大小的边界框集合,并对这些边界框中存在的目标类别实例进行评分,然后进行非极大值抑制步骤来产生最终的检测结果。然后,我们将辅助结构添加到网络中以产生具有以下关键特征的检测:
用于检测的多尺度特征映射。我们将卷积特征层添加到截取的基础网络的末端。这些层在尺寸上逐渐减小,并允许在多个尺度上对检测结果进行预测。用于预测检测的卷积模型对于每个特征层都是不同的。
用于检测的卷积预测器。每个添加的特征层(或者任选的来自基础网络的现有特征层)可以使用一组卷积滤波器产生固定的检测预测集合。对于具有p通道的大小为m×n的特征层,潜在检测的预测参数的基本元素是3×3×p的小核得到某个类别的分数,或者相对于默认框坐标的形状偏移。在应用卷积核的m×n的每个位置,它会产生一个输出值。边界框偏移输出值是相对每个特征映射位置的相对默认框位置来度量的。
默认边界框和长宽比。对于网络顶部的多个特征映射,我们将一组默认边界框与每个特征映射单元相关联。默认边界框以卷积的方式平铺特征映射,以便每个边界框相对于其对应单元的位置是固定的。在每个特征映射单元中,我们预测单元中相对于默认边界框形状的偏移量,以及指出每个边界框中存在的每个类别实例的类别分数。具体而言,对于给定位置处的k个边界框中的每一个,我们计算c个类别分数和相对于原始默认边界框形状的4个偏移量。这导致在特征映射中的每个位置周围应用总共(c+4)k个滤波器,对于m×n的特征映射取得(c+4)kmn个输出。我们的默认边界框与Faster R-CNN[2]中使用的锚边界框相似,但是我们将它们应用到不同分辨率的几个特征映射上。在几个特征映射中允许不同的默认边界框形状让我们有效地离散可能的输出框形状的空间。
2.基础
在这里插入图片描述
feature map cell:是指feature map中每一个小格子,就是上图中的每个小方格,上图分别有64个feature map cell和16个feature map cell.

default box:是指每个feature map cell上都有一系列固定大小的box,也就是上图中的虚线框。

ground truth: 在机器学习中,数据是有标注的<x,t>, t是正确标注的ground
truth。就好像上图中x是框的信息,t就是猫或狗的信息。

prior box:是指在实际选择fdefault box 过程中(在实际选择中我们并不是
每个feature map cell的k个default box都取)也就是说default box是一种概念,prior box则是实际的选取。
训练中一张完整的图片送进网络获得各个feature map,对于正样本训练来说,需要先将prior box与ground truth box做匹配(就是把一张图片输入到 region network中,判断有物体的区域

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
深度学习目标检测面试通常会涉及以下几个方面: 1. 目标检测算法的原理和常见的算法类型:在目标检测领域,常见的算法包括YOLO系列(如YOLOv4、YOLOv5)、Faster R-CNN、SSD、EfficientDet等。这些算法通过使用不同的网络结构和策略来实现目标的检测和定位。 2. 目标检测算法的评价指标:在目标检测任务,常用的评价指标有精度和速度。精度可以通过计算IOU或者使用特定的阈值筛选目标进行评估。速度可以通过算法的推理时间来评估,通常希望在保持一定精度的前提下,选择速度更快的算法。 3. 不同任务领域的目标检测算法选择:根据任务的不同,可以选择适合的目标检测算法。比如,在图像分类任务,可以选择一些轻量级的网络结构,以节省算力资源。而在实例分割、文本检测等任务,可以选择相应的专门算法。 4. 理解和分析深度学习模型的性能:在面试,可能会被问到如何评估和分析深度学习模型的性能。除了精度和速度,还可以考虑模型的复杂度、可解释性等因素来综合评估模型的性能。 总的来说,深度学习目标检测面试主要涉及目标检测算法的原理、评价指标和不同任务领域的算法选择。在回答问题时,可以结合引用提到的一些流行的目标检测算法和性能指标进行回答。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [基于深度学习的目标检测算法面试必备(RCNN~YOLOv5)](https://blog.csdn.net/weixin_38709838/article/details/114956073)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [深度学习CV岗位面试问题总结(目标检测篇)](https://blog.csdn.net/AI_Lucky/article/details/120409268)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值