国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
綜述:目標檢測二十年(2001-2021)
作者丨派派星
來源丨CVHub
編輯丨極市平臺

極市導(dǎo)讀

 

目標檢測領(lǐng)域發(fā)展至今已有二十余載,本文將對目標檢測領(lǐng)域近20年的發(fā)展做一次系統(tǒng)性的介紹,并為目標檢測構(gòu)建一個完整的知識體系架構(gòu)。 

引言

目標檢測領(lǐng)域發(fā)展至今已有二十余載,從早期的傳統(tǒng)方法到如今的深度學習方法,精度越來越高的同時速度也越來越快,這得益于深度學習等相關(guān)技術(shù)的不斷發(fā)展。本文將對目標檢測領(lǐng)域的發(fā)展做一個系統(tǒng)性的介紹,旨在為讀者構(gòu)建一個完整的知識體系架構(gòu),同時了解目標檢測相關(guān)的技術(shù)棧及其未來的發(fā)展趨勢。由于編者水平有限,本文若有不當之處還請指出與糾正,歡迎大家評論交流!

本文將從以下九大方面進行展開:

  1. 背景
  2. 目標檢測算法發(fā)展脈絡(luò)
  3. 目標檢測常用數(shù)據(jù)集及評價指標
  4. 目標檢測任務(wù)普遍存在的六大難點與挑戰(zhàn)
  5. 目標檢測的五大技術(shù)及其演變
  6. 目標檢測模型的加速技術(shù)
  7. 提高目標檢測模型精度的五大技術(shù)
  8. 目標檢測的五大應(yīng)用場景
  9. 目標檢測未來發(fā)展的七大趨勢

由于篇幅較長,本文已整理成PDF,方便大家在必要時查閱,在極市平臺公眾號后臺回復(fù)'目標檢測綜述'即可領(lǐng)取收藏。

1. 背景

目標檢測任務(wù)是找出圖像或視頻中人們感興趣的物體,并同時檢測出它們的位置和大小。不同于圖像分類任務(wù),目標檢測不僅要解決分類問題,還要解決定位問題,是屬于Multi-Task的問題。如下圖1-1所示:

圖1-1.目標檢測示例

作為計算機視覺的基本問題之一,目標檢測構(gòu)成了許多其它視覺任務(wù)的基礎(chǔ),例如實例分割,圖像標注和目標跟蹤等等;從檢測應(yīng)用的角度看:行人檢測、面部檢測、文本檢測、交通標注與紅綠燈檢測,遙感目標檢測統(tǒng)稱為目標檢測的五大應(yīng)用。

2. 目標檢測發(fā)展脈絡(luò)

目標檢測的發(fā)展脈絡(luò)可以劃分為兩個周期:傳統(tǒng)目標檢測算法時期(1998年-2014年)和基于深度學習的目標檢測算法時期(2014年-至今)。而基于深度學習的目標檢測算法又發(fā)展成了兩條技術(shù)路線:Anchor based方法(一階段,二階段)和Anchor free方法。下圖2-1展示了從2001年至2021年目標檢測領(lǐng)域中,目標檢測發(fā)展路線圖。

圖2-1.Object Detection Milestones

2.1 傳統(tǒng)目標檢測算法

不同于現(xiàn)在的卷積神經(jīng)網(wǎng)絡(luò)可以自動提取高效特征進行圖像表示,以往的傳統(tǒng)目標檢測算法主要基于手工提取特征。傳統(tǒng)檢測算法流程可概括如下:

  1. 選取感興趣區(qū)域,選取可能包含物體的區(qū)域
  2. 對可能包含物體的區(qū)域進行特征提取
  3. 對提取的特征進行檢測分類

2.1.1 Viola Jones Detector

VJ[1] (Viola Jones)檢測器采用滑動窗口的方式以檢查目標是否存在窗口之中,該檢測器看起來似乎很簡單穩(wěn)定,但由于計算量龐大導(dǎo)致時間復(fù)雜度極高,為了解決該項問題,檢測器通過合并三項技術(shù)極大提高了檢測速度,這三項技術(shù)分別是:1)特征的快速計算方法-積分圖,2)有效的分類器學習方法-AdaBoost,以及3)高效的分類策略-級聯(lián)結(jié)構(gòu)的設(shè)計。

2.1.2 HOG Detector

HOG[2](Histogram of Oriented Gradients)檢測器于2005年提出,是當時尺度特征不變性(Scale Invariant Feature Transform)和形狀上下文(Shape Contexts)的重要改進,為了平衡特征不變性(包括平移,尺度,光照等)和非線性(區(qū)分不同的對象類別),通過在均勻間隔單元的密集網(wǎng)格上計算重疊的局部對比度歸一化來提高檢測準確性,因此檢測器是基于本地像素塊進行特征直方圖提取的一種算法,它在目標局部變形和受光照影響下都有很好的穩(wěn)定性。為后期很多檢測方法奠定了重要基礎(chǔ),相關(guān)技術(shù)被廣泛應(yīng)用于計算機視覺各大應(yīng)用。

2.1.3 DPM Detector

作為VOC 2007-2009目標檢測挑戰(zhàn)賽的冠軍,DPM[3] (Deformable Parts Model)是目標檢測傳統(tǒng)算法中當之無愧的SOTA(State Of The Art)算法。于2008年提出,相比于,作了很多改進,因此該算法可以看作的延申算法。算法由一個主過濾器(Root-filter)和多個輔過濾器(Part-filters)組成,通過硬負挖掘(Hard negative mining),邊框回歸(Bounding box regression)和上下文啟動(Context priming)技術(shù)改進檢測精度。作為傳統(tǒng)目標檢測算法的SOTA,方法運算速度快,能夠適應(yīng)物體形變,但它無法適應(yīng)大幅度的旋轉(zhuǎn),因此穩(wěn)定性差。

2.1.4 局限性

基于手工提取特征的傳統(tǒng)目標檢測算法主要有以下三個缺點:

  1. 識別效果不夠好,準確率不高
  2. 計算量較大,運算速度慢
  3. 可能產(chǎn)生多個正確識別的結(jié)果

2.2 Anchor-Based中的Two-stage目標檢測算法

基于手工提取特征的傳統(tǒng)目標檢測算法進展緩慢,性能低下。直到2012年卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNNs)的興起將目標檢測領(lǐng)域推向了新的臺階?;贑NNs的目標檢測算法主要有兩條技術(shù)發(fā)展路線:anchor-based和anchor-free方法,而anchor-based方法則包括一階段和二階段檢測算法(二階段目標檢測算法一般比一階段精度要高,但一階段檢測算法速度會更快)。

二階段檢測算法主要分為以下兩個階段
Stage1:從圖像中生成region proposals
Stage2:從region proposals生成最終的物體邊框。

2.2.1 RCNN

> 論文鏈接:https://openaccess.thecvf.com/content\_cvpr\_2014/papers/Girshick\_Rich\_Feature\_Hierarchies\_2014\_CVPR\_paper.pdf
> 代碼鏈接:https://github.com/rbgirshick/rcnn

【簡介】 RCNN[4] 由Ross Girshick于2014年提出,RCNN首先通過選擇性搜索算法Selective Search從一組對象候選框中選擇可能出現(xiàn)的對象框,然后將這些選擇出來的對象框中的圖像resize到某一固定尺寸的圖像,并喂入到CNN模型(經(jīng)過在ImageNet數(shù)據(jù)集上訓(xùn)練過的CNN模型,如AlexNet)提取特征,最后將提取出的特征送入到分類器來預(yù)測該對象框中的圖像是否存在待檢測目標,并進一步預(yù)測該檢測目標具體屬于哪一類。

【性能】 RCNN算法在VOC-07數(shù)據(jù)集上取得了非常顯著的效果,平均精度由33.7%(DPM-V5, 傳統(tǒng)檢測的SOTA算法)提升到58.5%。相比于傳統(tǒng)檢測算法,基于深度學習的檢測算法在精度上取得了質(zhì)的飛躍。

【不足】 雖然RCNN算法取得了很大進展,但缺點也很明顯:重疊框(一張圖片大2000多個候選框)特征的冗余計算使得整個網(wǎng)絡(luò)的檢測速度變得很慢(使用GPU的情況下檢測一張圖片大約需要14S)。

為了減少大量重疊框帶來的冗余計算,K. He等人提出了SPPNet。

2.2.2 SPPNet

> 論文鏈接:https://link.springer.com/content/pdf/10.1007/978-3-319-10578-9\_23.pdf
> 代碼鏈接:https://github.com/yueruchen/sppnet-pytorch

【簡介】 SPPNet[5] 提出了一種空間金字塔池化層(Spatial Pyramid Pooling Layer, SPP)。它的主要思路是對于一副圖像分成若干尺度的圖像塊(比如一副圖像分成1份,4份,8份等),然后對每一塊提取的特征融合在一起,從而兼顧多個尺度的特征。SPP使得網(wǎng)絡(luò)在全連接層之前能生成固定尺度的特征表示,而不管輸入圖片尺寸如何。當使用SPPNet網(wǎng)絡(luò)用于目標檢測時,整個圖像只需計算一次即可生成相應(yīng)特征圖,不管候選框尺寸如何,經(jīng)過SPP之后,都能生成固定尺寸的特征表示圖,這避免了卷積特征圖的重復(fù)計算。

【性能】 相比于RCNN算法,SPPNet在Pascal-07數(shù)據(jù)集上不犧牲檢測精度(VOC-07, mAP=59.2%)的情況下,推理速度提高了20多倍。

【不足】 和RCNN一樣,SPP也需要訓(xùn)練CNN提取特征,然后訓(xùn)練SVM分類這些特征,這需要巨大的存儲空間,并且多階段訓(xùn)練的流程也很繁雜。除此之外,SPPNet只對全連接層進行微調(diào),而忽略了網(wǎng)絡(luò)其它層的參數(shù)。

為了解決以上存在的一些不足,2015年R. Girshick等人提出Fast RCNN

2.2.3 Fast RCNN

