目标检测之one-stage模型发展总结

本文回顾了one-stage目标检测器的发展,包括YOLO、YOLOv2、YOLOv3、SSD、DSSD和RetinaNet等模型。这些模型在保持速度优势的同时,不断提升检测精度,部分模型如RetinaNet甚至达到了与two-stage检测器相当的水平。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

        由于广泛的应用和技术上的突破,目标检测(object detection)在近些年吸引了越来越多的注意力,以飞快的速度发展着。在导致目标检测领域飞速发展的众多因素中,深度卷积神经网络和GPU算力无疑占据着重要的地位。大多数顶尖的目标检测网络都充分利用了深度学习网络作为骨干网络用来提取图像特征进行分类和定位。如今,目标检测越来越多的应用在了多分类检测(multi-categories)、边缘检测(edge detection)、显著性目标检测(salient object detection)、姿态检测(pose detection)、场景文本检测(scene text detection)、人脸检测(face detection)和行人检测(pedestrian detection)等领域。

检测器通常能够被分为两类,一类是two-stage检测器,最具代表的为faster R-CNN;另一类是one-stage检测器,包括YOLO,SSD等。一般来说,two-stage检测器具有高定位和识别准确性,而one-stage则有速度上的优势。其在结构上的区别就是two-stage检测器有一个生成region proposal的步骤,然后对其进行预测和分类;而one-stage则是直接对预测框进行回归和分类预测,示意图如下:

    

这次我们回顾总结的是one-stage目标检测器的发展历程,由于其先天结构的问题,其准确率一直逊色于two-stage检测器,但是随着不断的发展和研究人员的努力,目前的one-stage检测器在保证速度的同时,其准确率也可以媲美于two-stage检测器,下面我们就来回顾总结one-stage检测器发展历程中的具有代表意义的网络模型。

YOLO(you only look once)  2015

YOLO是第一个被提出的one-stage目标检测器,其主要贡献是对整幅图像和摄像头输入的实时检测,也就是说YOLO的最大优势是速度。首先,相对于Fast R-CNN使用selective research的方法对每张图片提取出2000个region proposals,YOLO仅仅对每张图片预测100多个bounding boxes。其次,YOLO将检测看作是一个回归(regression)问题,所以可以用一个统一的(unified)网络直接去预测边界框(bounding boxes)和分类类别。在Tian X GPU上,YOLO可以实现每秒45张图片的检测速度,作为对比,Fast R-CNN和Faster R-CNN分别为0.5和7。

YOLO的网络结构如下:

        

YOLO首先把输入图像划分成S×S个网格(grid),每个网格负责检测中心落在此网格内的物体,每一个网格(grid)预测B个边界框(x,y,w,h)和他们的置信度分数,还有一个C维的类别分数(总共有C个分类)。最后生成S×S×(B×(5+C))维的特征图。按照上图来说S=7,B=2,C=20。每一个格点是一个30维的向量,如上图所示。其中,置信度分数(confidence score)由两部分组成:confidence= P(object)* IOU 。P(object)表示的是方框内包含物体的可能性;IOU(intersection over union)表示的是边界框包含物体的准确性。

为了得到细粒度(finegrained)可视化信息来提升检测精度,在检测阶段,将预训练时的224×224的分辨率加倍。YOLO直接使用整幅图来进行检测,因此可以encode全局信息,所以可以减少将背景检测为物体的错误。Fast R-CNN会犯许多背景误报的错误,YOLO在这方面少了接近3倍。

YOLO还有一些不足之处,虽然每一个格点有两个预测框,但是只能预测一个类别;YOLO是直接预测的bbox的位置,而不是预测的框的offset,增加了训练的难度;此外进行多次下采样,使得得到的特征图分辨率较低,使得目标定位不准确,对于小尺寸目标检测有待加强;

实验表明,YOLO不擅长精确预测物体位置,位置误差(localization error)是预测误差的主要部分。在PASCAL VOC数据集上训练测试,YOLO达到63.4%mAP的检测准确度,速度达到45fps,作为比较,Fast R-CNN(70.0% mAP,0.5fps),Faster R-CNN(73.2%mAP,7fps)。

YOLOv2

YOLOv2是YOLO的第二个版本,其借鉴了其他一些新颖的(novel)的工作成果,使得YOLOv2在精确度和速度方面都有了很大的提升。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值