webooru
webooru copied to clipboard
聊聊目标检测中的多尺度检测(Multi-Scale),从YOLO,ssd到FPN,SNIPER,SSD填坑贴和极大极小目标识别 | David 9的博客 --- 不怕"过拟合"
狙击手在放大倍焦前已经经历了大量的小目标训练,这样看似乎是 RPN 做的好 — David 9
之前在讲 SSD 时我们聊过 SSD 的目标检测是如何提高多尺度(较大或较小)物体检测率的。我们来回顾一下,首先,较大的卷积窗口可以卷积后看到较大的物体, 反之只能看到较小的图片. 想象用 1*1 的最小卷积窗口, 最后卷积的图片粒度和输入图片粒度一模一样. 但是如果用图片长*宽 的卷积窗口, 只能编码出一个大粒度的输出特征.
对于yolov1,每层使用同样大小的卷积窗口, 识别超大物体或者超小物体就变得无能为力(最后一层的输出特征图是固定 7*7):
YOLO 架构示意图
而SSD就更进一步,最后一层的检测是由之前**多个尺度(Multi-Scale)**的特征图共同生成的:
SSD 架构示意图
这样 SSD 在计算复杂度允许的情况下,在多尺度物体的检测上有所提高。但是 SSD 也有明显缺陷,其最后几层的所谓 “多尺度” 是有限的(如上图特征图尺寸越小,可以识别的物体越大)。对于极小的目标识别,SSD 就显得无能为力了,
来自:https://techcrunch.com/2017/06/16/object-detection-api/
假设 “风筝” 只占原始图片的几十个像素,SSD 的高层特征图已经无法捕捉如此小的物体。
为了解决上述问题 facebook 的老兄们开发出了FPN(特征金字塔网络),这种网络不是一味地进行下采样提取语义特征去识别物体,而是从顶层(自上而下)的每一层都进行上采样获取更准确的像素位置信息(有些类似残差网络的跳层连接):
我们知道卷积操作虽然能高效地向上提取语义,但是也存在像素错位的问题
**加入 David9 的星球群,获得通行密码 , 阅读全文
**
The following two tabs change content below.
- Bio
- Latest Posts
**
**
邮箱:[email protected] 微信: david9ml http://nooverfit.com/wp/%E8%81%8A%E8%81%8A%E7%9B%AE%E6%A0%87%E6%A3%80%E6%B5%8B%E4%B8%AD%E7%9A%84%E5%A4%9A%E5%B0%BA%E5%BA%A6%E6%A3%80%E6%B5%8B%EF%BC%88multi-scale%EF%BC%89%EF%BC%8C%E4%BB%8Eyolo%EF%BC%8Cssd%E5%88%B0fpn/