> 論文鏈接:https://openaccess.thecvf.com/content\_iccv\_2015/papers/Girshick\_Fast\_R-CNN\_ICCV\_2015\_paper.pdf
> 代碼鏈接:https://github.com/rbgirshick/fast-rcnn

【簡介】 Fast RCNN[6] 網(wǎng)絡(luò)是RCNN和SPPNet的改進版,該網(wǎng)路使得我們可以在相同的網(wǎng)絡(luò)配置下同時訓(xùn)練一個檢測器和邊框回歸器。該網(wǎng)絡(luò)首先輸入圖像,圖像被傳遞到CNN中提取特征,并返回感興趣的區(qū)域ROI,之后再ROI上運用ROI池化層以保證每個區(qū)域的尺寸相同,最后這些區(qū)域的特征被傳遞到全連接層的網(wǎng)絡(luò)中進行分類,并用Softmax和線性回歸層同時返回邊界框。

【性能】 Fast RCNN在VOC-07數(shù)據(jù)集上將檢測精度mAP從58.5%提高到70.0%,檢測速度比RCNN提高了200倍。

【不足】 Fast RCNN仍然選用選擇性搜索算法來尋找感興趣的區(qū)域,這一過程通常較慢,與RCNN不同的是,F(xiàn)ast RCNN處理一張圖片大約需要2秒,但是在大型真實數(shù)據(jù)集上,這種速度仍然不夠理想。

那么問題來了: “我們可以使用CNN模型來直接生成候選框嗎?”,基于此,F(xiàn)aster RCNN的提出完美回答這一問題。

2.2.4 Faster RCNN

> 論文鏈接:https://arxiv.org/pdf/1506.01497.pdf
> 代碼鏈接:https://github.com/jwyang/faster-rcnn.pytorch

【簡介】 Faster RCNN[7] 是第一個端到端,最接近于實時性能的深度學習檢測算法,該網(wǎng)絡(luò)的主要創(chuàng)新點就是提出了區(qū)域選擇網(wǎng)絡(luò)用于申城候選框,能幾大提升檢測框的生成速度。該網(wǎng)絡(luò)首先輸入圖像到卷積網(wǎng)絡(luò)中,生成該圖像的特征映射。在特征映射上應(yīng)用Region Proposal Network,返回object proposals和相應(yīng)分數(shù)。應(yīng)用Rol池化層,將所有proposals修正到同樣尺寸。最后,將proposals傳遞到完全連接層,生成目標物體的邊界框。

【性能】 該網(wǎng)絡(luò)在當時VOC-07,VOC-12和COCO數(shù)據(jù)集上實現(xiàn)了SOTA精度,其中COCO mAP@.5=42.7%, COCO mAP@[.5,.95]=21.9%, VOC07 mAP=73.2%, VOC12 mAP=70.4%, 17fps with ZFNet

【不足】 雖然Faster RCNN的精度更高,速度更快,也非常接近于實時性能,但它在后續(xù)的檢測階段中仍存在一些計算冗余;除此之外,如果IOU閾值設(shè)置的低,會引起噪聲檢測的問題,如果IOU設(shè)置的高,則會引起過擬合。

2.2.5 FPN

> 論文鏈接:http://openaccess.thecvf.com/content\_cvpr\_2017/papers/Lin\_Feature\_Pyramid\_Networks\_CVPR\_2017\_paper.pdf
> 代碼鏈接:https://github.com/jwyang/fpn.pytorch

【簡介】 2017年,T.-Y.Lin等人在Faster RCNN的基礎(chǔ)上進一步提出了特征金字塔網(wǎng)絡(luò)FPN[8](Feature Pyramid Networks)技術(shù)。在FPN技術(shù)出現(xiàn)之前,大多數(shù)檢測算法的檢測頭都位于網(wǎng)絡(luò)的最頂層(最深層),雖說最深層的特征具備更豐富的語義信息,更有利于物體分類,但更深層的特征圖由于空間信息的缺乏不利于物體定位,這大大影響了目標檢測的定位精度。為了解決這一矛盾,F(xiàn)PN提出了一種具有橫向連接的自上而下的網(wǎng)絡(luò)架構(gòu),用于在所有具有不同尺度的高底層都構(gòu)筑出高級語義信息。FPN的提出極大促進了檢測網(wǎng)絡(luò)精度的提高(尤其是對于一些待檢測物體尺度變化大的數(shù)據(jù)集有非常明顯的效果)。

【性能】 將FPN技術(shù)應(yīng)用于Faster RCNN網(wǎng)絡(luò)之后,網(wǎng)絡(luò)的檢測精度得到了巨大提高(COCO mAP@.5=59.1%, COCO mAP@[.5,.95]=36.2%),再次成為當前的SOTA檢測算法。此后FPN成為了各大網(wǎng)絡(luò)(分類,檢測與分割)提高精度最重要的技術(shù)之一。

2.2.6 Cascade RCNN

> 論文鏈接:https://openaccess.thecvf.com/content\_cvpr\_2018/papers/Cai\_Cascade\_R-CNN\_Delving\_CVPR\_2018\_paper.pdf
> 代碼鏈接:https://github.com/zhaoweicai/cascade-rcnn

【簡介】 Faster RCNN完成了對目標候選框的兩次預(yù)測,其中RPN一次,后面的檢測器一次,而Cascade RCNN[9] 則更進一步將后面檢測器部分堆疊了幾個級聯(lián)模塊,并采用不同的IOU閾值訓(xùn)練,這種級聯(lián)版的Faster RCNN就是Cascade RCNN。通過提升IoU閾值訓(xùn)練級聯(lián)檢測器,可以使得檢測器的定位精度更高,在更為嚴格的IoU閾值評估下,Cascade R-CNN帶來的性能提升更為明顯。Cascade RCNN將二階段目標檢測算法的精度提升到了新的高度。

【性能】 Cascade RCNN在COCO檢測數(shù)據(jù)集上,不添加任何Trick即可超過現(xiàn)有的SOTA單階段檢測器,此外使用任何基于RCNN的二階段檢測器來構(gòu)建Cascade RCNN,mAP平均可以提高2-4個百分點。

2.3 Anchor-based中的one-stage目標檢測算法

一階段目標檢測算法不需要region proposal階段,直接產(chǎn)生物體的類別概率和位置坐標值,經(jīng)過一個階段即可直接得到最終的檢測結(jié)果,因此有著更快的檢測速度。

2.3.1 YOLO v1

> 論文鏈接:https://www.cv-foundation.org/openaccess/content\_cvpr\_2016/papers/Redmon\_You\_Only\_Look\_CVPR\_2016\_paper.pdf
> 代碼鏈接:https://github.com/abeardear/pytorch-YOLO-v1

【簡介】 YOLO v1[10] 是第一個一階段的深度學習檢測算法,其檢測速度非常快,該算法的思想就是將圖像劃分成多個網(wǎng)格,然后為每一個網(wǎng)格同時預(yù)測邊界框并給出相應(yīng)概率。例如某個待檢測目標的中心落在圖像中所劃分的一個單元格內(nèi),那么該單元格負責預(yù)測該目標位置和類別。

【性能】 YOLO v1檢測速度非???,在VOC-07數(shù)據(jù)集上的mAP可達52.7%,實現(xiàn)了155 fps的實時性能,其增強版性能也很好(VOC-07 mAP=63.4%, 45 fps, VOC-12 mAP=57.9%),性能要優(yōu)于DPM和RCNN。

【不足】 相比于二階段的目標檢測算法,盡管YOLO v1算法的檢測速度有了很大提高,但精度相對教低(尤其是對于一些小目標檢測問題)。

2.3.2 SSD

> 論文鏈接:https://arxiv.org/pdf/1512.02325
> 代碼鏈接:https://github.com/amdegroot/ssd.pytorch

【簡介】 SSD[11] 算法的主要創(chuàng)新點是提出了Multi-reference和Multi-resolution的檢測技術(shù)。SSD算法和先前的一些檢測算法的區(qū)別在于:先前的一些檢測算法只是在網(wǎng)絡(luò)最深層的分支進行檢測,而SSD有多個不同的檢測分支,不同的檢測分支可以檢測多個尺度的目標,所以SSD在多尺度目標檢測的精度上有了很大的提高,對小目標檢測效果要好很多。

【性能】 相比于YOLO v1算法,SSD進一步提高了檢測精度和速度(VOC-07 mAP=76.8%, VOC-12 mAP=74.9%, COCO mAP@.5=46.5%, mAP@[.5,.95]=26.8%, SSD的精簡版速度達到59 fps)。

2.3.3 YOLO v2

> 論文鏈接:https://openaccess.thecvf.com/content\_cvpr\_2017/papers/Redmon\_YOLO9000\_Better\_Faster\_CVPR\_2017\_paper.pdf
> 代碼鏈接:https://github.com/longcw/yolo2\-pytorch

【簡介】 相比于YOLO v1,YOLO v2[12] 在精度、速度和分類數(shù)量上都有了很大的改進。在速度上(Faster),YOLO v2使用DarkNet19作為特征提取網(wǎng)絡(luò),該網(wǎng)絡(luò)比YOLO v2所使用的VGG-16要更快。在分類上(Stronger),YOLO v2使用目標分類和檢測的聯(lián)合訓(xùn)練技巧,結(jié)合Word Tree等方法,使得YOLO v2的檢測種類擴充到了上千種。下圖2-2展示了YOLO v2相比于YOLO v1在提高檢測精度(Better)上的改進策略。

圖2-2.YOLO v2相比YOLO v1的改進策略

【性能】 YOLO v2算法在VOC 2007數(shù)據(jù)集上的表現(xiàn)為67 FPS時,mAP為76.8,在40FPS時,mAP為78.6。

【不足】 YOLO v2算法只有一條檢測分支,且該網(wǎng)絡(luò)缺乏對多尺度上下文信息的捕獲,所以對于不同尺寸的目標檢測效果依然較差,尤其是對于小目標檢測問題。

2.3.4 RetinaNet

