干货|深度学习目标检测的主要问题和挑战!

2017 年 9 月 6 日 全球人工智能

全球人工智能:一家人工智能技术培训学校,旗下含Paper学院、商业学院、科普学院,技术学院和职业学院五大业务。拥有十几万AI技术用户,1万多名AI技术专家,几百名AI技术讲师。主要来自:北大,清华,中科院,麻省理工,卡内基梅隆,斯坦福,哈佛,牛津,剑桥......以及谷歌,腾讯,百度,脸谱,微软,阿里,海康威视,英伟达......等全球几百家名校和名企。


加入AI企业高管群>>

加入AI技术专家群>>

从简单的图像分类到3D姿势识别,计算机视觉领域从来不缺乏有趣的问题。其中,我们最感兴趣的,也投入精力去研究的领域之一就是目标检测。就像许多其他计算机视觉问题,该领域还缺乏一个显而易见或者“做好的”方法,这意味着目标检测仍然有很大的进步空间。在进入目标检测领域之前,让我们快速的过一遍计算机视觉领域最常见的问题。

一、目标检测 vs. 其他计算机视觉问题

1、分类:这大概是计算机视觉领域最知名的问题了,它是把一张图像分类正确分类到很多种类中去。学术界最流行的数据集是ImageNet,它由百万张分类好的图片构成。它的一部门数据被拿来用作每年的ImageNet大规模图像识别竞赛(ILSVRC)。近些年图像分类模型已经超过了人类的表现,因此该问题算是一个已经解决的问题。然后,还有很多其他图像分类竞赛,有很多文章记录下了这些已经解决的问题以及悬而未决的挑战。

图像分类的例子

2.定位:与图像分类类似,定位就是找到一张图片中的一个单一物体的位置。

定位的例子

定位在生活中是很实用的。例如,智能裁剪(根据目标的位置来裁剪图像),或者进行目标提取,以供其他技术做进一步的处理。它可以与分类结合起来--不仅定位到物体,还能把物体进行分类。

3、实例分割:从这种仅发现图像中的物体的目标定位技术更进一步,我们想对检测到的目标进行每个像素进行精细的分类,我们把这个问题称之为实例或者目标分割。

4、目标检测:把定位和分类任务结合起来,我们就需要同时进行一张图片中的多个目标的检测和分类。目标检测问题就是定位和分类一张图像中的多个物体。与定位最重要的差别就是“变量”部分。与分类任务只输出一个类别信息不同的是,目标检测的输出的个数是不定的,因为一张图片中检测到的目标数量是不定的。在本文中我们会深入介绍目标检测的实际应用的细节,以及目标检测,作为一个机器学习问题,存在的主要问题是什么,过去几年使用深度学习方法来解决它的方法有什么变化。

目标检测例子

5、实际应用:在我们的Tryolabs实验室,我们专门从事应用最好的机器学习方法来解决商业问题,所以,我们喜欢所有疯狂的机器学习研究问题,但是最后我们会在应用阶段考虑更多实际问题。 虽然目标检测还算是工业界的一个新的工具,但已经有很多使用目标检测技术的实用而有趣的应用了。

6、面部检测:20世纪第一个十年的中期,一些傻瓜相机已经使用检测面部技术来做高效自动对焦了。它是微型版的目标检测,其他类型目标的检测方法我们会稍后介绍。

7、数人头:目标检测的一个最简单也最容易忽视的应用就是数数。统计人、车、花朵或者微生物的数量是现实生活中各种不同类型的使用图形信息的系统最广泛的需求。最近澎湃发展的监控设备中,里面蕴藏着前所未有的使用计算机视觉方法将原始像素信息转换为结构化信息的巨大机会。

8、图像搜索引擎:最后,我们喜爱的一个应用实例是Pinterest的图形搜索引擎.他们使用目标检测技术作为索引图像中不同部位的工具。这样的话,当你搜索一个特定的手提袋,你可以找到你想要的手提袋在不同场景下的实例图。这比谷歌图像反搜索引擎仅仅找到相似的图像更有用。

相似图像:我们应用目标检测技术来定位包或者鞋子这种产品。在这个例子中,用户点击自动标注好的物体去查看相似的产品。(Pinterest论文中的例子)

