張澤苗,霍 歡,2,趙逢禹
1(上海理工大學(xué) 光電信息與計算機(jī)工程學(xué)院,上海 200093)2(復(fù)旦大學(xué) 上海市數(shù)據(jù)科學(xué)重點(diǎn)實(shí)驗(yàn)室,上海 201203) E-mail:zhangzemiao@126.com
信息技術(shù)和硬件的快速發(fā)展,極大地提高了計算機(jī)的計算能力,依托于巨大計算能力的深度學(xué)習(xí)[1]也由此引起了廣泛的研究.卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)在機(jī)器視覺領(lǐng)域得到廣泛的應(yīng)用并取得了巨大成功[2].目標(biāo)檢測[3]是圖像語義分割[4]、實(shí)例分割[5]、圖像標(biāo)注[6]和視頻理解[7]的基礎(chǔ),是進(jìn)行圖像場景識別、內(nèi)容理解等高級視覺任務(wù)的前提,對于構(gòu)建圖像檢索系統(tǒng)[8],人臉識別[9],物體識別,行人檢測[10],視頻監(jiān)控以及實(shí)現(xiàn)無人自動駕駛[11]等領(lǐng)域具有重大意義.廣義上的目標(biāo)檢測任務(wù)是指識別圖片中是否存在事先定義的類別目標(biāo)物體,如果存在,返回該類別目標(biāo)物體的空間位置以及空間范圍,一般使用矩形邊框進(jìn)行標(biāo)定[12],例如自然界中超過 1000個類別的目標(biāo)檢測.狹義上的目標(biāo)檢測是特指某個類別的目標(biāo)物體的檢測,如:人臉識別,行人檢測,車輛檢測等.目標(biāo)檢測算法最初利用人為構(gòu)造的人工幾何特征(如:尺度不變特征變換[13](Scale-invariant Feature Transform,SIFT)、方向梯直方圖[14](Histogram of Oriented Gradients,HOG)、哈爾特征[15](Haar)等,先提取圖像特征,然后使用分類器(如:支持向量機(jī),Support Vector Machine,SVM)進(jìn)行分類,訓(xùn)練完成分類之后進(jìn)行邊框修正,實(shí)現(xiàn)物體的檢測.視覺詞袋模型[16](Bags-of-Visual-Words,BoVW)和形變部件模型[17](Deformable Part Model,DPM)等充分利用上述人工幾何特征,效果得到提升.其中DPM模型是在深度學(xué)習(xí)模型出現(xiàn)之前最成功的模型,它將目標(biāo)對象建模成幾個部件的組合,先計算梯度直方圖,然后使用SVM訓(xùn)練得到物體的梯度模型,最后利用梯度模型完成檢測,連續(xù)多年贏得The Pascal Visual Object Classes Challenge(2008-2012)的比賽[18].然而使用人工構(gòu)造特征進(jìn)行檢測存在費(fèi)時,魯棒性差,檢測效果不理想的問題.2012年,Hinton[19]等人首次提出將深層卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks,DCNN)應(yīng)用在大規(guī)模圖像分類上,奠定了DCNN在機(jī)器視覺方面的應(yīng)用基礎(chǔ).2013年,DetectorNet[20]首次將DCNN應(yīng)用在目標(biāo)檢測上.同年,Girshick[21]等提出了基于候選區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(Region based CNN,R-CNN)目標(biāo)檢測模型,解決了人工特征構(gòu)造的問題,使用神經(jīng)網(wǎng)絡(luò)自動抽取特征,R-CNN首先產(chǎn)生目標(biāo)候選區(qū)域,然后再使用候選區(qū)域圖片完成后續(xù)檢測,在VOC 2012數(shù)據(jù)集上取得了53.3% mAP的成績,算法效果提升了30%的mAP.2014年,VGGNet[22]、GoogLeNet[23]分別取得了ILSVRC[12]2014 比賽亞軍和冠軍,進(jìn)一步促進(jìn)了DCNN在大規(guī)模圖像分類上的應(yīng)用.2015年,文獻(xiàn)[24]在R-CNN的基 礎(chǔ)上提出了Fast R-CNN模型,改善R-CNN的特征提取流程,利用RoI Pooling層實(shí)現(xiàn)了從先前所有候選區(qū)域的CNN特征提取到整張圖片的單次CNN特征提取,加快了檢測速度.同年,文獻(xiàn)[30]又在Fast R-CNN的基礎(chǔ)上提出了Faster R-CNN,使用區(qū)域候選網(wǎng)絡(luò)(Region Proposal Network,RPN)代替Selective Search[31]的方法,首次實(shí)現(xiàn)了包括區(qū)域提取在內(nèi)的端到端的目標(biāo)檢測網(wǎng)絡(luò),檢測速度達(dá)到了5fps,提升至原來的5倍,在VOC 2012數(shù)據(jù)集上檢測效果提升了10%.盡管Faster R-CNN進(jìn)一步提升了檢測速度和檢測效果,但是Faster R-CNN的速度仍然無法達(dá)到實(shí)時檢測.Redmon等人認(rèn)識到Faster R-CNN的RPN網(wǎng)絡(luò)需要進(jìn)行大量運(yùn)算,于是提出了YOLO[32]框架,首次提出了將目標(biāo)定位歸為回歸問題的框架,雖然檢測準(zhǔn)確率無法達(dá)到Faster R-CNN的檢測效果,但是檢測速度達(dá)到50fps.圖1按照時間順序給出了目標(biāo)檢測的發(fā)展歷程,包括特征表達(dá)(SIFT[13],Bag of Visual Words[16],HOG[14])、檢測框架(DPM[17]、OverFeat[25]、R-CNN[21]、VGGNet[22]、GoogLeNet[23]、 ResNet[27]等)以及公共數(shù)據(jù)集(The PASCAL VOC[33]、MS COCO[34]、ImageNet[12]).
圖1 目標(biāo)檢測主要發(fā)展歷程Fig.1 Key development of object detection
圖像分類是目標(biāo)檢測的基礎(chǔ),目標(biāo)檢測是在分類基礎(chǔ)上,實(shí)現(xiàn)圖像中的目標(biāo)定位,給出目標(biāo)的具體空間位置和邊界,因此圖像分類的發(fā)展也推動著目標(biāo)檢測的進(jìn)步.目標(biāo)檢測框架中需要對圖像進(jìn)行特征提取,圖像分類為目標(biāo)檢測框架提供了基本的特征提取卷積網(wǎng)絡(luò)骨架.在ILSVRC[12]比賽中,大量的優(yōu)秀的卷積神經(jīng)網(wǎng)絡(luò)框架相繼被提出,包括:AlexNet[19]、OverFeat[25]、VGGNet[22]、Inception v3[26]、ResNet[27]、DenseNet[28]以及SENet[29].深層卷積網(wǎng)絡(luò)的發(fā)展過程中,錯誤率逐步降低,從AlexNet的15.31%逐步降到SENet的2.3%,其中網(wǎng)絡(luò)層數(shù)總體趨勢為越來越多.由于網(wǎng)絡(luò)層數(shù)的增加,網(wǎng)絡(luò)參數(shù)相對應(yīng)增加,因此網(wǎng)絡(luò)參數(shù)壓縮的研究也相繼被提出,包括GoogLeNet的inception模塊,ResNet的殘差連接結(jié)構(gòu)等.Hinton等人提出的AlexNet首次將深層卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于大規(guī)模的圖像分類問題中,并在ILSVRC2012的測試集中實(shí)現(xiàn)了將15.315%的錯誤率,比第二名26.172%低11%左右,奠定了深層卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用在圖像分類的基礎(chǔ).Sermanet等人提出的OverFeat與AlexNet網(wǎng)絡(luò)結(jié)構(gòu)類似,使用了更小的滑動窗口步長和不同大小、數(shù)量的卷積核,首次將圖像分類與目標(biāo)定位、檢測結(jié)合起來實(shí)現(xiàn)效果的提升.Matthew D.Zeiler和Rob Fergus提出的ZFNet,調(diào)整了AlexNet的網(wǎng)絡(luò)結(jié)構(gòu),在第一層卷積層中使用了更小的卷積核以及在第一、二層卷積層中使用了更小的窗口滑動步長,通過卷積可視化進(jìn)行調(diào)整,探索了不同網(wǎng)絡(luò)結(jié)構(gòu)的分類效果.Karen Simonyan等人使用了3×3的卷積核加深了網(wǎng)絡(luò)深度,取得了更好的結(jié)果,改進(jìn)過后的網(wǎng)絡(luò)稱為VGGNet.Christian Szegedy等人前后相繼提出了GoogleNet,Inception v2和Inception v3使用了inception模塊去拼接不同大小卷積核產(chǎn)生的特征圖,使得網(wǎng)絡(luò)結(jié)構(gòu)變寬,而且參數(shù)急劇減小,引入批規(guī)范化(Batch Normalization,BN)加速網(wǎng)絡(luò)收斂,增加inception模塊數(shù)量從而加深網(wǎng)絡(luò)深度.2016年,Kaiming He等人發(fā)現(xiàn)在加深網(wǎng)絡(luò)層數(shù)的時候,網(wǎng)絡(luò)訓(xùn)練損失并不會下降,于是提出了殘差連接結(jié)構(gòu),在加深網(wǎng)絡(luò)深度的同時減少網(wǎng)絡(luò)參數(shù),提高了網(wǎng)絡(luò)的學(xué)習(xí)和擬合能力.2017年,Gao Huang等人通過設(shè)計稠密模塊(dense block)使得前向傳播中網(wǎng)絡(luò)層與其他網(wǎng)絡(luò)層都有連接,有效緩解了由于網(wǎng)絡(luò)深度過深導(dǎo)致的梯度消失問題,同時減少了網(wǎng)絡(luò)參數(shù).2018年,Jie Hu等人設(shè)計了提出Squeeze and Excitation模塊充分利用了圖像不同通道之間的關(guān)系,能夠通過額外很小的計算代價,改進(jìn)卷積神經(jīng)網(wǎng)絡(luò).
目標(biāo)檢測算法的涉及的評價指標(biāo)如下:
·檢測速度,幀每秒(Frames per second,fps):每秒鐘所能檢測的圖片的數(shù)量;
·IOU,intersection over union,實(shí)際邊框與邊框重疊部分與兩個邊框并集的比率.
(1)
其中,Bp為預(yù)測的位置邊框,Bg為物體實(shí)際的位置邊框,Bp∩Bg為Bp和Bg的交集的面積,Bp∪Bg為Bp和Bg的并集的面積.
·精確率,Precision,P
(2)
其中,TP為true positive,即正樣本中被預(yù)測正確的數(shù)量,FP為false positive,即負(fù)樣本被預(yù)測為正樣本的數(shù)量,一般IOU為0.5
·召回率,Recall,R
(3)
其中,FN為false negative,即正樣本被錯分為負(fù)樣本的數(shù)量.
·平均精確率,average precision,AP
(4)
其中,t為不同的IOU閾值下AOC曲線的召回率,如t=0.5時,只有當(dāng)預(yù)測的邊框與實(shí)際的邊框的IOU ≥ 0.5時,預(yù)測邊框才為正樣本.
·平均精確率均值,mean average precision,mAP,指的是所有類別的AP的均值
(5)
其中N為類別的數(shù)量.
目標(biāo)檢測的框架可分為以下兩類:
·基于候選區(qū)域(R-CNN)的深層卷積神經(jīng)網(wǎng)絡(luò)兩步驟框架
基于候選區(qū)域的深層卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測框架將目標(biāo)檢測分為兩步,先提取圖片中目標(biāo)可能存在的子區(qū)域,然后再將所有的子區(qū)域作為輸入,使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取,最后再進(jìn)行檢測分類和邊框回歸修正,其中包括R-CNN[21],SPPNet[35],Fast R-CNN[24],Faster R-CNN[30]、R-FCN[36]和Mask R-CNN[37]等.
·基于邊框回歸的單步驟單網(wǎng)絡(luò)框架
基于邊框回歸的單步驟單網(wǎng)絡(luò)框架是直接將邊框預(yù)測視為回歸預(yù)測,不再提前提取候選區(qū)域,原始圖像作為輸入,然后直接輸出預(yù)測結(jié)果,是一種真正意義上的端到端的單網(wǎng)絡(luò)框架,包括OverFeat[25],YOLO[32]以及SSD[38]等.
4.1.1 R-CNN
2014年,Grishick等人使用Selective Search[31]產(chǎn)生候選區(qū)域,然后將所有候選區(qū)域輸入到CNN中提取出特征圖,最后使用SVM對特征圖進(jìn)行分類,并使用線性回歸器對邊框預(yù)測進(jìn)行修正,在數(shù)據(jù)集VOC 2012上該方法比之前應(yīng)用DMP模型的方法提升了近30%的mAP,達(dá)到了53.5%的mAP.
如圖2所示,算法首先使用selective search算法,每張圖片產(chǎn)生2000個候選區(qū)域,然后縮放圖片到固定尺寸,輸入到CNN中進(jìn)行特征提取,接著使用SVM進(jìn)行分類判斷,最后再用線性回歸去修正所預(yù)測的邊框.
圖2 R-CNN流程Fig.2 Process of Fast R-CNN
R-CNN相對于之前的算法,在準(zhǔn)確率方面得到了明顯了提升,但是R-CNN中候選區(qū)域提取、卷積網(wǎng)絡(luò)特征提取,SVM分類以及回歸器邊框修正都是分開進(jìn)行操作,既耗時也無法共享參數(shù)和統(tǒng)一網(wǎng)絡(luò)損失.
4.1.2 Fast-CNN
R-CNN相對于傳統(tǒng)的DPM模型,檢測效果提升明顯,但是R-CNN需要對所有的候選區(qū)域都進(jìn)行特征提取,同時還需單獨(dú)保存到磁盤,且候選區(qū)域提取、卷積網(wǎng)絡(luò)特征提取、SVM分類以及回歸器邊框修正都是分開進(jìn)行操作,不僅費(fèi)時還浪費(fèi)存儲空間.2015年,Grishick等人對R-CNN進(jìn)行了改進(jìn),提出Fast R-CNN[24],Fast R-CNN參考了SPPNet[35]的做法,使用RoI pooling層對候選區(qū)域進(jìn)行映射,因此目標(biāo)檢測框架只需對整張圖片進(jìn)行單次CNN特征提取即可,CNN特征提取次數(shù)從之前的2000次優(yōu)化為一次,極大提高了檢測速度,使用了金字塔池化的做法實(shí)現(xiàn)了處理不同大小的圖像,同時Fast R-CNN還使用softmax層以及線性回歸層代替R-CNN的SVM和單獨(dú)的線性回歸器,在忽略候選區(qū)域提取的步驟下,首次實(shí)現(xiàn)了端到端的目標(biāo)檢測框架.相比于R-CNN和SPPNet,Faste R-CNN檢測速度提升了10倍,圖3給出了Fast R-CNN的算法示意圖.
圖3 Fast R-CNN流程Fig.3 Process of Fast R-CNN
4.1.3 Faster R-CNN
2015年,Ren等人提出的Faster R-CNN[30]解決了候選區(qū)域提取的瓶頸問題,提出了用候選區(qū)域生成網(wǎng)絡(luò)(Region Proposal Network,RPN)替代R-CNN和SPPNet所使用的Selective Search,實(shí)現(xiàn)了RPN和CNN的損失值統(tǒng)一,降低訓(xùn)練難度,進(jìn)一步提升了檢測效率.同時提出的anchor box概念,解決了同個位置多個目標(biāo)檢測的問題,圖4給出了Faster R-CNN的流程.
4.1.4 RFCN
基于候選區(qū)域的深層卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測框架包括候選區(qū)域提取網(wǎng)絡(luò)和特征提取的卷積網(wǎng)絡(luò),盡管Faster R-CNN 相對于Fast R-CNN在檢測速度上提高一個數(shù)量級,Faster R-CNN的網(wǎng)絡(luò)中仍然需要對圖像中每個子區(qū)域進(jìn)行處
圖4 Faster R-CNN流程Fig.4 Process of Faster R-CNN
理,無法實(shí)現(xiàn)候選區(qū)域提取網(wǎng)絡(luò)和特征提取的卷積網(wǎng)絡(luò)的權(quán)值共享.文獻(xiàn)[36]提出了基于區(qū)域的全卷積神經(jīng)網(wǎng)絡(luò)(Region based Fully Convolutional Network,R-FCN),利用位置感知得分圖(position-sensitive score maps)來解決圖像變形在圖像分類任務(wù)中屬于一致而在目標(biāo)檢測任務(wù)中不一致的問題,如圖5所示.R-FCN使用卷積網(wǎng)絡(luò)替代池化和全連接層,實(shí)現(xiàn)幾乎所有網(wǎng)絡(luò)層的計算共享,最終實(shí)現(xiàn)每張圖耗時170ms,比faster r-cnn快2.5~20倍.
圖5 R-FCN流程Fig.5 Process of R-FCN
4.1.5 Mask R-CNN
實(shí)例分割跟目標(biāo)檢測密不可分,實(shí)例分割不僅要求能準(zhǔn)確識別所有目標(biāo),還需要分割出單個實(shí)例,這兩個任務(wù)通常被認(rèn)為是獨(dú)立的,因此容易因?yàn)閷?shí)例重疊而產(chǎn)生虛假邊緣和系統(tǒng)誤差.文獻(xiàn)[37]提出了Mask R-CNN,在Faster R-CNN的基礎(chǔ)上增加了像素級別的實(shí)例分割遮罩分支,在進(jìn)行目標(biāo)檢測的同時實(shí)現(xiàn)實(shí)例分割,統(tǒng)一網(wǎng)絡(luò)損失.Mask R-CNN相對于Faster R-CNN而言只增加了很小的計算代價利用實(shí)例分割遮罩能為目標(biāo)檢測任務(wù)提供補(bǔ)充信息.Mask R-CNN易于實(shí)現(xiàn),具有很好的實(shí)例分割和對象檢測結(jié)果,只需要極小的修改便可應(yīng)用到其他相關(guān)任務(wù),圖6展示了Mask R-CNN的框架結(jié)構(gòu).
4.2.1 YOLO
YOLO(You Only Look Once)[32]重新定義目標(biāo)檢測為圖像空間邊框回歸以及類別概率預(yù)測問題.如圖7所示,YOLO框架中只有單個網(wǎng)絡(luò),輸入整張圖片,每張圖片分為N個方格,經(jīng)過CNN的特征提取,然后使用softmax分類器以及線性回歸器,輸出目標(biāo)檢測結(jié)果.由于YOLO框架中只有單個網(wǎng)絡(luò),不需要提取候選區(qū)域,YOLO框架的計算量極大減少.相對于Faster R-CNN,YOLO犧牲了較小的準(zhǔn)確率,但是檢測速度卻得到了極大的提升.實(shí)時檢測速度達(dá)到50fps,而Faster R-CNN只有5fps.
圖6 Mask R-CNN流程Fig.6 Process of Mask R-CNN
4.2.2 SSD
為了達(dá)到實(shí)時檢測的速度同時又不過于損失檢測準(zhǔn)確率,Liu等人提出了SSD[38](Single Shot MultiBox Detector)模型,該模型比YOLO更加快速,同時檢測準(zhǔn)確率也有所提升,
圖7 YOLO算法流程Fig.7 Process of YOLO
解決了YOLO中對于小物體檢測精度過低的問題.如圖8所示,SSD結(jié)合了YOLO和Faster R-CNN anchor box機(jī)制,SSD中使用了不同大小的多個卷積核,綜合利用了不同卷積層輸出的特征圖.與YOLO不同的是,SSD為每個類別都提前規(guī)定了不同比例的邊框模板,輸出的時候每個目標(biāo)都輸出多個比例的邊框以及置信度.
圖8 SSD算法流程Fig.8 Process of SSD
近幾年來,目標(biāo)檢測在基于候選區(qū)域的深層卷積神經(jīng)網(wǎng)絡(luò)兩步驟框架和基于邊框回歸的單步驟單網(wǎng)絡(luò)框架都有研究進(jìn)展,其中特征表達(dá)和抽取增強(qiáng)[39]、網(wǎng)絡(luò)結(jié)構(gòu)改進(jìn)(如:Dilated Residual Networks[40],Xception[41],DetNet[42]以及Dual Path Networks(DPN)[43])以及語境信息[44-46]的結(jié)合是研究發(fā)展的重點(diǎn),訓(xùn)練過程的處理優(yōu)化也影響著目標(biāo)檢測的性能[47,48].基于SSD改進(jìn)的目標(biāo)檢測算法有DSOD[49],RFB Net[50],STDN[51],而基于Faster R-CNN改進(jìn)的目標(biāo)檢測算法有Mask-RCNN[37],HyperNet[52],FPN[53],ZIP[54],RefineNet[55],ORN[56],Megdet[47].
在基于Faster R-CNN的改進(jìn)框架中,目標(biāo)特征的構(gòu)造和使用對于檢測效果影響顯著,2016年,Tao Kong[52]等人提出了HyperNet,該網(wǎng)絡(luò)結(jié)構(gòu)使用VGG16作為DCNN的骨架,結(jié)合前層,中層以及深層的特征構(gòu)造混合特征圖,將混合特征圖同時用于候選區(qū)域提取以及目標(biāo)檢測,在VOC12上實(shí)現(xiàn)了71.4%的mAP(IoU=0.5).2017年,Liu Tsung-Yi[53]等人利用DCNN不同尺寸的不同層的特征圖構(gòu)建特征金字塔,該方法對于檢測效果提升十分明顯,表明特征金字塔對于通用目標(biāo)檢測具有重大作用,在COCO上實(shí)現(xiàn)了59.1的mAP(IoU=0.5).同年,Liu Hongyang[54]等提出了特征圖權(quán)值注意力判別單元,利用單元產(chǎn)生候選區(qū)域,使得檢測更加高效.2018年,Zhang Shifeng[55]等人提出了RefineDet,提出了anchor優(yōu)化模塊以及目標(biāo)檢測模塊,并將兩個模塊互連,anchor優(yōu)化模塊為目標(biāo)檢測模塊提供更少以及更準(zhǔn)確的anchor,實(shí)現(xiàn)了準(zhǔn)確率和效率同時提升,在COCO數(shù)據(jù)集上達(dá)到了62.9%的mAP(Iou=0.5).
在基于SSD的改進(jìn)網(wǎng)絡(luò)框架中,檢測性能高效是SSD框架的優(yōu)點(diǎn),如何進(jìn)一步提升效率以及在不影響效率的情況下提升檢測效果是研究的熱點(diǎn).2017年,Shen Zhiqiang[49]等人結(jié)合了SSD和DenseNet的優(yōu)點(diǎn),在沒有進(jìn)行預(yù)訓(xùn)練的基礎(chǔ)上也能達(dá)到比較好的結(jié)果,且網(wǎng)絡(luò)參數(shù)少于SSD以及Faster R-CNN,解決了目標(biāo)檢測重度依賴于預(yù)訓(xùn)練以及遷移學(xué)習(xí)的問題.DSOD以DenseNet為骨架,在IoU=0.5的情況下,實(shí)現(xiàn)了VOC12的mAP為72.2%,COCO的mAP為47.3%的檢測效果.2018年,Liu Songtao[50]等人提出了RFB(Receptive Field Block)模塊增強(qiáng)輕量化網(wǎng)絡(luò)的特征表達(dá),實(shí)現(xiàn)了又快又準(zhǔn)的檢測效果,在同樣是以VGG16為骨架的情況下,VOC12數(shù)據(jù)集的mAP達(dá)到81.2%,COCO數(shù)據(jù)集的mAP則為55.7%(IoU=0.5).同年,Zhou Peng等[51]在DenseNet169的結(jié)構(gòu)上加入了尺寸變化模塊,擴(kuò)展了特征圖的寬帶和高度,實(shí)驗(yàn)表明修改過后的特征圖能夠使檢測器不受目標(biāo)比例的影響,改善檢測效果.
數(shù)據(jù)集對于有監(jiān)督學(xué)習(xí)算法十分重要,對于目標(biāo)檢測而言,適用性強(qiáng)的數(shù)據(jù)集不僅能為算法提供性能測試和算法評估,同時也推動著目標(biāo)檢測研究領(lǐng)域的發(fā)展.目前與目標(biāo)檢測以及圖像分類相關(guān)的典型數(shù)據(jù)集有:MNIST,ImageNet[12],Caltech101,Caltech256,PASCAL VOC(2007,2012)[18],Tiny Images,SUN[57],Microsoft COCO[34]以及Open Images(1)Karin I, Duerig T, Alldrin N, et al. Openimages: A public dataset for large-scale multi-label and multi-class image classification. Dataset available from https://github.ocm/openimages, 2017.,其中Microsoft COCO和Open Images為目標(biāo)檢測中最重要的數(shù)據(jù)集.表1給出了不同數(shù)據(jù)集的概況.由于人工標(biāo)注成本高昂,目標(biāo)檢測數(shù)據(jù)庫更新緩慢且大部分?jǐn)?shù)據(jù)集規(guī)模較小,無法反映現(xiàn)實(shí)生活中復(fù)雜的情景和物體之間的關(guān)系.Microsoft COCO是2014年微軟為更好地反映現(xiàn)實(shí)生活中物體與物體、環(huán)境相互之間情景關(guān)系理解所發(fā)布的數(shù)據(jù)集,該數(shù)據(jù)不僅提供了更為復(fù)雜的情景圖片,單張圖片包含更多物體,同時也提供了語義分割的數(shù)據(jù)集,極大推動了目標(biāo)檢測的研究.但是隨著目標(biāo)檢測算法的發(fā)展,該數(shù)據(jù)集規(guī)模已無法滿足通用目標(biāo)檢測的算法的需求.Open Images包含900萬張標(biāo)注圖片和邊框信息,是現(xiàn)存最大的數(shù)據(jù)集,圖像大小不一,且單張圖像為包含多個目標(biāo)的復(fù)雜場景,相比于Microsoft COCO,Open Images規(guī)模更大,圖片中情景情況更為復(fù)雜.總體上,數(shù)據(jù)集的發(fā)展逐步趨向于大規(guī)模,圖像質(zhì)量也越來越好,更加注重來自自然生活的復(fù)雜情景,包含更多的語境和情景信息,為監(jiān)督學(xué)習(xí)提供大量優(yōu)質(zhì)訓(xùn)練數(shù)據(jù)集,提升模型泛化能力,為未來研究方向奠定基礎(chǔ).
目標(biāo)檢測是機(jī)器視覺領(lǐng)域的一個重要組成部分,應(yīng)用在多個方面,如:自動駕駛,人臉識別等,與人們的生活息息相關(guān).從傳統(tǒng)的人工特征構(gòu)造應(yīng)用DPM模型到基于深層卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測框架,目標(biāo)檢測取得了極大的發(fā)展.自深層卷積網(wǎng)絡(luò)應(yīng)用于目標(biāo)檢測以來,目標(biāo)檢測主要致力于提升目標(biāo)檢測的效果以及效率,在圖像特征表示以及網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)化方面都有發(fā)展,基于R-CNN的框架相對于基于邊框回歸的單步驟框架而言,前者準(zhǔn)確率更高,但更加耗時,而后者由于不需要提前對候選邊框進(jìn)行提取,因此效率更高,但是準(zhǔn)確率比基于R-CNN的框架低.近年來目標(biāo)檢測的研究主要集中在特征表達(dá)增強(qiáng)上,相繼提出了混合特征圖、特征金字塔以及特征注意力單元等,取得了較好的研究成果.目標(biāo)檢測算法準(zhǔn)確率和效率之間的平衡[58]、語境信息的結(jié)合等也是研究的重點(diǎn).
盡管近年來目標(biāo)檢測研究領(lǐng)域取得了極大的進(jìn)步,目標(biāo)檢測距離實(shí)現(xiàn)達(dá)到人類檢測識別水平仍然需要開展大量研究工作,未來的研究方向可以考慮以下幾個方面:
·減少數(shù)據(jù)依賴性:目前目標(biāo)檢測算法均為有監(jiān)督學(xué)習(xí),無法檢測未訓(xùn)練過的目標(biāo),極大依賴訓(xùn)練數(shù)據(jù).訓(xùn)練數(shù)據(jù)集的多樣性和大小影響著目標(biāo)檢測的效果.減少數(shù)據(jù)依賴性,通過將有監(jiān)督學(xué)習(xí)轉(zhuǎn)化為半監(jiān)督或無監(jiān)督學(xué)習(xí),增強(qiáng)算法的泛化能力,提升模型應(yīng)用能力,減少數(shù)據(jù)依賴性是目標(biāo)檢測算法的重要發(fā)展方向.
·結(jié)合知識圖譜:知識圖譜是用來描述真實(shí)世界中存在的各種實(shí)體和概念,以及他們之間的強(qiáng)、弱關(guān)系,對于數(shù)據(jù)實(shí)體具有強(qiáng)大的描述能力.對于圖像而言,圖像中的多個目標(biāo)之間也會存在依存關(guān)系,如:人包括頭、手、腳和身體等,目標(biāo)檢測結(jié)合知識圖譜,能夠提升多目標(biāo)檢測之間依存關(guān)系,增加檢測的語境信息,能更好地描述圖像中的目標(biāo)實(shí)體關(guān)系,提升檢測效果,文獻(xiàn)[59]提出了知識感知的目標(biāo)檢測框架,提出并定義了知識圖譜中的語義一致性,并將其應(yīng)用到現(xiàn)有目標(biāo)檢測算法當(dāng)中.實(shí)驗(yàn)表明,基于知識感知的目標(biāo)檢測框架能夠改善目標(biāo)檢測的效果.
·結(jié)合語境信息:圖像中的物體相互之間并非獨(dú)立,存在著相互依存關(guān)系,且物體與場景類別也相互依存,如書架與書,書房與書架之間的關(guān)系,綜合利用物體與物體和場景相互之間的具體語境信息,有利于提升物體的特征表達(dá)能力,對于提升檢測效果和檢測速度有重大意義.
表1 數(shù)據(jù)集比較
Table 1 Comparison of datasets
數(shù)據(jù)集圖像總量類別數(shù)圖像數(shù)量/類目標(biāo)數(shù)/張圖像尺寸起始年份包含復(fù)雜情景數(shù)據(jù)集用途圖像分類場景識別目標(biāo)檢測語義分割MNIST6萬101128×281998Caltech101914610140~8001300×2002004Caltech25630607256至少801300×2002007Scenes15448515200~400-256×2562006Tiny Images8000萬53464--32×322006PASACAL VOC(2012)1154020303~40872.4470×3802005SUN131072908-16.8500×3002010ImageNet1419712221841-1.5500×4002009Microsoft COCO32800091-7.3640×4802014是Places1000萬以上434--256×2562014Open Images900萬以上6000以上-8.4不同大小2017是
本文在對目標(biāo)檢測算法廣泛研究的基礎(chǔ)上,旨在介紹自深層卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用以來目標(biāo)檢測的研究發(fā)展情況.首先介紹了目標(biāo)檢測算法中基礎(chǔ)任務(wù)圖像分類的進(jìn)展,目標(biāo)檢測評測指標(biāo),然后詳細(xì)介紹了目前兩大類框架,基于候選區(qū)域的深層卷積神經(jīng)網(wǎng)絡(luò)兩步驟框架和基于邊框回歸的單步驟單網(wǎng)絡(luò)框架.然后闡述了近年來目標(biāo)檢測算法的發(fā)展,結(jié)合數(shù)據(jù)集介紹了目標(biāo)檢測算法的研究趨勢,最后展望了目標(biāo)檢測未來的發(fā)展和研究方向.