> 論文鏈接:https://openaccess.thecvf.com/content\_ICCV\_2017/papers/Lin\_Focal\_Loss\_for\_ICCV\_2017\_paper.pdf
> 代碼鏈接:https://github.com/yhenon/pytorch-retinanet

【簡介】 盡管一階段檢測算推理速度快,但精度上與二階段檢測算法相比還是不足。RetinaNet[13] 論文分析了一階段網(wǎng)絡(luò)訓(xùn)練存在的類別不平衡問題,提出能根據(jù)Loss大小自動調(diào)節(jié)權(quán)重的Focal loss,代替了標準的交叉熵損失函數(shù),使得模型的訓(xùn)練更專注于困難樣本。同時,基于FPN設(shè)計了RetinaNet,在精度和速度上都有不俗的表現(xiàn)。

【性能】 RetinaNet在保持高速推理的同時,擁有與二階段檢測算法相媲美的精度(COCO mAP@.5=59.1%, mAP@[.5, .95]=39.1%)。

2.3.5 YOLO v3

> 論文鏈接:https://arxiv.org/pdf/1804.02767.pdf
> 代碼鏈接:https://github.com/ultralytics/yolov3

【簡介】 相比于YOLO v2,YOLO v3[14] 將特征提取網(wǎng)絡(luò)換成了DarkNet53,對象分類用Logistic取代了Softmax,并借鑒了FPN思想采用三條分支(三個不同尺度/不同感受野的特征圖)去檢測具有不同尺寸的對象。

【性能】 YOLO v3在VOC數(shù)據(jù)集,Titan X上處理608608圖像速度達到20FPS,在COCO的測試數(shù)據(jù)集上mAP@0.5達到57.9%。其精度比SSD高一些,比Faster RCNN相比略有遜色(幾乎持平),比RetinaNet差,但速度是SSD、RetinaNet和Faster RCNN至少2倍以上,而簡化后的Yolov3 tiny可以更快。

【不足】 YOLO v3采用MSE作為邊框回歸損失函數(shù),這使得YOLO v3對目標的定位并不精準,之后出現(xiàn)的IOU,GIOU,DIOU和CIOU等一系列邊框回歸損失大大改善了YOLO v3對目標的定位精度。

2.3.6 YOLO v4

> 論文鏈接:https://arxiv.org/pdf/2004.10934
> 代碼鏈接:https://github.com/Tianxiaomo/pytorch-YOLOv4

【簡介】 相比于YOLO v4,YOLO v4[15] 在輸入端,引入了Mosaic數(shù)據(jù)增強、cmBN、SAT自對抗訓(xùn)練;在特征提取網(wǎng)絡(luò)上,YOLO v4將各種新的方式結(jié)合起來,包括CSPDarknet53,Mish激活函數(shù),Dropblock;在檢測頭中,引入了SPP模塊,借鑒了FPN+PAN結(jié)構(gòu);在預(yù)測階段,采用了CIOU作為網(wǎng)絡(luò)的邊界框損失函數(shù),同時將NMS換成了DIOU_NMS等等??傮w來說,YOLO v4具有極大的工程意義,將近年來深度學習領(lǐng)域最新研究的tricks都引入到了YOLO v4做驗證測試,在YOLO v3的基礎(chǔ)上更進一大步。

【性能】 YOLO v4在COCO數(shù)據(jù)集上達到了43.5%AP(65.7% AP50),在Tesla V100顯卡上實現(xiàn)了65 fps的實時性能,下圖2-3展示了在COCO檢測數(shù)據(jù)集上YOLO v4和其它SOTA檢測算法的性能對比。

圖2-3.YOLO v4與其它模型性能對比

2.3.7 YOLO V5

> 代碼鏈接:https://github.com/ultralytics/yolov5

【簡介】 目前YOLO V5公布了源代碼,但尚未發(fā)表論文;與YOLO V4有點相似,都大量整合了計算機視覺領(lǐng)域的State-of-the-art,從而顯著改善了YOLO對目標的檢測性能。相比于YOLO V4,YOLO V5在性能上稍微遜色,但其靈活性與速度上遠強于YOLO V4,而且在模型的快速部署上也具有極強優(yōu)勢。

【性能】 。如下圖2-4展示了在COCO檢測數(shù)據(jù)集上YOLO v5和其它SOTA檢測算法的性能對比。

圖2-4.YOLO v5與其它模型性能對比

2.3.8 Anchor-based目標檢測算法局限性

基于Anchor的目標檢測算法主要有以下四大缺點:

  1. Anchor的大小,數(shù)量,長寬比對于檢測性能的影響很大(通過改變這些超參數(shù)Retinanet在COCO benchmark上面提升了4%的AP),因此Anchor based的檢測性能對于anchor的大小、數(shù)量和長寬比都非常敏感。
  2. 這些固定的Anchor極大地損害了檢測器的普適性,導(dǎo)致對于不同任務(wù),其Anchor都必須重新設(shè)置大小和長寬比。
  3. 為了去匹配真實框,需要生成大量的Anchor,但是大部分的Anchor在訓(xùn)練時標記為負樣本,所以就造成了樣本極度不均衡問題(沒有充分利用fore-ground)。
  4. 在訓(xùn)練中,網(wǎng)絡(luò)需要計算所有Anchor與真實框的IOU,這樣就會消耗大量內(nèi)存和時間。

2.4 Anchor-Free中的目標檢測算法

基于Anchor的物體檢測問題通常被建模成對一些候選區(qū)域進行分類和回歸的問題,在一階段檢測器中,這些候選區(qū)域就是通過滑窗方式產(chǎn)生Anchor box,而在二階段檢測器中,候選區(qū)域是RPN生成的Proposal,但是RPN本身仍然是對滑窗方式產(chǎn)生的Anchor進行分類和回歸?;贏nchor的檢測算法由于Anchor太多導(dǎo)致計算復(fù)雜,及其所帶來的大量超參數(shù)都會影響模型性能。近年的Anchor free技術(shù)則摒棄Anchor,通過確定關(guān)鍵點的方式來完成檢測,大大減少了網(wǎng)絡(luò)超參數(shù)的數(shù)量。

2.4.1 CornerNet

> 論文鏈接:http://openaccess.thecvf.com/content\_ECCV\_2018/papers/Hei\_Law\_CornerNet\_Detecting\_Objects\_ECCV\_2018\_paper.pdf
> 代碼鏈接:https://github.com/princeton-vl/CornerNet

【簡介】 CornerNet[16] 是Anchor free技術(shù)路線的開創(chuàng)之作,該網(wǎng)絡(luò)提出了一種新的對象檢測方法,將網(wǎng)絡(luò)對目標邊界框的檢測轉(zhuǎn)化為一對關(guān)鍵點的檢測(即左上角和右下角),通過將對象檢測為成對的關(guān)鍵點,而無需設(shè)計Anchor box作為先驗框。

【性能】 實驗表明,CornerNet在COCO數(shù)據(jù)集上實現(xiàn)了42.1%AP,該精度優(yōu)于所有現(xiàn)有的單階段檢測網(wǎng)絡(luò)。下圖2-3展示了在COCO檢測數(shù)據(jù)集上CornerNet和其它SOTA檢測算法的性能對比。

圖2-3.CornerNet與其它模型性能對比

【不足】 CornerNet只關(guān)注邊緣和角點,缺乏目標內(nèi)部信息,容易產(chǎn)生FP;該網(wǎng)絡(luò)還是需要不少的后處理,比如如何選取分數(shù)最高的點,同時用offset來微調(diào)目標定位,也還需要做NMS。

2.4.2 CenterNet

> 論文鏈接:https://openaccess.thecvf.com/content\_ICCV\_2019/papers/Duan\_CenterNet\_Keypoint\_Triplets\_for\_Object\_Detection\_ICCV\_2019\_paper.pdf
> 代碼鏈接:https://github.com/Duankaiwen/CenterNet

【簡介】 與CornerNet檢測算法不同,CenterNet[17] 的結(jié)構(gòu)十分簡單,它摒棄了左上角和右下角兩關(guān)鍵點的思路,而是直接檢測目標的中心點,其它特征如大小,3D位置,方向,甚至姿態(tài)可以使用中心點位置的圖像特征進行回歸,是真正意義上的Anchor free。該算法在精度和召回率上都有很大提高,同時該網(wǎng)絡(luò)還提出了兩個模塊:級聯(lián)角池化模塊和中心池化模塊,進一步豐富了左上角和右下角收集的信息,并提供了

【性能】 相比于一階段和二階段檢測算法,CenterNet的速度和精度都有不少的提高,在COCO數(shù)據(jù)集上,CenterNet實現(xiàn)了47.0%的AP,比現(xiàn)有的一階段檢測器至少高出4.9%。下圖2-4展示了在COCO檢測數(shù)據(jù)集上CenterNet和其它SOTA檢測算法的性能對比。

【不足】 在訓(xùn)練過程中,同一類別中的如果某些物體靠的比較近,那么其Ground Truth中心點在下采樣時容易擠到一塊,導(dǎo)致兩個物體GT中心點重疊,使得網(wǎng)絡(luò)將這兩個物體當成一個物體來訓(xùn)練(因為只有一個中心點了);而在模型預(yù)測階段,如果兩個同類物體在下采樣后的中心點也重疊了,那么網(wǎng)絡(luò)也只能檢測出一個中心點。

2.4.3 FSAF

> 論文鏈接:http://openaccess.thecvf.com/content\_CVPR\_2019/papers/Zhu\_Feature\_Selective\_Anchor-Free\_Module\_for\_Single-Shot\_Object\_Detection\_CVPR\_2019\_paper.pdf
> 代碼鏈接:https://github.com/hdjang/Feature-Selective-Anchor-Free-Module-for-Single-Shot-Object-Detection

【簡介】 FSAF[18] 網(wǎng)絡(luò)提出了一種FSAF模塊用于訓(xùn)練特征金字塔中的Anchor free分支,讓每一個對象都自動選擇最合適的特征。在該模塊中,Anchor box的大小不再決定選擇哪些特征進行預(yù)測,使得Anchor的尺寸成為了一種無關(guān)變量,實現(xiàn)了模型自動化學習選擇特征。