8、卫星图像分析:在拥有廉价无人机和可支付的起的卫星服务之前,我们从没有这么多地球的俯视图。可是那时候就已经有公司开始使用目标检测技术来计算卫星图中的车,树和轮船了,就像Planet和Descartes LabS。以前可不可能(它们极为昂贵)获取这些高清晰度的数据,现在很多人已经可以使用它了。(译者:真是“旧时王谢堂前燕,飞入寻常百姓家”!) 一些公司使用无人机来拍摄那些人类难以进入的区域的视频来做自动化检测(就像BetterView公司这样),或者使用目标检测技术来做通用分析(就像TensorFligh)。基于目标检测方法,一些公司在没有人类干预的情况下来做自动检测和定位问题。

TensorFlight

二、目标检测技术的问题和挑战

让我们开始深入目标检测的主要问题吧。

1、目标的数目问题:我们前面已经提到了图片中多目标的问题,但是我们忽视了为什么目标数据是一个问题。当训练一个机器学习模型的时候,你经常需要将数据弄成固定大小的向量。因为我们事先不知道图片中有多少个目标,我们不知道正确的输出数量。因为这个问题,我们需要一些后处理,不过这增加了模型的复杂度。

以前,这种输出不定数量问题都是使用基于滑动窗口的方法解决的,生成图片中不同位置的所有固定大小的特征。然后丢弃一些不包含目标的窗口,合并一些窗口,从而得到最终输出。

滑动窗口的例子

2、大小问题:另外一个大挑战是目标的大小不一致问题。当做图像分类问题的时候,我们只需要将图片中占篇幅最大的目标分类就行了。另一方面,目标检测的时候,可能一些目标仅仅有十来个像素大小(或者说是原始图像中很小的比例)。传统方法一般使用不同大小的滑动窗口来解决它,这很简单但是特别低效。

3、建模:第三个问题是怎么同时解决定位和分类这两个问题。我们如何组合这两种不同种类的问题:将定位和分类合到一个模型来解决。

在介绍深度学习图像检测方法之前,我们先对传统方法做一个快速回顾。

4、传统方法:尽管有很多不同类型的传统目标检测方法,但是我们只关注两个最流行的方法(这两个现在还在广泛应用)。

第一个是2001年Paul Viola和Micahel Jones在论文“鲁棒实时目标检测"提出的Viola-Jones 框架.这个方法速度快,相对简单,因此傻瓜相机的实时脸部检测就是使用的这个算法,它的运算量很小。

我们不会详细介绍这个框架是怎么工作、怎么训练的,但是概括来说,它使用Harr 特征来生成不同的(可能上千个)简单的二分类.这些分类被级联的多尺度滑动窗口来处理,并且会及时丢弃错误分类。

另外一个与之相似的传统方法是梯度方向直方图(HOG)特征和支持向量机(SVM)来分类。它仍然依赖多尺度多尺度滑动窗口,虽然它优于Viola-Jones方法,但它仍旧比较慢。

5、深度学习方法:深度学习作为机器学习领域的变革者已经众人皆知了,尤其是计算机视觉领域。与深度学习在图形分类领域碾压传统模型类似,深度学习模型现在也是目标检测领域最好的方法。

现在你已经对目标检测有了一个更加直观的了解,也知道了其中的难点在哪里以及传统方法是怎么解决它的,现在我们对过去几年深度学习目标检测方法做一个综述介绍。

6、OverFeat:第一个使用深度学习做目标检测并取得很大进展的方法是纽约大学在2013年提出的OverFeat。他们提出了一个使用卷积神经网络(CNN)的多尺度滑动窗口算法。

7、R-CNN:在OverFeat提出不就,伯克利大学的Ross Girshick等人就提出了RCNN(基于区域的卷积特征)[9],它在目标检测比赛上相比其他方法取得了50%的性能提升。他们提出了一个三阶的方法:

  • 使用区域提议方法(最流行的方法是选择性搜索Selective Search)提取可能的目标;

  • 使用CNN在区域上提取特征;

  • 使用支持向量机(SVM)对区域进行分类

Ross Girshick等人在2014年提出的RCNN

虽然RCNN取得了了不起的成绩,但是训练过程中有很多的问题。训练它,你首先需要生成训练集的提议区域,然后在每个区域使用CNN特征提取器来提取特征(在Pascal2012的训练集上,需要生成大于200GB的中间文件),然后训练SVM分类器。

