“目标检测是当前计算机视觉和机器学习领域的研究热点。从Viola-Jones Detector、DPM等冷兵器时代的智慧到当今RCNN、YOLO等深度学习土壤孕育下的GPU暴力美学,整个目标检测的发展可谓是计算机视觉领域的一部浓缩史。本文简要回顾了从1994到2017一共二十余年间目标检测的发展历程。”
01
—
A Road Map
从过去的十多年来看,自然图像的目标检测算法大体上可以分为基于传统手工特征的时期(2013之前)以及基于深度学习的目标检测时期(2013~今),如下图所示。从技术发展上来讲,目标检测的发展则分别经历了“包围框回归”、“深度神经网络兴起”、“多参考窗口(Multi-References,又称Anchors)”、“难样本挖掘与聚焦”以及“多尺度多端口检测”几个里程碑式的技术进步。下面将分别对这些算法和其中采用的技术逐一进行介绍。02
—
基于经典手工特征的目标检测算法
早期的目标检测算法大多是基于手工特征所构建的。由于在深度学习诞生之前缺乏有效的图像特征表达方法,人们不得不尽其所能设计更加多元化的检测算法以弥补手工特征表达能力上的缺陷。同时,由于计算资源的缺乏,人们不得不同时寻找更加精巧的计算方法对模型进行加速。
【代表算法1】Viola-Jones 检测器[1]-[2]
【代表算法2】HOG行人检测器[3]
【代表算法3】可变形部件模型[8]-[12]
Viola-Jones 检测器:
2001年Paul Viola和MichaelJones在CVPR上发表了一篇跨时代意义的文章[1],后人将文章中的人脸检测算法称之为Viola-Jones(VJ)检测器。VJ检测器在17年前极为有限的计算资源下第一次实现了人脸的实时检测,速度是同期检测算法的几十甚至上百倍,极大程度地推动了人脸检测应用商业化的进程。VJ检测器的思想深刻地影响了目标检测领域至少10年的发展。
VJ检测器采用了最传统也是最保守的目标检测手段——滑动窗口检测,即在图像中的每一个尺度和每一个像素位置进行遍历,逐一判断当前窗口是否为人脸目标。这种思路看似简单,实则计算开销巨大。VJ人脸检测之所以器能够在有限的计算资源下实现实时检测,其中有三个关键要素:多尺度Haar特征的快速计算,有效的特征选择算法以及高效的多阶段处理策略。
在多尺度Harr特征快速计算方面,VJ检测器使用积分图对特征提取进行加速。积分图可以使特征计算量与窗口的尺寸无关,同时也避免了处理多尺度问题时建图像金字塔这一耗时的过程。
在特征选择算法方面,与传统意义上的手工特征不同的是,VJ检测器中使用的Harr特征并非是人为事先设计好的。VJ检测器使用了过完备的随机Haar特征,并通过Adaboost算法从一个巨大的特征池(约180k维)中进行特征选择,选取出对于人脸检测最有用的极少数几种特征从而降低不必要的计算开销。
在多阶段处理方面,作者提出了级联决策结构,并将其形象地称之为“瀑布”(Cascades)。整个检测器由多级Adaboost决策器组成,每一级决策器又由若干个弱分类决策桩(Decision Stump)组成。瀑布的核心思想是将较少的计算资源分配在背景窗口,而将较多的计算资源分配在目标窗口:如果某一级决策器将当前窗口判定为背景,则无需后续决策就可继续开始下一个窗口的判断。
HOG行人检测器:
HOG特征最早是为解决行人检测问题所提出。HOG特征可以认为是在梯度方向直方图特征基础上的又一次重要改进,是所有基于梯度特征的目标检测器的基础。HOG检测器是沿用了最原始的多尺度金字塔+滑窗的思路进行检测。为了检测不同大小的目标,通常会固定检测器窗口的大小,并逐次对图像进行缩放构建多尺度图像金字塔。为了兼顾速度和性能,HOG检测器采用的分类器通常为线性分类器[3]或级联决策分类器[7]等。
在图像的特征提取过程中,最重要的两个概念是不变性(包括平移不变性、旋转不变性、尺度不变性以及光照不变性等)和区分性(特征的表达能力)。为了兼顾二者的特点,HOG特征采用了如下的策略:将图像所在区域划分为不同的细胞单元(Cell),并在每个细胞内统计梯度方向直方图信息。除此之外,为了进一步增强其光照不变性以及非线性表达能力,HOG特征还首次引入了区块(Block)的概念,将相邻的Cell归并为一个Block,并在Block内对Cell特征进行局部归一化。
可变形部件模型:
可变形部件模型(Deformable Part based Model,DPM)是基于经典手工特征的检测算法发展的顶峰,连续获得VOC07、08、09三年的检测冠军。DPM最早由芝加哥大学的P. Felzenszwalb等人提出[8],后由其博士生R.Girshick改进[9]-[12]。2010年,P.Felzenszwalb和R. Girshick被VOC授予“终身成就奖”。DPM的主要思想可简单理解为将传统目标检测算法中对目标整体的检测问题拆分并转化为对模型各个部件的检测问题,然后将各个部件的检测结果进行聚合得到最终的检测结果,即“从整体到部分,再从部分到整体”的一个过程。例如,对汽车目标的检测问题可以在DPM的思想下分解为分别对车窗、车轮、车身等部件的检测问题,对行人的检测问题也可以类似地被分解为对人头、四肢、躯干等部件的检测问题。
在模型结构方面,DPM可视为HOG检测器在其结构上进行了拓展。整个DPM检测器由基滤波器(Root-filter)和一系列部件滤波器(Part-filter)构成。这一部分工作由Felzenszwalb等人在07年提出[8],并称其为星型模型(Star-model)。后来Girshick又在星型模型的基础上进一步将其拓展为混合模型(Mixture Model)[9]-[12],用于解决真实世界中三维物体不同视角下的检测问题。
在模型优化方面,由于DPM模型在训练过程中并未要求详细标注出各个部件的位置,所以采用了一种弱监督学习的策略。由于部件滤波器可以视为模型中的隐含变量,故Girshick进一步将其转化为隐含变量结构SVM的优化问题,并结合难样本挖掘和随机梯度优化策略对该问题进行求解。
在模型加速方面,Girshick还曾将DPM中的线性SVM分类器“编译”为一系列的级联决策桩(Decision Stump)分类器,在不牺牲精度的前提下,将DPM加速了10倍。值得一提的是,这种加速策略本质上是借鉴了VJ检测器快速检测人脸的技术思路。
在算法的后处理方面,DPM算法采用包围框回归和上下文信息集成这两个方法[10]-[12]进一步提升检测准确率。其中,包围框回归的主要作用是将检测得到的基滤波器以及部件滤波器所对应的包围框进行整合并利用线性最小二乘回归来得到最终精确的包围框坐标。上下文信息集成的作用在于利用全局信息对检测结果进行重新调整。从本质上来讲,上下文信息反映了各个类别的目标在图像中的联合先验概率密度分布,即哪些类别的目标可能同时出现,哪些类别的目标则不太可能同时出现。
虽然近几年基于深度学习的检测模型从精度上已远远超越了DPM,但DPM中的很多思想直到今天依然重要,例如混合模型、难样本挖掘、包围框回归、上下文信息的利用等。时至今日,这些方法还都深深影响着目标检测领域的发展。
03
—
基于深度学习的目标检测算法(上)
——基于Object Proposals的检测算法
Girshick曾提到[14]:“在过去的几年中(2011-2013),目标检测算法的发展几乎是停滞的,人们大多在低层特征表达基础上构建复杂的模型以及更加复杂的多模型集成来缓慢地提升检测精度”。既然深度卷积网络能够学习到非常鲁棒且具有表达能力的特征表示,那么为何不将其引入目标检测流程中用来提取特征呢?当卷积神经网络在2012年ImageNet分类任务[19]中取得了巨大成功后,Girshick等人抓住了机会打破僵局,于2014年率先提出了区域卷积网络目标检测框架(Regionswith CNN features,R-CNN)[14]。自此目标检测领域开始以前所未有的速度发展。
随着卷积神经网络层数的不断加深,网络的抽象能力、抗平移能力和抗尺度变化能力越来越强。对于图像分类任务来说这诚然是一件好事,然而对于检测任务来说却带来了另一个问题:目标包围框精准的位置越来越难以获得。由此便出现了一个矛盾:如果想让检测算法获得更强的平移不变性和尺度不变性,那就必须一定程度地牺牲特征在目标包围框位置和尺度变化上的敏感性,即协变性;相反,如果想要获得更精确的目标包围框定位结果,就必须在平移不变性和尺度不变性上做一些妥协。所以,如果想要将卷积网络有效应用于目标检测问题中,关键是如何有效解决深度网络的平移/尺度不变性和目标检测问题中平移/尺度协变性要求的矛盾[20]。这迫使人们不得不放弃基于特征图+滑动窗口这一套检测方案,从而将关注点转向寻找更加定位精准的目标候选框检测(Object Proposal Detection)算法上来。
在过去的几年里,伴随着深度学习目标检测算法的发展,有非常多的Object ProposalDetection算法被提出,例如Selective Search[22]、Edge Boxes[23]、BING[24]等等。需要注意的是,基于Object Proposal并非是深度学习检测算法的专属,早在传统的手工特征时期,Uijlings等人[22]就尝试过使用Selective Search + 词袋(Bag of Words)特征进行目标检测。
下面将分别介绍几种基于Object Proposal的深度学习目标检测算法。
【代表算法1】Regions with CNN Features (R-CNN)[14]
【代表算法2】Spatial Pyramid Pooling Networks (SPPNet)[15]
【代表算法3】Fast-RCNN[16]
【代表算法4】Faster-RCNN[17]
【代表算法5】Feature Pyramid Networks
R-CNN:
R-CNN[14]使用了一种非常简单的检测策略,首先在图像中提取Object Proposals,接下来把每个Proposal缩放到相同的大小后使用在ImageNet上训练好的Alexnet网络[19]提取特征,最后再使用SVM分类器进行虚警排除和类别判断。R-CNN在VOC07数据集上取得了惊艳的效果,mAP由33.7%(DPM-v5[25])提升至58.5%。虽然R-CNN取得了很大的进步,但其缺陷也很明显:首先,其训练是多阶段的,较为繁琐和耗时;其次,由于在高密度的候选区域上反复进行特征提取,其检测速度很慢(GPU下每张图40秒,640×480像素)。后来Kaiming He等人提出了SPPNet[15],很好地解决这个问题。
SPPNet:
Kaiming He等人在2014年提出了SPPNet[15],用来解决CNN网络提取特征时要求输入图像尺寸固定的问题。与传统的CNN网络模型相比,其创新点是,在卷积层和全连接层之间添加了一个空间金字塔池化(Spatial Pyramid Pooling, SPP)层。SPPNet可做到不经过候选区域的缩放操作就能实现任意大小、任意长宽比区域的特征提取。在不损失精度的前提下,SPPNet是R-CNN的检测速度的38倍。SPPNet有效解决了候选区域计算冗余的问题,但是依然存在一些缺陷:首先,其训练是仍然是多阶段的;其次,SPPNet在微调网络时,只对其全连接层进行了微调,影响了特征的准确性。后续提出的Fast R-CNN检测器进一步地解决了这些问题。
Fast-RCNN:
2015年,Girshick等人在R-CNN和SPPNet的基础上又提出了FastR-CNN检测器[16]。Fast-RCNN最大的特点在于实现了一种多任务学习方式,实现了在网络微调的同时,对目标分类和包围框回归的同步训练,且训练速度是R-CNN的9倍,检测速度是R-CNN的200倍。在VOC2007数据集上,Fast-RCNN将mAP由RCNN的58.5%提升至70.0%。Fast-RCNN成功地结合了R-CNN和SPPNet两者的优点,但还是需要事先使用外部算法来提取目标后选框,不能够实现端到端的处理。那能不能将候选区域检测这一操作同样也交给网络去做呢?后来的Faster R-CNN解决了这个问题。
Faster-RCNN:
同样是在2015年,在Fast-RCNN被提出后不久,Shaoqing Ren、Kaiming He以及Girshick等人又很快提出了Faster-RCNN算法[17]。Faster-RCNN是第一个真正意义上的端到端的深度学习检测算法,也是第一个准实时(17帧/秒,640×480像素)的深度学习目标检测算法。Faster-RCNN在VOC07上在此将mAP由70.0%提升至78.8%。Faster-RCNN最大的创新点在于设计了候选区域生成网络(RegionProposal Network,RPN),并在其中设计了“多参考窗口”的机制,将Selective Search或Edge Boxes等外部Objectproposal检测算法融合到同一个深度网络中实现。从R-CNN到Fast RCNN再到Faster-RCNN,候选区域生成,特征提取,候选目标确认和包围框坐标回归逐渐被统一到同一个网络框架之中。检测精度由R-CNN的58.8%提升至Faster-RCNN的78.8%,检测速度也由每帧几十秒[14]提升至准实时检测[17]速度。
Feature Pyramid Networks:
在2017年,Tsung-Yi Lin、Piotr Dollar、Ross Girshick和Kaiming He等人又在Faster RCNN的基础上提出了Feature Pyramid Networks(FPN)检测算法。原有的目标检测算法通常都是只采用顶层特征做检测,原因是网络顶层特征的语义信息比较丰富。然而,虽顶层特征的语义信息丰富,但其中的目标位置信息却比较粗略,不利于目标包围框的准确定位;相反,虽然底层特征的语义信息比较少,但其中目标的位置信息却非常准确。因此,FPN的主要思想就是在网络前馈结束后,又将网络中最顶层的特征图像逐层地反馈并与前层的特征图进行融合,在此基础上,再从网络中不同深度的位置引出多个检测端口对其中的不同尺度的目标进行检测。由于网络在前馈过程中天然形成了金字塔形状的特征图,所以FPN对小目标以及尺度分布较大的目标具有天然的检测优势。FPN选择在比VOC规模和难度更大的MSCOCO数据集上进行了测试,取得了当时最佳的检测效果。
04
—
基于深度学习的目标检测算法(下)
——基于一体化卷积网络的检测算法
最近两年基于深度学习的目标检测算法的发展有两条主线,第一条是基于Object Proposal的检测主线,这条主线基本是按照R-CNN >> SPPNet >> Fast-RCNN >> Faster-RCNN >> FPN发展的;另一条是最近一年提出的一体化卷积网络的检测主线,这条主线基本是按照YOLO >> SSD >> Retina-Net发展的。在第二条主线中,人们抛弃了传统的粗检测+精检测的检测流程,经过单次检测即可直接得到最终的检测结果,因此有着更快的检测速度。
一体化卷积网络检测算法最早可以追溯到上世纪九十年代[30]-[31],当时Yann Lecun等人将其命名为“空间位移神经网络(Space Displacement Neural Network)”。最近两年,一体化卷积网络检测算法受到了更多人的关注,在未来也会有更大的发展空间。下面将分别对这条主线下的YOLO、SSD、Retina-Net三种典型算法进行介绍。
【代表算法1】You Only Look Once (YOLO) [18]
【代表算法2】Single Shot MultiBox Detector (SSD) [28]
【代表算法3】Retina-Net[29]
YOLO:
YOLO[18]是第一个一体化卷积网络检测算法,由Joseph和Girshick等人在2015年提出。该算法最大的优势是速度快,彻底解决了基于深度学习速度上的痛点。该算法的增强版本在GPU上速度为45帧/秒,快速版本速度为155帧/秒(640×480像素)。YOLO是“You Only LookOnce”的缩写,从算法的名字就能够看出来作者彻底放弃了Proposal这一概念,直接将整张图像作为网络的输入,并仅通过一次前向传播直接得到目标包围框的位置和目标的类别。YOLO虽然有着非常快的检测速度,但其精度与Faster-RCNN相比有所下降,尤其是小目标检测效果较差,其定位的准确度也稍有不足。这主要是由于YOLO没有采用类似FasterRCNN中的“多参考窗口”的机制处理多尺度窗口问题。后来提出的SSD算法改善了这些问题。
SSD:
SSD[28]算法由Wei Liu等人于2015年提出。SSD算法吸收了YOLO速度快和RPN定位精准的优点,采用了RPN中的多参考窗口技术,并进一步提出在多个分辨率的特征图上进行检测。SSD在VOC07上取得了接近Faster-RCNN的准确率(mAP=72%),同时保持了极快的检测速度(58帧/秒,640×480像素)。SSD与Faster-RCNN中不同之处有两点:首先,SSD是在多个尺度下的特征图上设置多个参考窗口进行后选框的检测,而Faster-RCNN仅仅是在一个尺度上进行处理;其次,Faster-RCNN是先利用提取目标后选框,然后再在后选框基础上利用检测网络和ROI Pooling进行后续判断,SSD则直接分别在多个尺度的特征图上进行多尺度检测和包围框坐标回归。此外,SSD在训练过程中,还采用了难样本挖掘操作来对图像中难样本进行聚焦。
Retina-Net:
一直以来,虽然基于一体化卷积网络的检测模型的检测速度都明显快于基于Object Proposals的检测算法,其检测精度却一直略逊于后者。Tsung-Yi Lin、 Priya Goyal、Ross Girshick以及Kaiming He等人对其背后的原因进行了研究,并与2017年提出了Retina-Net[29]检测模型。Tsung-Yi Lin等人认为图像中极为不均衡的目标-背景数据分布才是导致一体化卷积网络检测精度较低的主要原因。Retina-Net对传统的交叉熵损失函数进行修正,提出了“聚焦损失函数(Focal Loss)”。通过降低网络训练过程中简单背景样本的学习权重,Retina-Net可以做到对难样本的“聚焦”和对网络学习能力的重新分配,从而使一体化卷积网络检测模型的检测速度和精度全面超越基于Object Proposals的检测模型。事实上,SSD中的难样本挖掘操作也与Focal Loss有着类似思想和效果。
05
—
目标检测中的关键技术
近年来,尤其是深度学习出现之后,自然图像目标检测领域取得了一系列突破性的进展。早期的目标检测算法[3],[1]-[2],[8]-[12]通常将检测视为一个在图像多个尺度上“滑动窗口遍历+目标背景二分类”的问题。因此,人们常常重点解决特征的表达能力、特征提取的时间效率、多尺度问题的加速方法等问题。最近几年提出的基于深度学习的检测算法[12]-[15],[25]则通常是在以下几个问题上寻求技术突破:
【关键技术1】 多尺度检测方法
【关键技术2】 包围框坐标回归
【关键技术3】 加速策略
多尺度检测方法:
目标检测中的“多尺度”问题包含了“不同大小”和“不同长宽比”两方面的内容。早期的目标检测算法,如VJ检测器检测人脸、HOG检测器检测行人都是针对特定长宽比目标所设计的检测算法,所以并没有考虑“不同长宽比”这一层面的问题;而中后期的目标检测算法开始更多关注于一般性目标的通用检测算法,即开始关注检测“不同长宽比”的目标。下图显示了自然图像目标检测的多尺度检测方式发展流程。
目标检测的多尺度检测方式发展流程
从近20年的目标检测工作来看,处理多尺度的问题采用的方法经历了从最早的“多尺度积分图特征”,到之后的“特征/滤波器金字塔遍历”,再到后来的“Object Proposals”,最后到如今的依靠“深度网络暴力回归”四个阶段的发展历程。
早期检测算法如VJ检测器在处理多尺度问题时,并没有采用“建塔”这一最直观的思路。这是因为这种做法在计算能力有限的时代无法承受如此大的计算量。所以,VJ检测器不得不采取积分图这一种巧妙的方法来解决该问题。在VJ检测器出现之后的几年里,随着硬件计算能力不断提升,更多的人尝试使用更加复杂且表达能力更强的特征进行目标检测。但遗憾的是,高度非线性的特征表示如HOG、LBP等并不具有积分图特征类似的性质,所以人们开始把思路转向了“构建金字塔+滑窗遍历”这一最直观的处理方式。从HOG检测器到DPM,甚至后来的深度学习检测算法Overfeat[32]都是通过这种方式构建的。
需要强调的是,通过建塔的方式只能处理特定长宽比目标的检测问题,例如人脸检测、行人检测等。对于如VOC、MSCOCO等一般性目标检测问题,如果构建不同长宽比、不同尺度的特征金字塔,其计算量直到今天也是难以接受的。不过,DPM虽然没有构建不同长宽比的金字塔,但却可以处理一般性目标检测问题。这是因为DPM采用了Mixture Model这种特殊的处理策略。
随着人们需要检测的目标类别越来越多,目标形态越来越多样化,人们开始思考,是否能够利用一种统一的“粗检测”模型来处理不同长宽比和不同类别的目标?Object Proposals提供了一种很好的解决思路。Object Proposal的检测指的是利用较低的计算量实现对图像中所包含的一般性目标的包围框进行准确定位(不局限与具体的目标类别,也不局限于固定的长宽比)。Object Proposals在近两年基于深度学习的目标检测算法中起到了非常重要的作用。从R-CNN到Fast-RCNN再到Faster-RCNN,Object Proposals从最开始独立的算法模块逐渐演变到最后与网络融为一体。
随着GPU计算性能的提升,人们处理多尺度问题的方法变得越来越直接越来越暴力,而这种暴力在基于一体化卷积网络的检测方法(如YOLO)中达到了顶峰。采用深度网络暴力回归解决多尺度问题的思想非常简单,即直接利用深度网络在目标对应位置提取的特征对其包围框的长宽进行回归。这种做法的优点是设计简单,计算量小,先提条件是图像感受野足够大且深度特征表达能力足够强,缺点是对小目标的包围框定位不够准确。
包围框坐标的回归:
特征的平移、尺度不变性以及定位的准确性一直以来都存在着矛盾。早期的检测算法大多采用低层手工特征,更多关注于图像的边缘、轮廓等信息。这类特征的平移、尺度不变性较差,但对目标进行精确定位时有着天然的敏感性,可对目标边界进行准确的定位。而基于深度学习的检测算法中采用的深度特征由于其具有更强的平移不变性和尺度不变性,随之带来的问题是对目标包围框定位的先天能力不足。下图显示了目标检测中包围框回归技术的发展过程。
对于早期基于手工特征的检测算法以及后来基于Object Proposals的检测算法(如DPM、R-CNN、Fast-RCNN)而言,包围框坐标回归仅仅是作为一种刷榜时提分的手段,这种操作对于检测问题仅仅起到了锦上添花的作用,可有亦可无。然而从Faster-CNN开始,情况发生了转变,这是由于包围框回归不再是一个单独的后处理模块,而是集成在了网络中,并采用多任务损失函数同分类任务一同进行训练。现如今包围框回归已经是算法流程中不可替代的一个标准环节。最近的一些算法在包围框回归精度的提升方面取得了一些成果,比如多次包围框坐标修正[40]、以及概率推断在包围框坐标预测中的应用[41]等。
目标检测的包围框回归技术发展流程
加速策略:
目标检测算法的加速一直以来都是该领域一个非常重要的问题。一般来讲,人们对算法的加速通常体现在两个层面,第一个层面是从算法原理角度出发,设计低计算复杂度的算法,并尽可能减少重复计算的开销;第二个层面是从硬件实现层面出发,采用更高并行粒度的算法,并通过多核并行计算提升计算速度,如利用GPU加速。早期的检测算法在目标检测的计算原理方面做了很多加速工作,而后期的深度学习的检测算法的计算量虽然比早期算法要大,但依靠硬件计算能力的提升已经可以轻松实现实时检测的速度。下图显示了自然图像目标检测算法的常见加速策略。
目标检测算法的加速策略一览
通常在目标检测算法当中,特征提取部分的计算开销较其他环节的比重最大,所以近年来人们在特征提取层面的加速工作最多,加速效果也最为显著。传统的基于滑动窗口的检测器会在每个尺度的图像上以一定步长移动,并在每个窗口上做特征提取操作。由于相邻滑窗之间通常有很大面积的交叠,因此交叠部分的特征就会存在大量的计算重复。为了解决这个问题,通常在滑窗之前,都会在图像上只整体计算一次特征图(Feature Map),以避免后面滑窗时对特征进行重复提取。事实上,传统目标检测算法中的“图像金字塔”也可以理解为“特征金字塔”,HOG检测器和DPM都是在特征金字塔上进行检测的。值得一提的是,最近几年基于深度学习的目标检测算法,除了R-CNN之外,其余的也都利用了该加速思想。
除了特征图之外,积分图也是早期目标检测算法中常见的加速策略。利用积分图特征进行加速的思想前面在介绍VJ检测器已经介绍过,这里再进行一些更加深入的探讨。利用积分图进行算法加速的本质是利用了卷积操作的积分微分的可分离性[1]-[2]:
如果个g(x)'是稀疏的,那么利用该性质就可以加速计算。事实上,早在VJ检测器之前(1998年),LeCun等人就深入探讨过利用该性质对CNN进行过加速[39],并取得了10倍以上的加速效果。积分图后来也有被用于加速行人检测算法的HOG特征提取过程,在不损失精度的前提下取得了几十倍的加速效果[7][33]。
未完待续……
参考文献
[1] Viola P, Jones M. Rapid Object Detection Using a Boosted Cascade of SimpleFeatures [C]. IEEE Conference on Computer Vision and Pattern Recognitino, 2001,1:511.
[2] Viola P, Jones M J. Robust Real-Time Face Detection [J]. IEEEInternational Conference on Computer Vision 2004:747-747.
[3] Dalal N, Triggs B. Histograms of Oriented Gradients for Human Detection [C].IEEE Computer Society Conference on Computer Vision & Pattern Recognition.IEEE Computer Society, 2005:886-893.
[4] Turk M, Pentland A. Eigenfaces for recognition [J]. Journal of CognitiveNeuroscience, 1991, 3(1):71-86.
[5] Shotton J, Blake A, Cipolla R. Multiscale Categorical Object RecognitionUsing Contour Fragments [J]. IEEE Transactions on Pattern Analysis and MachineIntelligence, 2008, 30(7):1270-81.
[6] Opelt A, Pinz A, Zisserman A. A Boundary-Fragment-Model for ObjectDetection [C]. European Conference on Computer Vision 2006. Springer BerlinHeidelberg, 2006:575-588.
[7] Zhu Q, Yeh M C, Cheng K T, et al. Fast Human Detection Using a Cascadeof Histograms of Oriented Gradients [C]. IEEE Computer Society Conference onComputer Vision & Pattern Recognition. IEEE, 2006:1491-1498.
[8] Felzenszwalb P, Mcallester D, Ramanan D. A Discriminatively Trained, Multiscale,Deformable Part Model [C]. IEEE Computer Society Conference on Computer Vision &Pattern Recognition. 2008, 8::1-8.
[9] Felzenszwalb P F, Girshick R B, Mcallester D. Cascade Object Detection withDeformable Part Models [C]. IEEE Conference on Computer Vision & PatternRecognition. IEEE Computer Society, 2010:2241-2248.
[10] Forsyth D. Object Detection with Discriminatively Trained Part-BasedModels [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2010, 32(9):1627-45.
[11] Girshick R B, Felzenszwalb P F, Mcallester D. Object Detection withGrammar Models[J]. Nips, 2010, 33:442-450.
[12] Girshick R B. From Rigid Templates to Grammars: Object Detection with StructuredModels [J].A Dissertation Submitted to the Faculty of the Division of the PhysicalSciences, 2012.
[13] Girshick R, Iandola F, Darrell T, et al. Deformable Part Models Are ConvolutionalNeural Networks [J]. IEEE Conference on Computer Vision & PatternRecognition, 2015:437-446.
[14] Girshick R, Donahue J, Darrell T, et al. Rich Feature Hierarchies forAccurate Object Detection and Semantic Segmentation [C]. Computer Vision andPattern Recognition. IEEE, 2013:580-587.
[15] He K, Zhang X, Ren S, et al. Spatial Pyramid Pooling in DeepConvolutional Networks for Visual Recognition [J]. IEEE Transactions on PatternAnalysis and Machine Intelligence, 2015, 37(9):1904-16.
[16] Girshick R. Fast R-CNN [OL]. arXiv:1504.08083, 2015.
[17] Ren S, He K, Girshick R, et al. Faster R-CNN: Towards Real-Time ObjectDetection with Region Proposal Networks [OL]. arXiv:1506.01497, 2015.
[18] Redmon J, Divvala S, Girshick R, et al. You Only Look Once: Unified,Real-Time Object Detection [OL]. arXiv: 1506.02640, 2016.
[19] Krizhevsky A, Sutskever I, Hinton G E. ImageNet Classification with DeepConvolutional Neural Networks [J]. Advances in Neural Information ProcessingSystems, 25(2):2012.
[20] Dai J, Li Y, He K, et al. R-FCN: Object Detection via Region-based FullyConvolutional Networks [OL]. arXiv: 1605.06409, 2016.
[21] Hosang J, Benenson R, Dollar P, et al. What Makes for EffectiveDetection Proposals? [J]. IEEE Transactions on Pattern Analysis and MachineIntelligence, 2016, 38(4):814-830.
[22] Van d S K E A, Uijlings J R R, Gevers T, et al. Segmentation as SelectiveSearch for Object Recognition [C]. Proceedings IEEE International Conference onComputer Vision. 2011:1879-1886.
[23] Zitnick C L, Dollár P. Edge Boxes: Locating Object Proposals from Edges[C]. European Conference on Computer Vision, 2014:391-405.
[24] Cheng M M, Zhang Z, Lin W Y, et al. BING: Binarized Normed Gradients forObjectness Estimation at 300fps [J]. IEEE International Conference on ComputerVision 2014:3286-3293.
[25] Girshick R., Felzenszwalb P., and McAllester D. Discriminatively TrainedDeformable Part Models, release 5 [OL].http://www.cs.berkeley.edu/˜rbg/latent-v5/.
[26] Zeiler M D, Fergus R. Visualizing and Understanding ConvolutionalNetworks [J]. 2014, 8689:818-833.
[27] Simonyan K, Zisserman A. Very Deep Convolutional Networks forLarge-Scale Image Recognition [J]. Computer Science, 2014.
[28] Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector [OL].arXiv: 1512.02325, 2016.
[29] Lin T Y, Goyal P, Girshick R, et al. Focal Loss for Dense ObjectDetection [OL]. arXiv: 1708.02002, 2017.
[30] Vaillant R, Monrocq C, Cun Y L. An Original Approach for the Localizationof Objects in Images [C]. International Conference on Artificial NeuralNetworks. 1993:26-30.
[31] Lecun Y, Bottou L, Bengio Y, et al. Gradient-based Learning Applied to DocumentRecognition [J]. Proceedings of the IEEE, 1998, 86(11):2278-2324.
[32] Sermanet P, Eigen D, Zhang X, et al. OverFeat: Integrated Recognition,Localization and Detection using Convolutional Networks [C]. InternationalConference on Learning Representations, 2013.
[33] Benenson R, Mathias M, Timofte R, et al. Pedestrian Detection at 100 Framesper Second [C]. IEEE International Conference on Computer Vision2012:2903-2910.
[34] Alexe B, Deselaers T, Ferrari V. What is an Object? [C]. IEEEInternational Conference on Computer Vision and Pattern Recognition,2010:73-80.
[35] Ponttuset J, Arbelaez P, Barron J, et al. Multiscale CombinatorialGrouping for Image Segmentation and Object Proposal Generation [J]. IEEETransactions on Pattern Analysis and Machine Intelligence, 2015:1-1.
[36] Kong T, Yao A, Chen Y, et al. HyperNet: Towards Accurate Region ProposalGeneration and Joint Object Detection [C]. IEEE International Conference on ComputerVision and Pattern Recognition. 2016:845-853.
[37] Ghodrati A, Diba A, Pedersoli M, et al. DeepProposal: Hunting Objects byCascading Deep Convolutional Layers [C]. IEEE International Conference on ComputerVision and Pattern Recognition. 2015:2578-2586.
[38] Dollar P, Appel R, Belongie S, et al. Fast Feature Pyramids for ObjectDetection [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2014, 36(8):1532-45.
[39] Simard P Y, Bottou L, Haffner P, et al. Boxlets: A Fast Convolution Algorithmfor Signal Processing and Neural Networks [C]. Conference on Advances in NeuralInformation Processing Systems II. MIT Press, 1999:571-577.
[40] Yoo D, Park S, Lee J Y, et al. AttentionNet: Aggregating Weak Directionsfor Accurate Object Detection [J]. IEEE International Conference on ComputerVision. 2015:2659-2667.
[41] Gidaris S, Komodakis N. LocNet: Improving Localization Accuracy forObject Detection [C]. IEEE Conference on Computer Vision and PatternRecognition. 2016:789-798.