【性能】 下圖2-5展示了在COCO檢測數(shù)據(jù)集上FSAF算法和其它SOTA檢測算法的性能對比。

圖2-5.FSAF與其它模型性能對比

2.4.4 FCOS

> 論文鏈接:https://openaccess.thecvf.com/content\_ICCV\_2019/papers/Tian\_FCOS\_Fully\_Convolutional\_One-Stage\_Object\_Detection\_ICCV\_2019\_paper.pdf
> 代碼鏈接:https://github.com/tianzhi0549/FCOS

【簡介】 FCOS[19] 網(wǎng)絡(luò)是一種基于FCN的逐像素目標檢測算法,實現(xiàn)了無錨點(Anchor free),無提議(Proposal free)的解決方案,并且提出了中心度Center ness的思想。該算法通過去除Anchor,完全避免了Anchor的復(fù)雜運算,節(jié)省了訓(xùn)練過程中大量的內(nèi)存占用,將總訓(xùn)練內(nèi)存占用空間減少了2倍左右。

【性能】 FCOS的性能優(yōu)于現(xiàn)有的一階段檢測器,同時FCOS還可用作二階段檢測器Faster RCNN中的RPN,并且很大程度上都要優(yōu)于RPN。下圖2-6展示了在COCO檢測數(shù)據(jù)集上FCOS算法和其它SOTA檢測算法的性能對比。

圖2-6.FCOS與其它模型性能對比

2.4.5 SAPD

> 論文鏈接:https://arxiv.org/pdf/1911.12448
> 代碼鏈接:https://github.com/xuannianz/SAPD

【簡介】 SAPD[20] 論文作者認為Anchor point的方法性能不高主要還是在于訓(xùn)練的不充分,主要是注意力偏差和特征選擇。因而作者提出了兩種策略:1)Soft-weighted anchor points對不同位置的樣本進行權(quán)重分配 2)Soft-selected pyramid levels,將樣本分配到多個分辨率,并進行權(quán)重加權(quán)。而在訓(xùn)練階段,作者前6個epoch采用FSAF的方式,而后6個epoch會將特征選擇的預(yù)測網(wǎng)絡(luò)加入進行聯(lián)合訓(xùn)練。

【性能】 下圖2-6展示了在COCO檢測數(shù)據(jù)集上SAPD算法和其它SOTA檢測算法的性能對比。

圖2-6.SAPD與其它模型性能對比

3. 常用數(shù)據(jù)集及評價指標

3.1 常用數(shù)據(jù)集

3.1.1 四大公共數(shù)據(jù)集

Pascal VOC[21],ILSVRC[22],MS-COCO[23],和OID[24] 數(shù)據(jù)集是目標檢測使用最多的四大公共數(shù)據(jù)集,至于這四大數(shù)據(jù)集的介紹,此處不一一展開,大家可根據(jù)下方給出的鏈接了解:

  • PASCAL VOC數(shù)據(jù)集詳細介紹可參考:https://arleyzhang.github.io/articles/1dc20586/
  • ILSVRC數(shù)據(jù)集詳細介紹可參考:https://cloud.tencent.com/developer/article/1747599
  • MS-COCO數(shù)據(jù)集詳細介紹可參考:https://blog.csdn.net/qq_41185868/article/details/82939959
  • Open Images(QID)數(shù)據(jù)集詳細介紹可參考:https://bbs.easyaiforum.cn/thread-20-1-1.html

下圖3-1展示了這四大檢測數(shù)據(jù)集的樣例圖片及其標簽

下表3-1展示了這四大檢測數(shù)據(jù)集的數(shù)據(jù)統(tǒng)計結(jié)果:

3.1.2 其它數(shù)據(jù)集

檢測任務(wù)包含了很多種,其中比較常見的檢測任務(wù)有行人檢測,臉部檢測,文本檢測,交通燈與交通標志檢測,遙感圖像目標檢測。下表3-2至3-6分別列舉了各檢測任務(wù)下的常用公共檢測數(shù)據(jù)集。

表3-2.行人檢測常用數(shù)據(jù)集
表3-3.臉部檢測常用數(shù)據(jù)集
表3-4.文本檢測常用數(shù)據(jù)集
表3-5.交通標注檢測常用數(shù)據(jù)集
表3-6.遙感圖像目標檢測常用數(shù)據(jù)集

3.2 常用評價指標

目標檢測常用的評價指標有:交并比準確率,精度,召回率,FPRF1-Score,PR曲線-AP值,ROC曲線-AUC值,和mAP值FPS。

3.2.1 交并比(IOU)

IOU = 兩個矩形交集的面積 / 兩個矩形并集的面積

如上圖3-2,假設(shè)A是模型檢測結(jié)果,B為Ground Truth,那么IOU = (A ∩ B) / (A ∪ B),一般情況下對于檢測框的判定都會存在一個閾值,也就是IOU的閾值,一般將IOU值設(shè)置為大于0.5的時候,則可認為檢測到目標物體。

3.2.2 準確率/精度/召回率/F1值/FPR

True positives (TP,真正): 預(yù)測為正,實際為正
True negatives (TN,真負): 預(yù)測為負,實際為負
False positives(FP,假正): 預(yù)測為正,實際為負
False negatives(FN,假負): 預(yù)測為負,實際為正

3.2.3 PR曲線-AP值

模型精度,召回率,F(xiàn)PR和F1-Score值無法往往不能直觀反應(yīng)模型性能,因此就有了PR曲線-AP值 和 ROC曲線-AUC值

PR曲線就是Precision和Recall的曲線,我們以Precision作為縱坐標,Recall為橫坐標,可繪制PR曲線如下圖3-3所示:

評估標準:如果模型的精度越高,且召回率越高,那么模型的性能自然也就越好,反映在PR曲線上就是PR曲線下面的面積越大,模型性能越好。我們將PR曲線下的面積定義為AP(Average Precision)值,反映在AP值上就是AP值越大,說明模型的平均準確率越高。

3.2.4 ROC曲線-AUC值

ROC曲線就是RPR和TPR的曲線,我們以FPR為橫坐標,TPR為縱坐標,可繪制ROC曲線如下圖3-4所示:

評估標準:當TPR越大,F(xiàn)PR越小時,說明模型分類結(jié)果是越好的,反映在ROC曲線上就是ROC曲線下面的面積越大,模型性能越好。我們將ROC曲線下的面積定義為AUC(Area Under Curve)值,反映在AUC值上就是AUC值越大,說明模型對正樣本分類的結(jié)果越好。

3.2.5 mAP

Mean Average Precision(mAP)是平均精度均值,具體指的是不同召回率下的精度均值。在目標檢測中,一個模型通常會檢測很多種物體,那么每一類都能繪制一個PR曲線,進而計算出一個AP值,而多個類別的AP值的平均就是mAP。

評估標準:mAP衡量的是模型在所有類別上的好壞,屬于目標檢測中一個最為重要的指標,一般看論文或者評估一個目標檢測模型,都會看這個值,這個值(0-1范圍區(qū)間)越大越好。

劃重點?。?!

一般來說mAP是針對整個數(shù)據(jù)集而言的,AP則針對數(shù)據(jù)集中某一個類別而言的,而percision和recall針對單張圖片某一類別的。

3.2.6 FPS

Frame Per Second(FPS)指的是模型一秒鐘能檢測圖片的數(shù)量,不同的檢測模型往往會有不同的mAP和檢測速度,如下圖3-5所示:

圖3-5.不同模型的準確率與檢測速度

目標檢測技術(shù)的很多實際應(yīng)用在準確度和速度上都有很高的要求,如果不計速度性能指標,只注重準確度表現(xiàn)的突破,其代價是更高的計算復(fù)雜度和更多內(nèi)存需求,對于行業(yè)部署而言,可擴展性仍是一個懸而未決的問題。因此在實際問題中,通常需要綜合考慮mAP和檢測速度等因素。本小節(jié)參考目標檢測中的評價指標有哪些[25]

4. 存在的六大難點與挑戰(zhàn)

每一個檢測任務(wù)都有其特有的檢測難點,比如背景復(fù)雜,目標尺度變化大,顏色對比度低等挑戰(zhàn),這就導(dǎo)致某個檢測算法在檢測任務(wù)A上可能表現(xiàn)SOTA,但在檢測任務(wù)B上表現(xiàn)得可能不盡如人意。因此,分析研究每一個檢測任務(wù)存在的難點與挑戰(zhàn)至關(guān)重要,這有利于我們針對不同的檢測難點設(shè)計出不同的技術(shù)以解決該項問題,從而使得我們提出的算法能夠在特定的任務(wù)上表現(xiàn)SOTA。

我們對大部分檢測任務(wù)加以分析,概括出了以下幾點在檢測任務(wù)可能存在的檢測難點與挑戰(zhàn):

  1. 待檢測目標尺寸很小,導(dǎo)致占比小,檢測難度大
  2. 待檢測目標尺度變化大,網(wǎng)絡(luò)難以提取出高效特征
  3. 待檢測目標所在背景復(fù)雜,噪音干擾嚴重,檢測難度大
  4. 待檢測目標與背景顏色對比度低,網(wǎng)絡(luò)難以提取出具有判別性的特征
  5. 各待檢測目標之間數(shù)量極度不均衡,導(dǎo)致樣本不均衡
  6. 檢測算法的速度與精度難以取得良好平衡

劃重點?。?!

以上六大檢測難點基本覆蓋檢測任務(wù)中存在的所有挑戰(zhàn),對于我們所做過的每一份檢測任務(wù)數(shù)據(jù)集,都可以在上述找到相應(yīng)難點與挑戰(zhàn),并針對具體的檢測難點提出相應(yīng)的解決方案!

5. 目標檢測的五大技術(shù)及其演變

5.1 Multi-Scale檢測技術(shù)的演變