8、Fast R-CNN:一年以后,Ross Girshick发表了Fast RCNN,这个方法迅速进化成了一个纯深度学习的方法。与R-CNN相似,它也使用Selective Search来生成区域提议,但与R-CNN独立的提取不同区域然后使用SVM分类器不同的是,Fast RCNN在整张图上使用CNN来提取特征,然后在特征图上使用区域兴趣池化(Region of Interest,ROI),最后是一个反向传播网络来做分类和边框回归。这个方法不仅快,而且因为RoI池化层和全连接层,该模型可以进行端到端的差分,并且训练也更容易。最大的不足是该模型仍旧依赖于Selective Search(或者其他的区域提议算法),这也成为了模型推理阶段的一个瓶颈。

Fast R-CNN架构

9、YOLO:很快,Joseph Redmon(Girshick也作为共同作者或出现)发表了一篇名为You Only Look Once: Unified, Real-Time Object Detection(YOLO)的论文。YOLO提出了一个简单的卷积神经网络方法,它取的了很好的结果,速度也非常快,第一次让目标检测达到了实时性。

YOLO架构

10、Faster RCNN:随后,任少卿(Girshick也作为共同作者,现在Facebook研究院)发表了Faster R-CNN,这是R-CNN系列的第三个迭代。Faster R-CNN增加了一个所谓的“区域提议网络(Regio Proosal Network,RPN)”,试图摆出SelectiveSearch算法从而让模型实现完全端到端的训练。我们不会详细介绍RPNs是怎么做的,但是概括来说,它的作用是根据“物体”的分数来输出可能目标。这些目标区域被后面的RoI池化和全连接层来做分类(译者注:其实还有回归呢)。我们会在后续的博客中详细介绍该结构的细节。

Faster R-CNN 架构

11、SSD和R-FCN:最后两篇著名的论文,SSD在YOLO的基础上改进了一些,它使用多个尺度的卷积特征图以达到更好的结果和速度,R-FCN(Region-based Fully Convolutional Networks )使用了Faster RCNN的卷积架构。

12、数据集的重要性:在研究中,数据集起到了一个直观重要的作用(有时候他们的作用甚至被低估了)。每当一个新的数据集发布以后,新的论文接踵而至,新的模型被各种比较,不断进步,一切可能的想法都被提出来了。

不幸的是,目标检测的数据集不是太多。数据比较难(也很昂贵)获取,公司可能不愿意免费发布他们投资的产品,大学又缺乏资源。

现在有一些弥足珍贵的数据集,下面是一些公开的数据集:

三、结论

总而言之,目标检测领域现在有很多机会,不管是在未知的应用还是在提出新的最优的方法上。即使这只是一个目标检测的概述,我希望它抛砖引玉,引导你们更深入的了解知识。

后面几周,我们会做一个目标检测框架实现的细节的文章,以及评估标准和训练模型的方法。我们也会尝试将过去的目标检测算法应用到其他问题上。(翻译:元峰)

原文:https://tryolabs.com/blog/2017/08/30/object-detection-an-overview-in-the-age-of-deep-learning/

《全球人工智能》开始招人啦!


一、1名中文编辑(深圳):熟悉国内AI技术媒体、企业,对AI有一定了解,有非常强烈的兴趣进入这个行业,学习能力强,负责中文类AI技术新闻采编(有经验)。待遇:8-12k

二、1名英文编译(深圳):英语水平能看懂英文的新闻,对AI有一定了解,有非常强力的兴趣进入这个行业,学习能力强,负责英文类AI技术新闻采编和兼职翻译管理(有经验)。待遇:8-12k

三、1名课程规划(深圳):计算机相关专业,对人工智能技术有浓厚兴趣,能对ai技术进行系统化梳理,对培训教育比较感兴趣,学习能力强。负责技术课程的梳理和规划(英语好懂技术)。待遇:8-12k

四、2名导师管理(深圳):沟通能力强,能善于负责人工智能技术专家的拓展、关系维护、培训沟通、课程时间协调等工作(英语好懂技术)。待遇:8-12k+提成

五、2名渠道商务(深圳):有一定渠道商务拓展或销售经验,对新生事物比较敏感,熟悉线上线下渠道拓展业务。待遇:6-10k+提成

六、1名平面广告设计(深圳):有1年以上平面广告设计经验,有原画功底,有较好的审美水平,熟悉各种设计软件。待遇:6-10k。

简历发送mike.yu@aisdk.com

热门文章推荐

5个月市值涨了1200亿,首次突破3100亿市值!

华为扔下这枚“AI芯弹”,全世界的智能手机都卡(慢)死了!

