前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >深度学习中的检测网络:SSD/Faster R-CNN/YOLO

深度学习中的检测网络:SSD/Faster R-CNN/YOLO

作者头像
用户7164815
发布2020-04-08 12:04:19
8080
发布2020-04-08 12:04:19
举报
文章被收录于专栏:AI人工智能与大数据

何为检测?

深度学习中的检测任务(Detection)是指检测出图片中的物体位置,一般需要进行画框。比如下图中把人、羊,还有狗都框出来了,具体来说,网络需要输出框的坐标。

检测网络有哪些?

常用的检测可以大致可以分为两类:two stage和one stage. Two stage是说在检测网络分两步,第一步是框出物体,第二步是确定这个物体的分类。One stage就是根据提取的特征,直接使用回归网络得出其分类和检测框。其中,Faster R-CNN属于two stage,SSD和YOLO属于one stage.

One stage的好处是快,Two stage的好处是准确,在得到检测框后,再去分类这个任务要比直接回归网络得到分类好容易很多。

下图是Faster RCNN的结构:

主要分为四个步骤:

- 卷积层。原始图片先经过conv-relu-pooling的多层卷积神经网络,提取出特征图(feature map)。

- RPN层,region proposal networks。RPN层用于生成候选框,并利用softmax判断候选框是前景还是背景,从中选取前景候选框(因为物体一般在前景中),并回归调整候选框的位置,获得框内的物体的feature map

- ROI层,它将大小尺寸不同物体的feature map池化成相同的大小,然后送入后续的全连接层进行物体分类

- 分类层。利用ROI层输出的特征图进行分类,同时再次对检测框bounding box进行回归从而得到更精确的形状和位置。

SSD和YOLO可以放在一起对比,因为都是属于one stage的网络,在获取feature map后,检测和分类一起在一起进行。SSD和YOLO的区别在于SSD能够进行多尺度特征提取,可以看到上面的SSD结构有6个箭头指向Detections,每一个箭头代表一个尺度的feature map,卷积层越往后越能看到全局的特征。YOLO则没有这方面的设计,只有一个特征输出到Detections网络中。

因为SSD网络的这种设计,检测精度比YOLO高,同时速度比Faster RCNN快,因此也是当前应用最广泛的检测网络之一。另外,在SSD原始论文中用到的是VGG骨架来提取特征,现在很多更好的特征提取网络,例如ResNet,mobilenet也在大量应用,进一步提高精度或者加快速度。

总结

检测网络有很多,各有优劣,综合来说,SSD是个折中的选择,如果时间有限,建议试试SSD网络。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI人工智能与大数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 何为检测?
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档