不同尺度,不同形狀物體的檢測是目標檢測面臨的主要挑戰(zhàn)之一,而多尺度檢測技術(shù)是解決多尺度問題的主要技術(shù)手段。目標檢測發(fā)展的幾十年來,多尺度檢測技術(shù)的演變經(jīng)歷了以下過程:

  1. Feature pyramids and sliding windows(2014年前)
  2. Detection with object proposals(2010-2015年)
  3. Deep regression(2013-2016年)
  4. Multi-reference detection(2015年后)
  5. Multi-resolution detection(2016年后)

如下圖5-1展示了多尺度檢測技術(shù)的演變歷程。

圖5-1.多尺度檢測技術(shù)的演變歷程

5.2 邊框回歸技術(shù)的演變

邊框回歸(The Bounding Box regression)是目標檢測非常重要的技術(shù)。它的目的是根據(jù)初始設(shè)定的anchor box來進一步改進修正預(yù)測框的位置。目標檢測發(fā)展的幾十年來,多尺度檢測技術(shù)的演變經(jīng)歷了以下過程:

  1. Without BB regression(2008年之前)
  2. From BB to BB(2008-2013年)
  3. From feature to BB(2013年后)

如下圖5-2展示了邊框回歸技術(shù)的演變歷程。

圖5-2.邊框回歸技術(shù)的演變歷程

5.3 上下文信息提取技術(shù)的演變

目標檢測領(lǐng)域中每一個目標都被周圍背景所包圍,而我們對于一個目標的認知會根據(jù)其周圍的環(huán)境作出判斷,于是我們將目標周圍的環(huán)境信息稱作上下文信息。上下文可以作為網(wǎng)絡(luò)判斷目標類別和定位的重要輔助信息,可大大提高網(wǎng)絡(luò)檢測的精度。為網(wǎng)絡(luò)提取上下文信息有以下三種常用的方法:

  1. 提取局部上下文信息用于目標檢測
  2. 提取全局上下文信息用于目標檢測
  3. 上下文信息交互提取高效上下文信息用于目標檢測

如下圖5-3展示了上下文信息提取技術(shù)的演變歷程。

圖5-3.上下文信息提取技術(shù)的演變歷程

5.4 非極大值抑制技術(shù)的演變

目標檢測的過程中在同一目標的位置上會產(chǎn)生大量的候選框,這些候選框相互之間可能會有重疊,此時我們需要利用非極大值抑制找到最佳的目標邊界框,消除冗余的邊界框。非極大值抑制算法的流程如下:

  1. 根據(jù)置信度得分進行排序
  2. 選擇置信度最高的比邊界框添加到最終輸出列表中,將其從邊界框列表中刪除
  3. 計算所有邊界框的面積
  4. 計算置信度最高的邊界框與其它候選框的IoU。
  5. 刪除IoU大于閾值的邊界框
  6. 重復(fù)上述過程,直至邊界框列表為空。

非極大值抑制算法逐漸發(fā)展成為以下三條路線:

  1. Greedy selection
  2. Bounding box aggregation
  3. Learning to NMS

如下圖5-4展示了非極大值抑制算法的技術(shù)演變歷程。

圖5-4.非極大抑制技術(shù)的演變歷程

5.5 難分負樣本挖掘技術(shù)的演變

目標檢測的訓(xùn)練過程本質(zhì)上還是一個樣本數(shù)據(jù)不平衡的學習過程,因為檢測算法中需要用到很多檢測框,而真正包含目標的檢測框占比卻極少。在網(wǎng)絡(luò)訓(xùn)練過程中,大量簡單的負樣本(背景)會主導(dǎo)學習方向而不利于網(wǎng)絡(luò)往正確的方向加以優(yōu)化,因此這需要采取一定的策略來解決這一問題。難分負樣本挖掘(Hard Negative Mining, HNM)技術(shù)正是解決訓(xùn)練過程中的數(shù)據(jù)不平衡問題的一項關(guān)鍵技術(shù)。

難分負樣本挖掘技術(shù)的演變主要經(jīng)歷了以下過程:

  1. Bootstrap
  2. HNM in deep learning based detectors

如下圖5-5展示了難分負樣本挖掘技術(shù)的演變歷程。

圖5-5.難分負樣本挖掘技術(shù)的演變歷程

6. 模型加速技術(shù)

目前卷積神經(jīng)網(wǎng)絡(luò)在移動端的部署仍然具有不小挑戰(zhàn),一個高精度的模型若計算量大,則在工業(yè)落地的時候需要購買昂貴的設(shè)備去運行該模型,這會極大提高工業(yè)生產(chǎn)成本,阻礙模型落地進程。因此模型在高精度的同時,還需要速度快。學術(shù)界研究學者致力于研究出高精度的輕量化網(wǎng)絡(luò)架構(gòu),而工業(yè)界工程師則致力于從硬件的角度出發(fā),開發(fā)一系列模型壓縮與量化技術(shù)來提高模型運算速度。近年來出現(xiàn)的一些加速技術(shù)大體可分為以下三類:

  1. 輕量化網(wǎng)絡(luò)設(shè)計
  2. 模型壓縮與量化
  3. 模型數(shù)值加速

6.1 輕量化網(wǎng)絡(luò)設(shè)計

設(shè)計輕量化網(wǎng)絡(luò)架構(gòu)可以使模型在輕量化的同時保持較高的精度,在輕量化網(wǎng)絡(luò)設(shè)計中,除了降低網(wǎng)絡(luò)通道數(shù)和卷積層數(shù)等一些通用的網(wǎng)絡(luò)設(shè)計準則外,一些其它的方法也被用于構(gòu)建輕量化的網(wǎng)絡(luò):

  1. 卷積分解
  2. 分組卷積
  3. 深度可分離卷積
  4. Bottle-neck設(shè)計
  5. 神經(jīng)架構(gòu)搜索

6.1.1 卷積分解

卷積分解是最簡單也最常用的用于構(gòu)建輕量級網(wǎng)絡(luò)的技巧,卷積分解的方式主要有兩種:

圖6-1.普通卷積和核分解卷積

第一種方法是:將大卷積核分解為多個小卷積核,如上圖6-1(b)所示,可以將一個77的卷積核分解成3個33的卷積核,它們擁有相同的感受野,但后者計算效率會更高;或者將的卷積核分解為和的卷積核。

圖6-2.通道分解卷積

第二種方法是:將一組大卷積在其通道維度上分解為兩小組卷積,如上圖6-2所示,我們可以用,然后再運用個卷積核將特征圖的通道數(shù)調(diào)整為。通過此種方式,復(fù)雜度可以降低到

6.1.2 分組卷積

圖6-3.分組卷積(Groups=2)

分組卷積的目的是通過將特征通道分成多個不同的組來減少卷積層中的參數(shù)數(shù)量,然后對每個組獨立進行卷積,如上圖6-3所示。如果我們將特征通道平均劃分成組,卷積的計算復(fù)雜度理論上會降低到之前的1/。

6.1.3 深度可分離卷積

圖6-4.深度可分離卷積

如上圖6-4所示,深度可分離卷積是用于構(gòu)建輕量化網(wǎng)絡(luò)的一種常見方法,當組數(shù)設(shè)置為通道數(shù)時,可以將其視為組卷積的特例。假設(shè)我們有一個帶有個卷積濾波器的卷積層和一個具有個通道數(shù)的特征圖,每個卷積濾波器的大小是。對于深度可分離卷積,每個的卷積濾波器首先分成大小為的切片,然后在每個通道中對濾波器的每個切片單獨進行卷積,最后使用多個卷積濾波器進行維度變換,以便最終輸出相同的通道。通過使用深度可分離卷積,計算復(fù)雜度可以從 降低到。

6.1.4 Bottle-neck設(shè)計

Bottle-neck已被廣泛用于設(shè)計輕量級網(wǎng)絡(luò),Bottle-neck的核心思想就是運用少量的參數(shù)/計算量進行信息壓縮。在Bottle-neck的設(shè)計中,一種常見的方法是壓縮檢測器的輸入層使得檢測器在一開始就減少計算量;另一種方法是壓縮檢測器的輸出來降低通道數(shù),從而使其在后續(xù)檢測階段更加高效。

6.1.5 神經(jīng)架構(gòu)搜索NAS

圖6-5.神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索

NAS技術(shù)已應(yīng)用于大規(guī)模圖像分類、對象檢測和圖像分割任務(wù),神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索主要有三大流程:

  1. 定義搜索空間
  2. 執(zhí)行搜索策略采樣網(wǎng)絡(luò)
  3. 對采樣的網(wǎng)絡(luò)進行性能評估

定義搜索空間是指待搜索網(wǎng)絡(luò)結(jié)構(gòu)的候選集合,搜索空間大致分為全局搜索空間和局部搜索空間,前者代表搜索整個網(wǎng)絡(luò)結(jié)構(gòu),后者只搜索一些小的結(jié)構(gòu),通過堆疊、拼接的方法組合成完整的大網(wǎng)絡(luò);執(zhí)行搜索策略即如何在搜索空間進行選擇,根據(jù)方法不同,搜索策略可大致分為:1)基于強化學習的方法 2)基于進化算法的方法 3)基于梯度的方法;而性能評估即在目標數(shù)據(jù)集上評估網(wǎng)絡(luò)結(jié)構(gòu)的性能好壞,從而篩選出最優(yōu)網(wǎng)絡(luò)結(jié)構(gòu)。

6.2 模型壓縮與量化

模型壓縮與量化是兩種常用于加速CNN模型的技術(shù),這其中所涉及到的技術(shù)有模型剪枝,量化與知識蒸餾。其中模型剪枝是指修剪網(wǎng)絡(luò)結(jié)構(gòu)或權(quán)重從而減小規(guī)模的一種技術(shù);模型量化則是指將模型一些浮點計算轉(zhuǎn)成低Bit的定點計算的技術(shù),它可以有效降低模型計算強度、參數(shù)大小和內(nèi)存消耗;而知識蒸餾則是指將大網(wǎng)絡(luò)所學習到的'知識'有效傳遞到小網(wǎng)絡(luò)中的一種技術(shù)。

6.2.1 網(wǎng)絡(luò)剪枝