用57行代码搞定花8000万美元采购车牌识别项目

厉害|百度28位离职技术大牛和他们创建的AI公司!

一AI工程师下载200万GB色情内容,只为学习Python!

推荐|变形卷积核、可分离卷积?CNN中十大操作!

她:13岁造飞机,17岁进MIT,22岁到哈佛读博!

全球最火爆的人脸识别技术应用: FaceDance Challenge!

厉害!科大讯飞市值奔1000亿,市盈率达400倍成“妖股”!

残酷!如果你35岁破产,你还有多大可能逆袭?

登录查看更多
6

相关内容

目标检测,也叫目标提取,是一种与计算机视觉和图像处理有关的计算机技术,用于检测数字图像和视频中特定类别的语义对象(例如人,建筑物或汽车)的实例。深入研究的对象检测领域包括面部检测和行人检测。 对象检测在计算机视觉的许多领域都有应用,包括图像检索和视频监视。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
深度学习目标检测方法及其主流框架综述
专知会员服务
143+阅读 · 2020年6月26日
【CMU】基于图神经网络的联合检测与多目标跟踪
专知会员服务
54+阅读 · 2020年6月24日
基于小样本学习的图像分类技术综述
专知会员服务
146+阅读 · 2020年5月6日
3D目标检测进展综述
专知会员服务
186+阅读 · 2020年4月24日
专知会员服务
155+阅读 · 2020年4月21日
深度学习视频中多目标跟踪:论文综述
专知会员服务
90+阅读 · 2019年10月13日
深度学习目标检测算法综述
AI研习社
24+阅读 · 2019年2月1日
干货 | 基于深度学习的目标检测算法综述(二)
AI科技评论
21+阅读 · 2018年8月20日
【深度学习】干货:目标检测入门,看这篇就够了
产业智能官
7+阅读 · 2018年3月23日
干货 | 深度学习时代的目标检测算法
AI科技评论
6+阅读 · 2018年3月6日
深度学习目标检测概览
AI研习社
46+阅读 · 2017年10月13日
深度学习时代的目标检测算法综述
AI前线
10+阅读 · 2017年9月22日
Arxiv
5+阅读 · 2019年4月8日
Adversarial Transfer Learning
Arxiv
12+阅读 · 2018年12月6日
Neural Architecture Optimization
Arxiv
8+阅读 · 2018年9月5日
Arxiv
6+阅读 · 2018年4月21日
Arxiv
11+阅读 · 2018年4月8日
Arxiv
7+阅读 · 2018年1月24日
Arxiv
4+阅读 · 2017年11月14日
Arxiv
4+阅读 · 2016年12月29日
VIP会员
相关VIP内容
深度学习目标检测方法及其主流框架综述
专知会员服务
143+阅读 · 2020年6月26日
【CMU】基于图神经网络的联合检测与多目标跟踪
专知会员服务
54+阅读 · 2020年6月24日
基于小样本学习的图像分类技术综述
专知会员服务
146+阅读 · 2020年5月6日
3D目标检测进展综述
专知会员服务
186+阅读 · 2020年4月24日
专知会员服务
155+阅读 · 2020年4月21日
深度学习视频中多目标跟踪:论文综述
专知会员服务
90+阅读 · 2019年10月13日
相关资讯
深度学习目标检测算法综述
AI研习社
24+阅读 · 2019年2月1日
干货 | 基于深度学习的目标检测算法综述(二)
AI科技评论
21+阅读 · 2018年8月20日
【深度学习】干货:目标检测入门,看这篇就够了
产业智能官
7+阅读 · 2018年3月23日
干货 | 深度学习时代的目标检测算法
AI科技评论
6+阅读 · 2018年3月6日
深度学习目标检测概览
AI研习社
46+阅读 · 2017年10月13日
深度学习时代的目标检测算法综述
AI前线
10+阅读 · 2017年9月22日
相关论文
Arxiv
5+阅读 · 2019年4月8日
Adversarial Transfer Learning
Arxiv
12+阅读 · 2018年12月6日
Neural Architecture Optimization
Arxiv
8+阅读 · 2018年9月5日
Arxiv
6+阅读 · 2018年4月21日
Arxiv
11+阅读 · 2018年4月8日
Arxiv
7+阅读 · 2018年1月24日
Arxiv
4+阅读 · 2017年11月14日
Arxiv
4+阅读 · 2016年12月29日
Top
微信扫码咨询专知VIP会员