網(wǎng)絡(luò)剪枝最早可以追溯到1980年代,而近年來的網(wǎng)絡(luò)剪枝方法通常采用迭代訓(xùn)練的方式進行剪枝,即在每個訓(xùn)練階段后僅去除一小部分不重要的權(quán)重,并重復(fù)此操作直到模型達到較小量級且精度滿足落地要求。由于傳統(tǒng)的網(wǎng)絡(luò)剪枝只是簡單的去除一些不重要的權(quán)重,這可能會導(dǎo)致卷積濾波器連的連接變得稀疏,因此不能直接用于壓縮CNN模型。而解決這一問題的方案就是移除整個過濾器而不是獨立的權(quán)重。

6.2.2 模型量化

近年來關(guān)于模型量化的工作主要集中在網(wǎng)絡(luò)二值化,其目的是通過將網(wǎng)絡(luò)的參數(shù)權(quán)重量化為二進制變量(例如0或1)來進行網(wǎng)絡(luò)加速,以便將一些浮點運算轉(zhuǎn)換為AND,OR,NOT等邏輯運算。模型參數(shù)的二值化可以顯著加快其計算速度并減少網(wǎng)絡(luò)存儲,從而使得網(wǎng)絡(luò)更容易地部署在移動設(shè)備上。而實現(xiàn)以上思路的一種方法就是用最小二乘法通過二進制變量來近似卷積操作,并使用多個二值化卷積的線性組合來不斷提高模型精度。此外,一些研究人員還進一步開發(fā)了用于二值化計算的GPU加速庫,并取得了更顯著的模型加速效果。

6.2.3 知識蒸餾

知識蒸餾是一種將大型網(wǎng)絡(luò)所學習到的'知識'有效傳遞到小網(wǎng)絡(luò)中,使得小網(wǎng)絡(luò)接近于大網(wǎng)絡(luò)預(yù)測能力的一種技術(shù),此處我們將大網(wǎng)絡(luò)稱作“Teacher Net”,將小網(wǎng)絡(luò)稱作“Student Net”,近年來這一技術(shù)成功用于目標檢測算法的加速。使用知識蒸餾一個最直接的方法就是使用Teacher Net來指導(dǎo)輕量級的Student Net,以便Student Net可以用于檢測的加速;而知識蒸餾的另一個方法就是對候選區(qū)域進行變換,以最小化Student Net和Teacher Net之間特征的距離,這種方法直接使得模型的檢測速度提高了2倍,而同時又保持了很高的檢測精度。

6.3 數(shù)值加速技術(shù)

目標檢測中常用的數(shù)值加速方法主要有以下四種,具體實現(xiàn)方法此處就不一一展開了,有興趣的讀者可自行搜索資料進行了解。

  1. 積分圖像加速
  2. 頻域加速
  3. 矢量量化
  4. 降階逼近

7. 提高目標檢測模型精度的五大技術(shù)

接下來,本小節(jié)帶你簡單回顧近幾年年目標檢測領(lǐng)域中用于提高模型精度的幾大技術(shù)。

7.1 特征提取網(wǎng)絡(luò)

特征提取網(wǎng)絡(luò)(Backbone)對于目標檢測模型性能的提升至關(guān)重要,一些經(jīng)典的特征提取網(wǎng)絡(luò)對目標檢測任務(wù)精度起到了重要的推動作用,如AlexNet、VGG、GoogLeNet、ResNet、DenseNet、SENet等等。隨著卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展,業(yè)界不斷涌現(xiàn)出了一些新的特征提取網(wǎng)絡(luò),性能更是步步攀升。一些先進的特征提取網(wǎng)絡(luò)被應(yīng)用于目標檢測模型的特征提取Backbone,使得目標檢測模型的精度與速度不斷提升,比如STDN,DSOD,TinyDSOD和DenseNet等等。作為當時實力分割的SOTA算法,Mask RCNN采用了ResNeXt作為網(wǎng)絡(luò)的Backbone。

7.2 高效的特征融合

高效的特征表示是提升目標檢測性能的關(guān)鍵,近年來,許多研究學者在特征提取網(wǎng)絡(luò)中加入一些Trick去提高網(wǎng)絡(luò)的特征提取能力。而用于提高網(wǎng)絡(luò)表征能力的兩項最重要的方法便是:1)高效的特征融合 和2)學習出具備大感受野的高分辨率特征表示。

7.2.1 為什么特征融合如此重要呢?

平移不變性和等變性是圖像特征表示中的兩個重要特性:特征的平移不變性有利于圖像分類,因為它旨在學習高級語義信息;而特征的平移等變性更有利于目標定位,因為它旨在區(qū)分位置和尺度變化。由于目標檢測由圖像識別和目標定位兩個子任務(wù)組成,因此目標檢測算法需要同時學習特征平移不變性和等變性。

近年來,特征融合在目標檢測中得到了廣泛的應(yīng)用,由于CNN模型由一系列卷積和池化層組成,因此更深層的特征具有更強的平移不變性但缺乏一定的平移等變性,這雖然更有利于物體識別,但它對目標定位的精度低。相反,較淺層的特征具有更強的平移等變性且包含更多的邊緣輪廓信息,這雖然有利于目標定位,但由于缺乏一定的語義信息而不利于物體分類。因此CNN模型中深層和淺層特征的融合有助于提高特征的平移不變性和等變性,這對提高目標檢測的精度是非常重要的。

7.2.2 實現(xiàn)高效特征融合的一些方法

圖7-1.特征融合方法

在目標檢測中實現(xiàn)特征融合,首先需要確定要融合哪些特征,比如我們可以采取自底向上的特征融合,將淺層特征通過跳躍連接融入到深層特征中,如上圖7-1(a)所示;也可以采用自頂向下的特征融合,將深層特征通過跳躍連接融入到淺層特征中,如上圖7-1(b)所示;同樣也可以采用的跨不同層進行特征融合的方式。確定要融合哪些特征之后,再確定融合的方式,比如逐元素求和,如上圖7-1(c);還是逐元素相乘,如上圖7-1(d);還是Concat融合,如上圖7-1(e)所示。

7.2.3 具備大感受野的高分辨率特征表示

特征的感受野和分辨率是CNN模型需要考慮的兩個重要因素,具有較大感受野的網(wǎng)絡(luò)能夠捕獲更大尺度的上下文信息,而具備較小感受野的網(wǎng)絡(luò)可能更專注于圖像的局部細節(jié)。高分辨率的特征有利于檢測小物體,由于感受野較小缺乏一定的語義信息,因此不利于檢測大尺寸物體,而為了增大感受野最直接的辦法是引入池化層,但這會導(dǎo)致特征的分辨率降低而不利于檢測小物體。為了解決這一矛盾,在增加感受野的同時又喪失特征分辨率,空洞卷積是一種比較好的解決辦法,空洞卷積無需額外的參數(shù)和計算成本即可有效提高檢測算法的精度。

7.3 目標定位改進

為了改善檢測算法對于目標定位的精度,近年來出些的一些主要改進方法是:1)邊框微調(diào),2)設(shè)計新的損失函數(shù)用于更精準的定位。

7.3.1 邊框微調(diào)技術(shù)

邊框微調(diào)是對檢測結(jié)果進行后處理。盡管邊界框回歸已經(jīng)集成到大多數(shù)現(xiàn)代目標檢測器中,但仍有一些目標無法被Anchor box很好的錨定,這導(dǎo)致邊框的預(yù)測并不精確,因此一些研究學者提出邊界框微調(diào)技術(shù),通過將檢測結(jié)果迭代輸入BB回歸器,直到模型的預(yù)測收斂到正確的位置和大小。

7.3.2 改進損失函數(shù)以提高定位精度

目標定位被認為是一個坐標回歸問題,定位損失函數(shù)的演變經(jīng)歷了MSE->IOU->GIOU->DIOU->CIOU這一過程

7.4 語義分割促進目標檢測

目標檢測和語義分割是計算機視覺最基本的兩大任務(wù),近年來一些研究發(fā)現(xiàn)語義分割可以促進目標檢測性能的提升。

7.4.1 為什么分割可以改善檢測性能呢?

分割改善檢測性能的原因主要有以下三點

  1. 分割可以幫助類別分類
  2. 分割可以促進目標的精準定位
  3. 分割可以作為一種上下文信息嵌入到檢測網(wǎng)絡(luò)

7.4.2 分割如何改善檢測性能

通過分割改善檢測性能主要有兩種方法:1)學習豐富的特征表示,2)多任務(wù)損失促進網(wǎng)絡(luò)的學習

  1. 學習豐富的特征表示

最簡單的方法就是將分割網(wǎng)絡(luò)視為固定的特征提取器嵌入到檢測算法中,這種方式的優(yōu)點是容易實現(xiàn),缺點是分割網(wǎng)絡(luò)會帶來額外的計算。

  1. 多任務(wù)損失促進網(wǎng)絡(luò)學習

另一種方法是在原始檢測算法中引入一個額外的分割分支,并使用多任務(wù)損失函數(shù)(分割損失 + 檢測損失)來訓(xùn)練該模型。而在模型推理階段,將分割分支去除即可。這種方法的優(yōu)點是檢測速度不會受到影響,缺點是該算法在訓(xùn)練時還需要像素級別的圖像標注。在此基礎(chǔ)上,一些研究人員引入了弱監(jiān)督學習的思想:不基于像素級別的圖像標注進行模型訓(xùn)練,而是簡單地基于邊界框標注來訓(xùn)練該分割分支。

7.5 旋轉(zhuǎn)和尺度變化的魯棒性檢測

物體的旋轉(zhuǎn)和尺度變換是目標檢測面臨的重要挑戰(zhàn),CNN的平移不變性使得越來越多人投入到該項挑戰(zhàn)的研究當中。

7.5.1 旋轉(zhuǎn)的魯棒性檢測

物體旋轉(zhuǎn)在目標檢測任務(wù)中非常常見,而解決這一問題最直接方法就是數(shù)據(jù)增強,使得任何方向的對象都可以被增強數(shù)據(jù)很好地覆蓋,而解決這一問題的另一個方案就是為每個方向訓(xùn)練獨立的檢測器,除了這些方法外,近年來還出現(xiàn)了一些新的改進方法。

  1. 旋轉(zhuǎn)不變性損失函數(shù)
  2. 旋轉(zhuǎn)校準
  3. 旋轉(zhuǎn)ROI池化

7.5.2 尺度魯棒性檢測

近年來的一些研究也有從訓(xùn)練和檢測階段兩個方面來改善尺度變換的魯棒性檢測

  1. 自適應(yīng)尺度訓(xùn)練方法
  2. 自適應(yīng)尺度檢測方法

8. 五大應(yīng)用場景

在本節(jié)中,我們將回顧過去幾年中出現(xiàn)的一些重要檢測應(yīng)用:行人檢測、人臉檢測、文本檢測、交通信號和遙感目標檢測。

8.1 行人檢測

行人檢測作為一種目標檢測一項重要的應(yīng)用,在自動駕駛、視頻監(jiān)控、刑事偵查等諸多領(lǐng)域受到廣泛關(guān)注。一些早期的行人檢測方法(如HOG檢測器和ICF檢測器)在特征表示、分類器設(shè)計和檢測加速方面為目標檢測技術(shù)奠定了堅實的基礎(chǔ)。近年來一些通用的目標檢測算法,例如Faster RCNN被用于行人檢測,這極大地推動了行人檢測領(lǐng)域的進步。

8.1.1 難點與挑戰(zhàn)

圖8-1.行人檢測存在的難點與挑戰(zhàn)

行人檢測任務(wù)中存在的難點與挑戰(zhàn)可簡要概括為如下四點:

  1. 小尺寸行人

上圖8-1(a)展示了一些小尺寸行人的樣例,在Caltech數(shù)據(jù)集中,據(jù)統(tǒng)計大約15%的行人其高度都小于30個像素點。

  1. 困難負樣本

如上圖8-1(b)所示,由于場景圖像中一些背景在視覺上與行人非常相似,這導(dǎo)致網(wǎng)絡(luò)很難將負樣本進行正確分類,往往會將一些很像行人的背景物體預(yù)測成為行人。

  1. 行人密集且遮擋情況

如上圖8-1(c)所示,由于圖像中多存在行人密集且行人遮擋情況,這導(dǎo)致網(wǎng)絡(luò)難以精準檢測出被遮擋的行人,在Caltech數(shù)據(jù)集中,據(jù)統(tǒng)計行人未遮擋的個體約占行人總數(shù)的29%。

  1. 固有的實時檢測性能

由于一些自動駕駛和視頻監(jiān)控等應(yīng)用需要檢測算法能夠?qū)崟r提供檢測結(jié)果以便系統(tǒng)快速做出決斷,因此視頻的實時行人檢測至關(guān)重要。

8.1.2 解決方法

  1. 改善小尺寸行人檢測

即使Fast/Faster RCNN算法在當時表現(xiàn)SOTA,但由于檢測頭所提取出的低分辨率特征,導(dǎo)致它對小目標的檢測效果并不理想。近年來針對這個問題的一些解決方案包括:1)特征融合[26],2)引入超高分辨率手工提取的特征[27],以及3)在多個分辨率特征圖上集成檢測結(jié)果[28]。

  1. 改善困難負樣本檢測

近年來對于改善困難負樣本的檢測方法主要有:決策樹增強和語義分割[29](作為一種上下文信息引入),此外,還引入了跨模態(tài)學習的思想,通過使用RGB和紅外圖像的方式來豐富困難負樣本的特征[30]

  1. 改善行人密集且遮擋的檢測

CNN中深層的特征具有更豐富的語義信息,但對密集物體的檢測是無效的,為此一些研究學者通過考慮目標的吸引和目標周圍背景的排斥關(guān)系,設(shè)計了一種新的損失函數(shù)[31]。而目標遮擋則是伴隨行人密集所出現(xiàn)的另一個問題,部分檢測器的集成[32]注意力機制[33] 是解決行人遮擋問題最常見的方法。

8.2 人臉檢測

早期的人臉檢測(如VJ檢測器)極大促進了目標檢測的發(fā)展,其中許多檢測思想即使在今天的目標檢測也仍然發(fā)昏這重要作用。目前人臉檢測已應(yīng)用到各行各業(yè),如數(shù)碼相機中的微笑檢測,電子商務(wù)中的刷臉,手機應(yīng)用中的面部化妝等等。

8.2.1 難點與挑戰(zhàn)

圖8-2.人臉檢測存在的難點與挑戰(zhàn)

人臉檢測任務(wù)中存在的難點與挑戰(zhàn)可簡要概括為如下四點:

  1. 人臉姿態(tài)變化大

如上圖8-2(a)所示,人類臉部可能出現(xiàn)各種變化,如表情,膚色,姿勢和運動等變化。

  1. 臉部遮擋問題

如上圖8-2(b)所示,人臉可能被其它物體所遮擋。

  1. 多尺度檢測問題

如上圖8-2(c)所示,在檢測大尺寸人臉的時候,也經(jīng)常要檢測小尺寸的人臉,因此存在多尺度檢測挑戰(zhàn)。

  1. 實時檢測要求

移動設(shè)備上的人臉檢測應(yīng)用還需要在CPU上實現(xiàn)實時檢測的性能。

8.2.2 解決方法

  1. 人臉檢測加速技術(shù)

級聯(lián)檢測[34] 是加速人臉檢測最常用的一種方式。其它的一些加速方法則是通過在一張圖片上預(yù)測出人臉尺度的分布[35],然后在選擇某些尺度進行人臉檢測。

  1. 改善人臉多姿態(tài)和臉部遮擋問題

通過估計校準后的參數(shù)或使用漸進校準技術(shù)可以實現(xiàn)人臉校準,人臉校準是改善多姿態(tài)人臉檢測的主要技術(shù)手段。為了改善臉部遮擋后的人臉檢測,近年來提出了兩種方法:第一個是結(jié)合注意力機制[36],以增強人臉特征;第二個則是使用Detection based on parts[37]來解決人臉遮擋問題,該項技術(shù)借鑒了DPM的思想。

  1. 改善多尺度人臉檢測

改善多尺度人臉檢測的解決方法主要是多尺度特征融合[38]與多分辨率檢測。

8.3 文本檢測

文本檢測的任務(wù)是判斷一張圖片中是否存在文字,若有文字,則需要計算機對圖片中的文字進行定位并識別文字的具體內(nèi)容,所以文本檢測具有兩個子任務(wù):文本定位與文本識別。文本檢測可以幫助視障人士閱讀路牌或貨幣,在地理信息系統(tǒng)中,門牌號和街道標值的檢測與識別也使數(shù)字地圖的構(gòu)建變得更加容易。

8.3.1 難點與挑戰(zhàn)

圖8-3.文本檢測存在的難點與挑戰(zhàn)

文本檢測任務(wù)中存在的難點與挑戰(zhàn)可簡要概括為如下四點:

  1. 字體與語言差異大

如上圖8-3(a)所示,圖像中可能會出現(xiàn)不同字體,顏色和不同語言的文本。

  1. 文本旋轉(zhuǎn)與透視變化

如上圖8-3(b)所示,圖像中可能會出現(xiàn)具有不同視角和方向的文本。

  1. 文本密集

如上圖8-3(c)所示,具有大寬高比和高密集文本的文字導(dǎo)致文本檢測算法難以精確定位。

  1. 字體缺失與模糊
    在街景圖像中,字體的缺失與模糊是經(jīng)常存在的一個問題。

8.3.2 解決方法

  1. 改善文本旋轉(zhuǎn)和透視變化

對此問題最常見的方法是在Anchor box中,和通過旋轉(zhuǎn)與透視變化分區(qū)[39] 的ROI引入額外的參數(shù)。

  1. 改善文本密集檢測問題

基于分割的方法在密集型檢測任務(wù)中展現(xiàn)了許多優(yōu)勢,為了區(qū)分相鄰的文本行,近年來一些研究學者提出了兩種解決方案:第一個是段連接方法[40],其中段指的是字符熱圖,而連接指的是兩個相鄰段之間的連接,這表明它們屬于同一單詞或文本行;第二個是增加一個額外的邊界檢測任務(wù)[41] 來幫助分離密集排列的文本。

  1. 改善字體缺失與模糊問題

處理字體缺失與模糊問題的最近解決方案是使用單詞或句子級別的識別[42],而處理不同字體的文本,最有效的方法是使用合成樣本[43]進行訓(xùn)練。

8.4 交通信號檢測

隨著自動駕駛技術(shù)的發(fā)展,交通標志和紅綠燈的自動檢測近年來備受關(guān)注。對于像交通燈和交通標志這樣的固定場景的標志檢測,仍然具有不小的挑戰(zhàn)。

8.4.1 難點與挑戰(zhàn)

圖8-4.交通標志檢測存在的難點與挑戰(zhàn)

交通標志檢測任務(wù)中存在的難點與挑戰(zhàn)可簡要概括為如下四點:

  1. 照明變化

如上圖8-4(a)所示,當夜晚或者有強烈光照的時候,交通標志的檢測將變得異常困難。

  1. 標志模糊

如上圖8-4(b)所示,由于車輛在高速行駛的時候所拍攝出來交通標志照片會出現(xiàn)模糊的情況。

  1. 天氣變化導(dǎo)致問題
    如上圖8-4(c)所示,在一些雨雪天氣,車輛所拍攝的交通標志圖片質(zhì)量會大大下降,導(dǎo)致檢測困難。

  2. 實時檢測

交通標志的檢測對于自動駕駛非常重要,所以此任務(wù)需要有很高的實時性能。

8.4.2 解決方法

在深度學習時代,一些經(jīng)典的檢測算法如Faster RCNN和SSD被應(yīng)用于交通標志/燈光的檢測任務(wù),而后在這些檢測算法的基礎(chǔ)上,出現(xiàn)的一些新技術(shù),如注意力機制[44]對抗性訓(xùn)練[45],已被用于改進復(fù)雜交通環(huán)境下的算法檢測性能。

8.5 遙感目標檢測

近年來,隨著遙感圖像分辨率的提高,遙感圖像目標檢測(如飛機、船舶、油罐等的檢測)成為研究熱點,遙感圖像目標檢測具有廣泛的應(yīng)用,如軍事偵查、災(zāi)害救援、城市交通管理等等。

8.5.1 難點與挑戰(zhàn)

圖8-5.遙感目標檢測存在的難點與挑戰(zhàn)

交通標志檢測任務(wù)中存在的難點與挑戰(zhàn)可簡要概括為如下四點:

  1. 遙感圖像分辨率巨大

如上圖8-5(a)所示,由于遙感圖像分辨率巨大,因此如何快速準確的檢測出遙感目標仍然是一個挑戰(zhàn)性的問題。

  1. 目標遮擋問題

如上圖8-5(b)所示,超過50%的目標被云霧所遮擋,因此目標遮擋問題也是遙感圖像目標檢測所面臨的一個挑戰(zhàn)。
3.  域適應(yīng)問題

由不同傳感器所捕獲的遙感圖像仍然存在很大差異。

8.5.2 解決方法

在2014年RCNN取得巨大成功后,深度卷積神經(jīng)網(wǎng)絡(luò)很快便應(yīng)用于遙感圖像目標檢測,之后通用目標檢測網(wǎng)絡(luò)Faster RCNN和SSD的提出,吸引了一大批研究學者將越來越多的注意力集中到遙感圖像目標檢測中。

為了檢測不同方向的目標,一些研究人員改進了ROI池化層[46],以獲得更好的旋轉(zhuǎn)不變性;為了提高領(lǐng)域適應(yīng)性,一些研究人員會從貝葉斯的角度[47]進行檢測,從而在檢測階段,模型會基于測試圖像的分布完成自適應(yīng)更新。此外,注意力機制和特征融合策略也被用于改進小目標檢測[48]問題。

9. 七大發(fā)展趨勢

在過去的十幾年里,目標檢測取得了顯著的成就。本文不僅回顧了一些具備里程碑意義的檢測算法(例如VJ檢測器、HOG檢測器、DPM、Faster-RCNN、YOLO、SSD等)、關(guān)鍵技術(shù)、加速方法、檢測應(yīng)用、數(shù)據(jù)集和指標;還討論了檢測任務(wù)所遇到的幾大挑戰(zhàn),以及如何解決這幾大挑戰(zhàn)作了充分討論。在未來的一些研究工作中,目標檢測領(lǐng)域可能主要呈現(xiàn)以下七大發(fā)展趨勢:

9.1 輕量型目標檢測

為了加快目標檢測的推理速度并使其能夠在移動設(shè)備上快速流暢的運行,比如在一些重要的應(yīng)用:增強現(xiàn)實、智能相機、人臉驗證等等,近年來一些研究學者為此做了大量的努力,但目前的一些檢測算法速度仍然較慢。這將導(dǎo)致工業(yè)界不得不花費更多的資金來購買算力更高的設(shè)備去運行該檢測算法,這在一定程度上阻礙了檢測算法的落地進程。因此檢測算法在未來的一個發(fā)展趨勢中,輕量快速且高精度是目標檢測永恒的主題。

9.2 與AutoML結(jié)合的目標檢測

近年來基于深度學習的檢測算法變得越來越復(fù)雜且嚴重依賴于經(jīng)驗設(shè)計,為了在使用神經(jīng)架構(gòu)搜索NAS技術(shù)設(shè)計檢測算法時減少人為參與(如何設(shè)計檢測算法的Backbone,如何設(shè)計先驗框等等),未來的一個發(fā)展方向就是將目標檢測與AutoML技術(shù)結(jié)合,因此AutoML可能是目標檢測的未來。

9.3 領(lǐng)域自適應(yīng)的目標檢測

任何目標檢測算法的訓(xùn)練過程本質(zhì)上都可以看成數(shù)據(jù)在獨立同分布(i.i.d.)下的似然估計過程,而對于不滿足(i.i.d.)的目標檢測數(shù)據(jù)(特別是對于一些現(xiàn)實世界的應(yīng)用程序)仍然是一個挑戰(zhàn),GAN在領(lǐng)域自適應(yīng)方面已經(jīng)顯示出 了強大的效果,這對于目標檢測技術(shù)來講應(yīng)該具有很大的促進作用。

9.4 弱監(jiān)督目標檢測

基于深度學習檢測算法的訓(xùn)練通常依賴于大量高質(zhì)量標注的圖像數(shù)據(jù)集,而標準過程通常比較耗時且效率低下。運用弱監(jiān)督目標檢測技術(shù),可以使檢測算法使用部分邊界框標注的數(shù)據(jù)集進行訓(xùn)練,因此弱監(jiān)督技術(shù)對于降低人力成本和提高檢測靈活性非常重要。

9.5 小目標檢測

在場景圖像中檢測小目標一直是目標檢測領(lǐng)域長期以來所面臨的一個挑戰(zhàn),小目標檢測研究方向的一些潛在應(yīng)用包括:利用遙感圖像統(tǒng)計野生動物的數(shù)量,和檢測一些重要軍事目標的狀態(tài),因此如何解決小目標問題一直是研究者研究的熱點。

9.6 視頻檢測

高清視頻中的實時目標檢測/跟蹤對于視頻監(jiān)控和自動駕駛具有重要意義,現(xiàn)有的目標檢測算法通常是為單張圖像的物體檢測而設(shè)計的,而忽略了視頻幀與幀之間的相關(guān)性,通過探索視頻幀序列之間的空間和時間相關(guān)性來改善檢測性能是一個重要的研究方向。

9.7 信息融合目標檢測

具有多種數(shù)據(jù)源(多模態(tài),例如RGB-D圖像、3d 點云、激光雷達等)的目標檢測對于自動駕駛和無人機應(yīng)用非常重要,一些未解決的問題包括:如何將訓(xùn)練好的的檢測模型遷移到不同模態(tài)的數(shù)據(jù)中,如何通過信息融合以改進檢測性能等也是未來發(fā)展的一個重要研究方向。

總結(jié)

本文介紹了傳統(tǒng)目標檢測算法到基于深度學習的目標檢測算法發(fā)展進程,詳細介紹了基于CNN目標檢測算法發(fā)展的三條技術(shù)路線:一階段、二階段和Anchor free的檢測算法,同時分析了為了提高檢測模型精度和速度,近年來所出現(xiàn)的一些技術(shù)及其演變歷程,最后本文簡單介紹了目標檢測的幾大應(yīng)用場景及其未來發(fā)展的趨勢。希望本文能幫助各位讀者在目標檢測領(lǐng)域構(gòu)建一個清晰的知識體系架構(gòu),并在目標檢測發(fā)展的快車道上盡快找到屬于自己的研究方向并有所建樹!

References

[1] Rapid object detection using a boosted cascade of simple features
[2] Histograms of oriented gradients for human detection
[3] A discriminatively trained, multiscale, deformable part model
[4] Rich feature hierarchies for accurate object detection and semantic segmentation
[5] Spatial pyramid pooling in deep convolutional networks for visual recognition
[6] Fast r-cnn
[7] Faster r-cnn: Towards real-time object detection with region proposal networks
[8] Feature pyramid networks for object detection
[9] Cascade R-CNN: Delving into High Quality Object Detection
[10] You only look once: Unified, real-time object detection
[11] SSD: Single shot multibox detector
[12] YOLO9000: better, faster, stronger
[13] Focal loss for dense object detection
[14] Yolov3: An incremental improvement
[15] Yolov4: Optimal speed and accuracy of object detection
[16] Cornernet: Detecting objects as paired keypoints
[17] Centernet: Keypoint triplets for object detection
[18] Feature selective anchor-free module for single-shot object detection
[19] Fcos: Fully convolutional one-stage object detection
[20] Soft Anchor-Point Object Detection
[21] http://host.robots.ox.ac.uk/pascal/VOC/
[22] http://image-net.org/challenges/LSVRC/
[23] http://cocodataset.org/
[24] https://storage.googleapis.com/openimages/web/index.html
[25] https://cloud.tencent.com/developer/article/1624811
[26] Is faster r-cnn doing well for pedestrian detection\?
[27] What can help pedestrian detection\?
[28] Pushing the limits of deep cnns for pedestrian detection
[29] Pedestrian detection aided by deep learning semantic tasks
[30] Learning cross-modal deep representations for robust pedestrian detection
[31] Repulsion loss: Detecting pedestrians in a crowd
[32] Jointly learning deep features, deformable parts, occlusion and classification for pedestrian detection
[33] Occluded pedestrian detection through guided attention in cnns
[34] Joint face detection and alignment using multitask cascaded convolutional networks
[35] Scale-aware face detection
[36] Face attention network: An effective face detector for the occluded faces
[37] Faceless-net:Face detection through deep facial part responses
[38] Faceless-net:Face detection through deep facial part responses
[39] Arbitrary-oriented scene text detection via rotation proposals
[40] Deep matching prior network: Towardtighter multi-oriented text detection
[41] Multi-oriented scene text detection via corner localization and region segmentation
[42] Attention-based extraction of structured information from street view imagery
[43] Reading text in the wild with convolutional neural networks
[44] Traffic signal detection and classification in street views using an attention model
[45] Perceptual generative adversarial networks for small object detection
[46] Rotated region-based cnn for ship detection
[47] Random access memories: A new paradigm for target detection in high resolution aerial remote sensing images
[48] Fully convolutional network with task partitioning for inshore ship detection in optical remote sensing images

如果覺得有用,就請分享到朋友圈吧!

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
目標檢測二十年 | 干貨(20180319更新)
干貨|深度學習目標檢測的主要問題和挑戰(zhàn)!
一位算法工程師從30+場秋招面試中總結(jié)出的超強面經(jīng)——目標檢測篇(含答案)
霸榜 GitHub:又一款神器面世!
雙向特征融合的數(shù)據(jù)自適應(yīng)SAR圖像艦船目標檢測模型
目標檢測 - 常見目標檢測算法大匯總
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服