Deep Learning for Generic Object Detection: A Survey

Abstract

通用對象檢測,旨在從自然圖像中的大量預定義類別定位對象物體,是計算機視覺中最基本和最具挑戰性的問題之一。 近幾年來,深度學習技術成爲了直接從數據中學習特徵表示的有力方法,並在通用對象檢測領域取得了顯着的突破。 鑑於這個快速發展的時代,本文的目標是對深度學習技術帶來的這一領域的最新成就進行全面的研究。本調查包括250多個關鍵貢獻,涵蓋了通用對象檢測重新搜索的許多方面:領先的檢測框架和基本子問題,包括對象特徵表示,對象proposals生成,上下文信息建模和訓練策略; 評估問題,特別是基準數據集,評估指標和最先進的性能。 我們通過確定未來研究的有希望的方向來完成。

Keywords:物體檢測·深度學習·卷積神經網絡·物體識別

1.引言

作爲計算機視覺中長期存在的,具有根本性和挑戰性的問題,物體探測幾十年來一直是一個活躍的研究領域。 物體檢測的目的是確定在某些給定圖像中是否存在來自給定類別(例如人,汽車,自行車,狗和貓)的物體的任何實例,並且如果存在,則返回空間位置和外部每個對象實例(例如,通過邊界框)。作爲圖像理解和計算機視覺的基石,物體檢測構成了解決更復雜或更高級視覺任務的基礎,例如分割,場景理解,對象跟蹤,圖像捕獲,事件檢測和活動識別。 物體檢測在人工智能和信息技術的許多領域具有廣泛的應用,包括機器人視覺,消費電子,安全,自動駕駛,人機交互,基於內容的圖像檢索,智能視頻監控和增強現實。

最近,深度學習技術已經出現了用於從數據自動學習特徵表示的有力方法。 特別是,這些技術爲物體檢測提供了顯着的改進,這一問題在過去五年中引起了極大的關注,儘管它已被心理物理學家,神經科學家和工程師研究了數十年。對象檢測可以分爲兩類:特定實例的檢測和特定類別的檢測。 第一種類型旨在檢測特定項目的實例(例如唐納德特朗普的臉,五角大樓的建築物),而第二種類型的目標是檢測預定義對象類別的不同實例(例如人類),從歷史上看,物體檢測領域的大部分工作都集中在檢測單個類別(如面孔和行人)或一些特定的類別。 相比之下,在過去幾年中,研究領域已經開始朝着建立一般目標物體檢測系統的挑戰性目標邁進,這些物體檢測系統的物體檢測能力的廣度可與人類相媲美。然而在2012年,Krizhevsky等人。提出了一種名爲Alex Net的DeepConvolutional神經網絡(DCNN),它在大規模視覺識別挑戰賽(ILSRVC)中實現了記錄圖像分類準確性。 從那時起,研究焦點在許多計算機視覺應用領域已經深入學習。 基於深度學習的許多方法在通用對象檢測中如雨後春筍般涌現,並取得了巨大的進步,但我們在過去的五年中對這一主題進行了全面的調查。 鑑於這個快速發展的時代,本文的重點特別是深度學習的通用對象檢測,以便在通用對象檢測中獲得更清晰的全景。

通用對象檢測問題本身定義如下:給定任意圖像,確定是否存在來自預定義類別的語義對象的任何實例,並且如果存在,則返回空間位置和範圍。 對象指的是可以看到和觸摸的物質。 儘管通常對象類檢測具有同義詞,但通用對象檢測更加強調旨在檢測廣泛範圍的自然類別的方法,而不是對象實例或特定類別(例如,面部,行人或汽車)。 

1.1 與先前的總結相比較

除了張等人的工作以外,最近的調查很少直接關注一般物體檢測的問題。他們進行了關於對象類檢測主題的調查。 然而在其相關論文中大多是2012年之前的研究,這明顯是在深度學習和相關方法取得更多成功之前。

深度學習允許由多個層次結構層組成的計算模型來學習極其複雜,微妙和抽象的表示。 在過去幾年中,深度學習在廣泛的問題上取得了重大進展,如視覺識別,物體檢測,語音識別,自然語言處理,醫學圖像分析,藥物發現和基因組學。 在不同類型的深度神經網絡中,深度卷積神經網絡(DCNN)在處理圖像,視頻,語音和音頻方面帶來了突破。

儘管已經提出了許多基於深度學習的方法用於物體檢測,但我們並未看到過去五年中該主題的綜合性研究,而這也是該研究的重點。 對現有工作進行全面審查和總結對於物體檢測的進一步發展至關重要,特別是對於希望進入該領域的研究人員而言。 

1.2 分類方法

自深入學習以來發表的關於通用對象檢測的論文數量令人歎爲觀止。 事實上,如此多的人編寫了對現有技術的綜合評論,並提出了像這樣的論文的可能性。 有必要建立一些選擇標準,例如, 論文的完整性和對該領域的重要性。 我們傾向於包括頂級的期刊、會議論文。 由於空間和知識的限制,我們誠摯地向那些作品未包含在本文中的作者道歉。 對於相關主題的調查,讀者可參考表1中的文章。該調查主要關注過去五年取得的主要進展; 但是,爲了完整性和更好的可讀性,還包括一些早期的相關工作。 我們將自己侷限於靜態圖片,並將視頻對象檢測作爲一個單獨的主題。

本文的其餘部分安排如下:

相關背景,包括問題,主要挑戰和過去二十年取得的進展在第2節中進行了總結。

我們在第3節中描述了里程碑對象檢測器。

第4節介紹了設計對象檢測器所涉及的基本問題和相關問題。

流行數據庫和最先進的性能總結在5中給出。

在第6節中討論了幾個有希望的方向。


2.背景

2.1 問題

通用對象檢測(即,通用對象類別檢測),也稱爲對象類檢測或對象類別檢測,定義如下:給定圖像,通用對象檢測的目標是確定是否存在來自許多預定義類別的對象的實例,並且如果存在,則返回每個實例的空間位置和範圍。 它強調重視檢測廣泛的自然類別,與特定對象類別檢測相反,其中可能只存在較窄的預定義類別(例如,面部,行人或汽車)。 雖然成千上萬的物體佔據了我們生活的視覺世界,但目前研究界對高度結構化物體(例如汽車,面孔,自行車和飛機)的定位以及鉸接(例如,人,牛和其他人)非常感興趣。 而不是非結構化的場景(如草和雲)。

通常,可以使用邊界框粗略地定義對象的空間位置和範圍,即,軸對齊的矩形緊密地界定對象,精確的像素分段掩模,或者封閉的邊界,據我們所知,在目前的文獻中,邊界框更廣泛地用於評估通用對象檢測算法,並且將是我們在該調查中採用的方法。 然而,社區正朝着深層場景的方向發展(從圖像級對象分類到單個對象定位,再到通用對象檢測,再到像素級對象分割),因此預計未來的挑戰將超過像素級。

有許多與通用對象檢測密切相關的問題。對象分類或對象分類的目標,是從圖像中的對象類的數量來評估對象的存在; 即將一個或多個對象類標籤分配給給定圖像,確定存在而不需要位置。 很明顯,在圖像中定位實例的附加要求使得檢測比分類更具挑戰性。 對象識別問題表示查找和識別圖像中存在的感興趣對象的更普遍的問題,包括對象檢測和對象分類的問題。

通用對象檢測與語義圖像分割密切相關,其目的是將圖像中的每個像素分配給語義類標籤。 對象實例分割旨在區分同一對象類的不同實例,而語義分割不區分不同實例。 通用對象檢測還區分同一對象的不同實例。 與分割不同,對象檢測包括邊界框中可能對分析有用的背景區域。

2.2 主要挑戰

通用對象檢測旨在定位和識別廣泛的自然對象類別。 通用對象檢測的理想目標是開發通用對象檢測算法,實現兩個相互競爭的目標:高質量/高精度和高效率,高質量檢測具有準確地定位和識別圖像或視頻幀中的對象,以便可以區分現實世界中的各種對象類別(即,高度獨特性),以及來自同一類別的對象實例,受制於外觀的外觀變化 ,可以被本地化和識別(即,高穩健性)。 高效率要求整個檢測任務以足夠高的幀速率運行,並具有可接受的內存和存儲使用。 儘管幾十年的研究取得了重大進展,但可以說,準確性和效率的綜合目標尚未實現。

對於後者,變化是由成像條件的變化和不受約束的環境引起的,這可能對物體外觀產生巨大的影響。 特別是,可以根據大量差異捕獲不同的實例,甚至相同的實例:不同的時間,位置,天氣條件,相機,背景,照明,視點和觀察距離。 所有這些條件都會在物體外觀上產生顯着的變化,例如照明,姿勢,比例,遮擋,背景雜波,陰影,模糊和運動,通過數字化僞像,噪聲損壞,分辨率差和濾波失真可能會增加進一步的挑戰。

除了類內變化之外,大量的對象類別(大約10^{4}-10^{5})要求檢測器具有很大的區分能力以區分細微不同的類間變化,如圖所示。 在實踐中,當前的研究者主要關注結構化對象類別,例如PASCAL VOC ,ILSVRC和MS COCO中的20,200和91個對象類別。 顯然,現有基準數據集中所考慮的對象類別的數量遠小於人類可識別的對象類別。

2.2.2與效率相關的挑戰

指數增加的圖像數量需要高效且可擴展的探測器。 社交媒體網絡和移動/可穿戴設備的普及導致了對可視化數據進行分析的不斷增長的需求。 然而,移動/可穿戴設備具有有限的計算能力和存儲空間,在這種情況下,有效的物體檢測器是關鍵的。

2.2.1與準確性相關的挑戰

對於準確性而言,挑戰源於廣泛的類內變異和大量的對象類別。

我們從組內變異開始,可以分爲兩類:內在因素和成像條件。

對於前者,每個對象類別可以具有許多不同的對象實例,可能在顏色,紋理,材料,形狀和大小中的一個或多個方面變化,例如圖中所示的“椅子”類別。 即使在一個更狹義的類別中,例如人或馬,物體也會出現在不同的姿勢中,具有非剛性變形和不同的外觀。

爲了提高效率,挑戰源於需要局部化和識別大量對象類別的所有對象實例,以及單個圖像中非常多的可能位置和比例,如圖中的示例所示。 進一步的挑戰是可擴展性:探測器應該能夠處理看不見的對象,未知情況和快速增加的圖像數據。 例如,ILSVRC 的規模已經對可獲得的手動註釋施加了限制。 隨着圖像數量和類別數量增加甚至更大,可能無法對其進行人工註釋,迫使算法更多地依賴於弱監督的訓練數據。

2.3 過去20多年的成就

在1990以前,物體識別主要基於圖像object外觀來進行模型識別,在這之後才由Neural Network、SVM、Adaboost等算法引領的模型使得該研究領域從幾何學時代向統計學分類時代的轉變。

20世紀初,是物體識別領域的大發展時期,其中SIFT和DCNN是里程碑事件,局部特徵提取大行其道,包括SIFT、Shape Contexts、Histogram of Gradients (HOG) 以及 Local Binary Patterns (LBP)等等算法都有了較大的發展 。

自2012年,DCNN的出現才最終打破了基於多線程人工提取特徵分類器的局面,更是直接導致了由圖像分類向物體檢測領域的革命性改革。同時在此發展過程中,CPU計算性能的提高也有莫大的助益。

最後文章指出,研究學們的目標就是搭建起一個穩健、高效、準確率高的可以與人類物體識別能力相媲美的模型,儘管其難度很大。


3.框架

雖然已經產生了如上文所述的各種算法,但是相比之下,滑動窗口的方法還是主流,但與此同時,隨着圖像像素的增加,滑動窗口的數量也會呈現指數型增加的趨勢,多尺度搜索和縱橫比需要也會進一步增加搜索空間,由此就會產生計算資源的問題,因此設計等高效的模型就是一個非常重要的任務。由此,模型串聯、特徵值共享、減少前置窗口計算量等方式就被吸收進各種模型中。

近些年來的一些模型就是從之前各種里程碑式的魔性的基礎上發展起來的,廣而泛之,這些分類器可以被簡單的分成兩大類:

1.兩階段檢測模型:其中包括區域的預處理階段

2.一階段檢測模型:並不對區域特徵進行預處理,使其還是一個統一的檢測模型


 

3.1 基於區域的二階段模型

在此模型方法中,類別獨立區域的方法被提出,同時CNN特徵提取的方式也是由這些區域產生。特定類別分類器用於確定類別標籤Detector Net、Over Feat 、Multi Box和RCNN等在CNN的基礎上幾乎同時提出的獨立分類器被用於一般物體檢測的項目中。 

RCNN:受激勵於由CNN的圖像分類結果的巨大成就以及基於手工提取特徵的區域選擇的成功。Girshick 等人所提出的RCNN結合了區域選擇性搜索方法和AlexNet,而這個RCNN模型就包括了多階段的處理過程。

1. 不確定類別的區域方法: 包含了選擇性搜索方法,其中可能包含對象的候選區域;

2.區域方法: 該方法將圖像裁剪和扭曲成相同的大小, 作爲輸入, 同時通過使用諸如ImageNet等大規模數據集的預訓練以微調 CNN 模型;

3.利用 CNN 提取的固定長度特徵, 對一組類特定的線性 SVM 分類器進行了訓練, 替換了微調所學到的Softmax分類;

4.由每個對象類所具有的CNN特徵進行產生特徵迴歸Box。

當然,RCNN也有其自身的缺點:

1.訓練過程是多進程而且相當複雜的, 同時因爲每個階段都必須單獨訓練,所以RCNN並不是很文雅、計算速度也比較緩慢並且難以優化;

2.許多區域方法只提供粗略的定位,後續還需要額外檢測.

3.訓練 SVM 分類器和邊界迴歸Box在磁盤空間和時間上都是消耗巨大的, 因爲CNN的特點是獨立於每張圖像中的每個區域所提取出來的, 對大規模的檢測, 尤其是非常深的 cnn, 這就成了巨大的挑戰。

4.測試速度很慢, 因爲每個測試圖像中每個對象都需要提取 CNN 特徵。

SPPNet:在測試過程中,RCNN的主要瓶頸是CNN特徵提取,He等人在CNN算法中引入了SPP(Spatial Pyramid Pooling),由此CNN網絡的輸入可以爲任意尺寸,但是全連接層還是需要標準尺寸。並且SPP是加在全連接層的上層的,用以獲取FC層的固定長度信息。引入SPP的RCNN網絡,在不損失檢測精度的情況下提高了效率。但是它並沒有在訓練過程中提高有效速度,同時微調的SPPNet不能夠在CNN網絡中SPP層之前對其進行修正,此舉也正限制了該網絡的檢測準確度。

FastRCNN:FastRCNN採用了基於跨區域的卷及計算共享的方法,通過在最後的卷積層和FC層之間加入RoI層的方式來獲取基於每個Region的固定長度大小的特徵。事實上,RoI池化利用基於特徵層上的彎曲來形成圖像的彎曲,而經過RoI處理的特徵圖將以向量的形式被喂到最後的FC層,並最終形成兩個輸出層:基於物體檢測的Softmax概率模型和用於方法調整的特殊類別的Box迴歸模型。對比RCNN和SPPNet,FastRCnn大大提高了效率,大約在訓練過程中提速了2倍,在測試過程中提速了9倍。總而言之,FastRCNN擁有更高的物體檢測準確度、能夠更新網絡所有權值的單階段訓練過程以及不需要額外的特徵存儲空間。

FasterRCNN:儘管FastRCNN擁有較爲出色的物體檢測效率,但是它始終依賴着額外的Region Proposals,這也因此成爲FastRCNN最大的瓶頸,最新研究表明,CNNs能夠在最後一層卷積過程中很好的對物體進行定位,而在FC層中,這種能力稍欠。因此Region Porposals的選擇性研究完全可以用CNNs進行代替,於是FasterRCNN應運而生,研究學們提出一個高效且準確率高的Region ProposalNetwork (RPN)方法進行Region Proposals提取,FasterRCNN利用單個網絡完成RPN提取Region Proprsals的任務,然後利用Fast RCNN進行目標分類。同時RPN和Fast RCNN共享大量的卷積層,最後一個共享卷積層的特徵用於從分開的分支中提取Region Proposals和進行區域分類。RPN首先在不同的特徵圖上初始化不同尺度的k個n*n參照Boxs,每個n*n的anchor被映射成更低維的向量後被傳入到兩個FC層(物體分類和Box迴歸),與FastRCNN不同,在RPN中所用來進行迴歸的特徵是具有相同尺寸的,RPN與FastRCNN共享特徵向量,由此可以使得Region Proposal計算速度加快。實際上,RPN是一種全連接網絡,因此FasterRCNN是一種並不採用人工提取特徵的單純的CNN基本框架。對於網絡非常深的VGG16的模型,FasterRCNN 在 GPU 上測試 可以達到5fps的速度 (包括所有步驟),同時通過提取的每張圖片近300個Proposals的方式打破了2007年PASCAL VOC的藝術性物體檢測的精確度。

同時隨着快速 RCNN 的發展, Lenc 和 Vedaldi 研究了選擇性搜索區域方案生成方法的作用, 研究了區域方案生成在 CNN 探測器中的作用。經研究發現在CNNs中在CONV層中包含了比FC層中更多對於準確進物體檢測的高效的幾何學特徵。他們證明了單純利用CNN網絡(移除了諸如像選擇性查找等Region Proposal生成方法)構建一個集成化更高、速度更快、更簡單的物體檢測識別模型的可能性。

RFCN (Region based Fully Convolutional Network): 雖然FasterRCNN在按照運算級的順序上要快於FastRCNN,但是事實上區域智能子網還是需要應用前置的ROI(每幅圖片有好幾百個RoIs),RFCN 探測器是完全卷積模型(沒有隱藏 FC 層) ,幾乎在整個圖像上進行計算共享,正如圖8所示,RFCN和RCNN之間的不同之處僅在於RoI子網絡,在FasterRCNN模型中,在ROI池化層之後的計算是不能夠進行共享的,一個自然的想法是儘量減少無法共享的計算量。因此Dai等人提出全部利用Convs層建立共享型ROI子網絡以及在預測之前從最後一層 CONV 特徵中取走ROI部分的模型。然而這種設計大大降低了物體檢測準確度,他們由此猜測更深層次的Conv網絡對於分類高度敏感,而對於轉化翻譯比較不敏感,而對象檢測需要重視轉換差異的表示。基於觀察,Dai等人通過使用專門的 CONV 層作爲 FCN 輸出構造了一組位置敏感評分圖, 與標準的ROI池化層不同,Dai等人將其加載至對位置敏感的ROI層之上。他們表示, 引入Res Net101的RFCN擁有可以與FasterRCNN相媲美的精確度,同時擁有更快的運行速度。

Mask RCNN:順應概念簡化、高效、靈活性的精神,He等人提出的基於拓展FasterRCNN的Mask RCNN來處理基於像素的物體實例分割模型。Mask RCNN依然採用了連接段處理模型,第一階段仍然是RPN,而在第二階段,模型同時預測類和框的偏移量。MASK RCNN 添加一個分支, 用於爲每個 ROI 輸出二進制MASK,而新的分支是建立在特徵圖之上的全連接網絡,爲了避免原始ROI池化層所帶來的失衡,於是研究人員提出了整合ROI的概念,將其用於保存像素級別的空間上的信息互通,在以Res Ne Xt101-FPN網絡爲主體網絡架構的Mask RCNN網絡達到了在COCO數據集上的物體實例分割和邊緣物體檢測最好的效果,總而言之Mask RCNN是一個訓練簡單, 推廣容易, 並與FasterRCNN相比僅僅只增加一個小的開銷的網絡模型,而且其運行速度在 5fps左右。

Light Head RCNN:爲了進一步加快RFCN網絡模型的運行速度,Li等人提出了Light Head RCNN模型。使得用於檢測的網絡部分儘可能做成輕量級,以減少ROI部分的計算量,Li等人應用了一個大的內核可分離卷積, 以產生小通道數和更輕量級的 RCNN 子網,使得在實驗過程中形成了在速度和精確度之間的良好的平衡狀態。


3.2 一階段模型

雖然在RCNN誕生以來,其在物體檢測領域的基準長久不衰,但是其基於Region的計算量也是十分巨大的,這就給本身就受限於存儲和計算能力的設備帶來極大的不便,因此預期升級個人設備,倒不如設計出一種基於單一進程的物體檢測算法模型。

一階段模型廣泛地指的是從一幅圖像中直接預測類概率和邊界框偏移量的體系結構, 該網絡不涉及Region Proposal生成或信息分類。這種方法簡單、機智,因爲其完全剔除了Region Proposals的生成部分和併發的像素或特徵重組的過程,只在一個網絡中就封裝了所有的運算過程,由於整個檢測模型是單個網絡, 因此可以直接對檢測性能進行端到端優化。

Detector Net:Detector Net將物體檢測定義爲一個對象邊界框Mask的迴歸問題。他們利用了AlexNet並且將最終的softmax層替換成一個迴歸層,給定一個圖像滑動窗口,他們使用一個網絡來預測粗糙網格上的前景像素, 以及利用四個額外的網絡來預測對象的上、下、左和右半部分。而之後的分組過程就是將預測的MASK轉換爲檢測到的邊界框。每個對象類型和Mask類型都需要訓練網絡。它不擴展到多個類,Detector Net必須採用許多組圖像, 並且每一張圖的每一個部分都需要多個網絡進行分類計算。

Over Feat:Over Feat是通過 CNN 網絡工作, 在多尺度滑動窗口中執行目標檢測任務,該模型(除了最後的分類層和迴歸層之外)只有卷積層,這樣在圖像重疊的部分就自然而言地進行權值共享,Over Feat產生一個網格的特徵向量,每一個向量都或多或少的表示對於輸入圖像的不同的視野定位信息,並且能夠預測和判斷物體是否存在。一旦物體被確認存在,該圖像的同樣的特徵就是被用來對單輪廓Box進行迴歸預測。Over Faet算法利用多尺度特徵來提高整體性能, 通過網絡傳遞多達六倍放大規模的原始圖像, 並迭代聚合在一起,這就導致的計算上下文視圖數量(最終特徵向量)顯著增加,相較於同期產生的RCNN,Over Feat有着明顯的速度優勢,而因爲在單一階段的處理中很難訓練全連接網絡,因此Over Feat有着明顯的準確度缺失的缺點。

YOLO (You Only Look Once):YOLO是一個單一進行的分類器,將物體檢測認爲是從圖像像素到空間分離的邊界Box以及獨立類別概率模型映射的一種迴歸問題,YOLO直接利用簡單的一系列小的候選Regions進行預測,不同於RCNN,YOLO的預測是基於局部Region的,其利用的是源自於整張圖片的特徵,特別的,YOLO將圖片劃分成S*S的小方格,對每一個小方格的類別C進行概率值計算、B邊緣BOX預測和對於這些Boxs的置信值計算。這些計算被統一成S×S×(5B + C) 格式的張量,YOLO是一個及其快的設計模型,因爲YOLO進行預測時關注於整張圖片,它隱晦的編碼關於物體分類的上下文信息,不太可能在背景上預測負正例,而YOLO的定位錯誤主要源自於粗糙的邊緣Box定位劃分,尺度以及橫縱比。YOLO有可能會定位失敗,尤其是針對小型物體,可能的原因有小格子的劃分是粗略的,或者因爲每一個小格子都只包含了一個object對象。

YOLOv2 and YOLO9000:該模型採納了許多已經存在的各種工作,像Batch Normalnation、移除全連接網絡、利用通過Kmeans方法或者多尺度訓練等方式形成的anchors boxes等,這兩種方法都取得了當時較爲不錯的成績,其中YOLO9000通過提出聯合優化方法, 在ImageNet和COCO兩個數據集上同時進行多源數據組合, 可以實時檢測到9000多個對象類別。

SSD (Single Shot Detector):類似於YOLO,SSD預測這些BOXes中存在對象類的固定框數和分數, 然後是一個 NMS 步驟來生成最終檢測。SSD中的CNN網絡都是全聯接的,其前一層是基於像VGG模型算法(在任何層直接產生截斷)作爲基礎網絡的,然後, 幾個輔助 CONV 層, 逐漸減少的大小, 被添加到基礎網絡的末尾,而在最後一層中由於低解析度信息導致模型過於粗糙以至於不能夠準確地進行定位,所以SSD採用高解析率的隱藏層對小物體進行檢測,而對於不同尺度的圖像,SSD 通過在多個 CONV 特徵映射上的操作來執行多尺度檢測,每一次操作都預測適當大小的邊界框的分類分數和方框偏移量。對於一個300*300的輸入,SSD在Nvidia Titan X的計算機上,在VOC2007的比賽中,實現了以59fbs的速度達到了74.3%的效果。


4.基本子問題

4.1 基於物體表示的DCNN

作爲模型的一種重要組件,特徵表示在物體檢測中佔據重要的位置,以前,主要專注設計輸入圖像的原始描述或開發方法探索將描述分組和抽象爲更高層次表示的方法, 以使得判別對象部分出現。

相比之下,像深度CNN網絡、DCNN等由多個處理層相結合的而成的通過直接對行圖像進行多層處理計算就可以得到較爲有效的特徵,所以對於深度學習網絡而言,學習過程減少了對於傳統特徵工程所需的特定領域知識和複雜程序的依賴性, 特徵表示的負擔轉移到更好的網絡結構設計中。

下面作者綜合闡述了由於CNN網絡在物體檢測目標中的廣泛應用和良好效果,因此本文團隊綜合研究了CNN網絡在一般物體識別領域的各種模型設計和效果,同時也關注特徵提取方面的成就。

4.1.1 CNN網絡結構的流行趨勢

作爲物體檢測識別領域的基石,是由一系列的卷積層、非線性激活層、池化層等各種“等級森嚴”的層次構成,從細到粗層, 圖像反覆進行濾波卷積, 並且每經過一層,濾波器的數量就會增加。

介紹了下AlexNet的性能和結構

è¿éåå¾çæè¿°

當下的流行趨勢是網絡的深度不斷增加,AlexNet一共8層,VGGNet一共16層,Res Net和Dense Net均擴展到了100層,這表示更深層次能夠更好地提取圖像特徵,有趣的是,像Alex Net, Over Feat, ZFNet和VGGNet等網絡,儘管層數很少,深度也不高,但是它又大量的參數,這是因爲大量的參數源自於FC層,因此,像Inception, Res Net和Dense Net等網絡通過減少FC層的使用,儘管網絡深度很大,但是其參數卻不是很多。

Google Net通過利用Inception來設計精妙的拓撲結構來減少參數,類似的,Res Net表明了通過躍層鏈接在物體檢測領域的效果,尤其是在多達100多層的網絡中,效果更佳。Inception Res Nets受啓發於Res Net,綜合利用了Inception和shortout網絡,實驗表明,shortout網絡鏈接方式能夠更好地訓練Inception網絡,在Res Net網絡結構基礎上發展而來的Dense Nets採用了Dense模塊,而Dense模塊以前向反饋的方式與其他網絡層進行鏈接,具有參數效率高、隱含深度監控和特徵重用等優點。Hu等人提出了一個architectural單元, 稱爲Squeeze and Excitation(SE) 塊, 它結合現有的深度架構, 以最低的額外計算成本, 提高了性能, 通過對卷積特徵通道之間的相互依賴性進行顯式建模, 自適應校準 channelwise 特徵響應.

不同網絡的性能比較:

CNN網絡的訓練需要大量的標註性圖像數據以及組內的非相似性,並不像圖像分類,物體檢測需要從圖片中定位物體,其深度網絡的訓練是需要對象級標註信息的數據庫而非圖像級數據,以此提高物體檢測的正確率,而對於數以千百計的分類而言,獲取或者說對圖像中的對象的標註Boxes的代價消耗是非常大的,所以在CNN網絡訓練中的一個比較常見的形式就是通過利用大量的圖像標註信息進行模型的預訓練,然後這個已經訓練好的模型就可以直接應用到小型數據庫中,充當一般特徵拓展器的效果,爲此其模型能夠支持更爲廣泛的物體種類識別任務,對於檢測任務而言,在檢測任務的數據集中,預訓練網絡是典型的微調網絡幾個典型的圖像數據庫都被拿來預訓練CNN網絡,預訓練的並沒有經過微調的CNNs 網絡對於對象分類和檢測, 表明特徵性能是提取層的功能;對於在ImageNet上進行預訓練的AlexNet網絡,FC6 / FC7 / Pool5的檢測準確率依次下降,而微調的預訓練網絡可以顯著提高模型檢測準確度,而FC6 / FC7 / Pool5的訓練結果表明,Pool5所提取的特徵更具一般化,與此同時,資源和目標數據庫之間的關係和相似性也有莫大的關聯。

4.1.2 改進對象表示的方法

像RCNN, Fast RCNN,Faster RCNN 和 YOLO等均以CNN爲基礎網絡的模型而言,一般都是利用從第一層CNN提取出來的特徵進行物體檢測,然而在大規模範圍內檢測對象是一項根本性的挑戰。典型的策略是將這些想法在較大型的數據庫上進行實驗,這就會使得儘管在內存和運行時間受限的情況下提高物體檢測精度,與此同時,CNN網絡是逐層計算圖像特徵的,特徵層次結構中的抽樣層導致了一個固有的多尺度金字塔。這種固有特徵層次結構產生了不同空間分割的特徵映射, 但在結構上存在固有的問題:後面的各層有更大的容納能力和更強的語義性,並且對於像物體動作變化、明暗、部分畸形等問題有更高的穩健性,但與此帶來的是精確度的損失和幾何細節的丟失,與此相反,網絡前幾層擁有更小的接受層和更多的幾何特徵信息,同時擁有較高的分辨率, 對語義的敏感度要小。另外一般而言,根據物體檢測目標的大小,物體的語義模型在各個層的計算之後也會慢慢減小,因此如果檢測目標比較小的話,它需要在網絡的前幾層中提取更多的細節,並且這些細節也可能會在後面層計算過後消失,原則上,進行小物體識別的難度是比較大的,爲此dilated convolutions和atrous convolution 就被提出,另一方面,如果檢測目標尺寸比較大,語義概念在後面的卷積層中就會消失,顯然, 預測不同尺度的物體只有一層特徵是不理想的,因此基於CNN網絡的拓展方法被踢出來,用以解決語義消失的問題,廣而言之有三種主要的多尺度物體檢測模型:

1.多層CNN網絡特徵組合的檢測

2.在多層CNN網絡上直接進行物體檢測

3.上述兩種方法的融合

(1) Detecting with combined features of multiple CNN layers

該方法在做檢測識別任務的時候會將由多個層產生的特徵進行整合,典型模型有Hypercolumns, Hyper Net和ION,此類特徵組合通常通過躍層連接完成,一種經典的神經網絡思想, 它跳過網絡中的一些層, 並將較早的層的輸出作爲輸入到後一層, 而這就成爲語義分割的常用架構,例如ION通過跳階池化層從多層網絡中提取ROI的特徵信息,並且利用組合特徵對選擇性搜索和 edgeboxes 生成的proposals進行分類。而Hyper Net有着類似的方法,它採取了聚合深層、中層隱含特徵信息,通過端對端的集合訓練策略進行物體檢測,這種方法在一張圖片中僅提取100個候選區域,而這種混合特徵更具有描述性,並且對於物體檢測、定位和分類任務都更具有效性,但是這無疑增加了計算負荷。

(2) Detecting at multiple CNN layers

通過平均分割概率, 將粗數和精細預測結合在一起。SSD、MSCNN、RBFNet以及DSOD等模型結合多個功能映射的預測來處理各種大小的對象。SSD 將不同規模的Boxes擴展到 CNN 中的多個層, 並強制每個層集中於預測某一規模的對象。Liu等人提出,RFBNet模型用於替代帶有Receptive Field Block (RFB) 層SSD的卷積神經網絡,以增強模型的穩定性和魯棒性。RFB特別像Inecption塊,擁有多分支卷積模塊,同時利用不同的核和卷積層將多個分支網絡綜合在一起。

(3)Combination of the above two methods 

像UNet,Hypercolumns, Hyper Net和ION等網絡,因爲其計算維度比較大,所以通過簡單的躍層特徵融合並不能夠更好地利用高維特徵表示,另一方面,利用帶有比較大的reception區域的最後一層對大尺度圖像進行識別,利用帶有比較小的reception區域的最後一層對小尺度圖像進行識別是比較自然的想法,然而因爲較早期層缺乏語義信息的原因,所以通過較低層進行物體識別的準確率不會很高,因此爲了能夠綜合兩種想法,最近有人提出利用多層網絡進行物體檢測識別的方法,通過組合不同層的特徵, 得到了每個檢測層的特徵。

如上圖所示的各種模型,其基本架構是高度相似的,都是將一個有側連接的Top down網絡集成在一個標準的自底向上反饋神經網絡之上,在經過自下而上網絡後,最終的高層次語義特徵由自上而下的網絡回傳, 並與橫向處理後的中間層特徵相結合。將進一步處理組合特徵, 然後用於檢測, 並由自上而下的網絡進行傳輸。

ZIP網絡:

由此可以看出,Reverse Fusion Block (RFB) 的不同之處在於它隱藏了底層濾波器的部分,同時混合了多層濾波器的特徵,Top_down特徵和側面特徵在小的卷積網絡中進行處理,同時使用元素特徵串聯的方式進行特徵混合,FPN方法在包括物體檢測和對象分割在內的多個領域作爲一般特徵提取器顯示了顯著地效能提高。這些方法必須增加其它層去提取多層度特徵,另外損失也不能夠被忽略,STDn使用DenseNet網絡混合不同層的特徵並且設計一個尺度轉化模型去獲取不同分割下的特徵圖,而尺度轉化模型可被直接鑲嵌入DenseNet網絡模型中同時只需要績效的額外成本損失。

(4) Model Geometric Transformations. 

DCNNS本身就限制了模型有效的集合新值信息傳遞,一項經驗主義研究了DCNN對圖像變換的不變性和等價性的實證效果,一些用於提高CNN網絡魯棒性的方法被提出,其目的在於學習不同類型的變換 (如縮放、旋轉或兩者混合)情境下對不變的 CNN 表示法進行學習。

Modeling Object Deformations:

在深度學習以前,Deformable Part based Models (DPMs) 在物體檢測領域取得了巨大的成就,由在可變形配置中排列的組件部件表示對象。這種DPM模型對於轉化物體姿態、轉化視角以及靈活轉換方向等方面而言缺乏敏感性,這是因爲這些部件的位置相對穩定, 其局部特徵穩定, 這就啓發我們重新搜索明確模型對象組成, 以改善 CNN 的檢測。而首次在該方向上的研究是融合了了DPMs和CNNS,通過藉助在DPM基本檢測的基礎上的既有AlexNet所學到的深度特徵而得來,但是脫離了Region Proposals。爲了使 CNN 能夠得到對物體部件變形建模的內置能力,包括DeepIDNet、DCN等有許多方法是值得借鑑的,然而雖然想法類似,但是變形的計算是利用不同的方法進行的:

DeepIDNet設計了一個變形受限的池化層由此代替了一般的最大池化層,以學習到共享的視覺模式以及他的不同的類別之間變形的性質特徵,Dai等人設計了一個可變性的卷積層以及ROI池化層,這兩種方法都是基於將特徵圖中的正則網格採樣位置加設位置偏移和通過卷積學習偏移量的想法,而這想法就直接導致了像Deformable Convolutional Networks (DCN),和DPFCN等方法的出現,Mordan等人基於ROI池化層變形部分的方法,該方法通過同時優化所有元件的潛在位移在object Proposal周圍選擇分割區域。

4.2 上下文模型

在自然世界中的特殊環境中,視覺物體總是與其有關的物體共存,一個強有力的證據是上下文環境在人體檢測領域發揮重要的作用,一般的上下文環境模型對於物體的檢測和識別是具有莫大的幫助作用的,尤其是在物體相對比較小,扭曲或者圖像的畫質較差的情況下,因此許多與此相關的上下文環境模型被提出,而這些上下文環境模型被大體分爲三類:

1.語義上下文模型:在某些場景中找到某個對象的可能性,而在其他場景中卻找不到

2.空間上下文模型:相對於場景中的其他物體,找到相同位置的物體而不是其他物體的可能性;

3.尺度上下文模型:對象具有相對於場景中其他對象的有限尺度集。

一些先於深度學習的方法被提出,然而,基於DCNN的物體探測器尚未探索大部分這項工作,在物體檢測領域,當前的狀態是物體檢測並不需要精確地進行上下文環境的探究,人們普遍認爲DCNN隱含地使用了上下文信息,因爲他們學習了具有多個抽象層次的層次表示。然而,在基於DCNN的探測器中明確地探索上下文信息具有很大的價值,因此下面回顧了基於DCNN的對象檢測器中利用上下文線索的最近工作,這些對象檢測器被組織成全局和局部上下文的類別在早期的研究中被提出。

Global context:該方法提出,圖像或場景尺度信息可以在物體檢測領域作爲cues,在Deep IDNet中,圖像的分類得分信息可以被用作上下文特徵,而這與物體檢測得分相結合的話可以提高物體檢測的精確度,在ION中,Bell等人提出利用空間上的Recurrent NeuralNetworks (RNNs)來提取整張圖像上的上下文環境信息,在Seg Deep M模型中,Zhu等人提出MRF模型,該模型對每次檢測的外觀和上下文進行評分,並允許每個候選框選擇一個片段並對它們之間的一致性進行評分。

Local context:該模型考慮了物體的局部環境、物體與其環境之間的交互信息,一般而言,對物體關係的建模是極具挑戰性的,需要邏輯化不同類別的bounding boxes、定位和尺度等信息,在深度學習領域研究精確的物體關係模型是受限的,其中代表性模型是Spatial Memory Network (SMN) , Object RelationNetwork和Structure Inference Network (SIN),在SMN中,空間存儲器實質上將對象實例返回僞圖像表示,該僞圖像表示很容易被當做其他CNN以進行對象關係推理,導致新的順序推理架構,其中圖像和存儲器被並行處理以獲得進一步更新存儲器的檢測。受激勵於NLP的巨大成功,HU等人提出了輕量級的ORN,通過物體的外觀特徵和幾何學特徵的交互來並行處理一系列物體,而這個模型既不需要額外的監督,也很容易地嵌入到已存在的模型中,而且該模型已經在物體檢測領域表現出高效特徵,同時該模型移除了在現代物體檢測過程中的removal步驟,由此產生第一個全連接的端對端的物體檢測器,SIN模型考慮了包括場景上下文信息和物體與其他單個物體之前關係在內的兩種上下文環境信息,他認爲,物體檢測是一個圖像結構推演的問題,給定一張圖像,其中的物體被視爲圖像中的節點,而與其他物體間的關係就是這個模型的邊。

更爲廣泛的方法被提出來,使得模型更爲簡單,一般而言,由擴大的檢測窗口來提取一些局部上下文信息,代表方法有MRCNN , Gated Bi Directional CNN (GBDNet), Attention to Context CNN (ACCNN) , Couple Net和Sermanet。

在MRCNN中,除了在骨幹的最後一個CONV層從原始對象Proposals中提取的特徵之外,Gidaris and Komodakis提出從一個Object Proposal中的一系列不同的區域中提取信息,爲了獲得更豐富,更爲健壯的圖像特徵,所有的特徵必須進行簡單的組合。

還有一些與MRCNN非常相關的方法,[233]中的方法僅使用四個中心區域,以中央凹結構組織,其中分類器被端到端地聯合訓練,Zeng等人提出從對象Proposals周圍的多尺度上下文區域中提取特徵,以提高檢測性能。不同於簡單自然的從每個單獨分離出來的圖像區域進行學習CNN特徵的方法,像MRCNN, GBDNet網絡,模型可以通過卷積從不同的上下文區域之間進行信息傳遞,值得注意的是,由於獨立於單個樣本,上下文信息的傳遞並不總是有效的,而Zeng等人通過一個門函數對信息傳遞進行控制,像Long Short Term Memory (LSTM)networks . Li等人在Concurrent with GBDNet中提出ACCNN綜合利用整體和局部的上下文信息提高物體檢測識別的精度,而爲了捕獲物體檢測的上下文信息,Multiscale Local Contextualized (MLC)的子網絡被提出,可以反覆生成輸入圖像的注意圖,以通過多個堆疊的LSTM層突出顯示有用的全局上下文位置。爲了編碼局部信息,Li等人採取了類似於MRCNN的網絡結構,Couple Net 在定義上非常像ACCNN,但是是建立在RFCN的基礎上,除了RFCN 中的原始分支,其捕獲具有位置敏感的RoI池化的對象信息之外,Couple Net添加了一個分支來編碼具有RoI池化的全局上下文信息。

4.3 檢測Proposal的方法

一張圖片可以被定位到任何位置和尺度,在人工信息描述子全盛時期,the Bag of Words (BoW) 和DPM使用的是滑動窗口技術,然而窗口的數量是十分巨大的,並且隨着圖像像素的增多而不斷增加,在多尺度和橫縱比下的搜索的需要影響深遠並增加了搜索空間,因此過於繁重的計算量需要更加複雜的計算子。

大約在2011年左右,科學家們藉由Object Proposals調節了計算量和精確度之間的緊張局面,Object Proposals在一張圖中是一系列的候選區域,並且很可能包含物體的區域,Proposals通常被作爲一種處理步驟,爲了減少由Regions的數量所帶來了計算量限制,必須要用檢測器進行估計,因此好的檢測器必須擁有以下的三個特徵:

1.高召回:只需要僅僅幾個Proposals就可以進行判斷檢測

2.擬合物體的Proposals必須儘可能地精確

3.高效率

基於通過選擇性搜索給出的Detection Proposals的對象檢測的成功引起了廣泛的興趣。

在2014年,在物體檢測領域,整合了Object Proposals和DCNN特徵的RCNN建立了該領域的一個里程碑,此後Detection Proposals成爲了一個標準的處理步驟,基於傳統的像顏色、紋理、邊和梯度等特徵的object Porposals的方法,如Selective Search, MCG和Edge Boxes 等都是非常流行的,隨着該領域的不斷髮展進步,這些傳統的方法只被視作檢測器的額外處理步驟,成爲了檢測通道的瓶頸,而一類新興起的利用DCCNs網絡進行object Porposals檢測的方法贏得了廣泛的關注,近些年來,基於object Porposals的DCNN網絡模型被分爲兩類:基於bounding box和基於segment

Bounding Box Proposal Methods :該模型被很好地在RPC模型中進行了闡釋,RPN通過在最後一個共享CONV層的特徵映射上滑動小網絡來預先確定Object Proposals,在每一個滑動窗口的位置,模型通過使用K個bounding box並行的計算估計K個Proposals,而每一個anchor box都處於圖像很多定位中的中心位置,並與特殊的尺度和橫縱比相連接,Ren等人提出了基於共享神經網絡在單個網絡中整合RPN和FastRCNN的模型,而這種設計使得模型得到了實質性的加速並創造了第一個端對端的檢測模型,RPN已被許多最先進的對象研究者廣泛選爲Proposal方法。

不像Multi Box和RPN設定一組錨定,Lu等人提出通過使用遞歸循環網絡算法生成anchor位置,這種方法使得算法更專注於可能存在物體的子區域之中,從整個圖像開始,在搜索過程中訪問的所有區域都充當錨點。在搜索過程中所遇到的所有的區域都會被當做錨點,標量縮放指示器用於決定是否進一步劃分區域,而物體的bounding box的得分都是經由Adjacency and Zoom Network (AZNet)進行計算的,AZNet通過增加了一個可以同其他網絡層進行並行處理的用於計算尺度縮放指示器的分支從而拓展了RPN。

與RPN同時被提出的有Ghodrati等人提出的通過使用多層卷積神經網絡提取的特徵來進行的obejct proposals的Deep-proposals方法,構建一個反向級聯網絡,以選擇最有希望的對象位置,並以粗略到精細的方式細化它們的Boxes。而RPN的進階版本HyperNet設計了一個HyperFeature的特徵,它整合了多層網絡上得到的Features,通過端到端的聯合訓練策略共享它們在生成proposals和檢測對象中的作用,Yang等人提出了CRAFT也是用了級聯策略,首先訓練一個RPN網絡來生成object proposals,然後再利用他們訓練另一個二進制Fast RCNN網絡,以期能夠在背景中把物體檢測識別出來,Li等人提出ZIP以改進RPN,利用常用的預測Region Porposals的思想,在網絡的不同深度使用多個卷積特徵映射來集成低級細節和高級語義。而在ZIP模型中所使用的技術核心是Zoom in and out,此思想源自於卷積和反捲積的策略。

最後需要提到的包括DeepBox,該方法提出了一種輕量級的CNN網絡去學習重新排列由EdgeBox生成的Proposals,另外De Net 引入了一個邊界框角估計來有效地預測Region Porpopsals,以更快的RCNN型兩級探測器取代RPN。

Object Segment Proposal Methods:該方法的目的在於生成與物體有關的Segment Porposals,Segment Porposals比Box Proposals擁有更多的信息,該方法使得該領域向物體對象分割邁進了長遠的一步,同期的方法還有Pinheiro提出的DeepMask方法,segment propopsals是行圖像經由深度神經網絡訓練得來,同RPN共享策略相似,在經過一系列的共享卷積層之後,DeepMaskNet劃分成兩個分支,用以估計圖像的未知編碼和與物體相關的得分,與在Over Feat網絡中相似的有效的滑動窗口機制相類似,在計算過程中,訓練的Deep Mask網絡以滑動窗口的方式應用於圖像。最近Pinheiro等人提出了一種SharpMask網絡模型,該方法利用修正的模型加強了DeepMask網絡效果,Sharp Mask可以有效地將來自早期特徵空間豐富信息與後期層中的強語義信息編碼相結合,以生成高保真度Object Mask。

受Fully Convolutional Networks (FCN)和DeepMask在語義分割領域的功效的激勵,Dai等人提出了Instance FCN用以整合實例的Segment Proposals,同DeepMask相似,FCN也將網絡劃分成兩個分支,這兩個分支都是屬於全連接網絡,一個分支生成一小組實例敏感分數圖,其次是組裝模塊,輸出實例,另一組用於預測對象性得分。Hu等人提出了FastMask模型,以類似於SSD的一次性方式有效地生成Segment Proposals,主要爲了能夠在深層網絡中利用多尺度卷積特徵。從多尺度卷積特徵圖密集地提取的滑動窗口輸入到尺度容忍的注意頭模塊以預測分割掩模和對象分數。Qiao等人提出了ScaleNet,其通過明確添加比例預測階段取代了之前的物體object Porposals的方法,諸如SharpMask。也就是說,Scale Net估計輸入圖像的對象比例的分佈,Sharp-Mask在Scale Net上預測的比例下搜索輸入圖像並輸出實例Segment Proposals。Qiao等人表明他們的方法在超級市場數據集上d的表現大大優於先前的技術水平。

4.4 其他特殊的問題

爲了得到更好的更穩健的DCNN網絡特徵,對數據進行強化是必不可少的過程,這一過程既可以用於訓練階段,也可以用於測試階段,或者兩者兼而有之,增強是指通過使基礎類別保持不變的變換來擾亂圖像,例如裁剪,翻轉,旋轉,縮放和平移,以便生成類的其他樣本。數據增強會影響深度特徵表示的認知表現,然而他也會有自身的缺陷,因爲其自身推斷和檢測計算能力的顯著增加,該算法在實際應用過程中比較受限制,在大尺度形變中進行物體檢測尤其是小物體檢測是一個非常大的挑戰,經驗表明 ,對圖像進行分割的方法在物體檢測領域能夠獲得比較大的精確度,因此在這些數據分割方式中,尺度是最常用的一個,因爲高度分割可以擴大小物體被檢測出來的可能性,Singh等人提出了超前有效的數據分割方式——SNIP、SNIPER,以此來闡述尺度不變性問題,直覺理解,大、小物體在更大或更小的尺度範圍內是很難被檢測識別出來的,Singh提出來一個新穎的方法模式——SNIP,他可以在訓練樣本不變的情況下在訓練過程中減小尺度變形,而SNIPER是一個用於多尺度訓練的方法,它只以適當的比例處理背景實況對象周圍的上下文區域,而不是處理整個圖像金字塔。Shrivastava和Lin的團隊提出了處理極端的前景和背景分類的平衡問題,Wang等人提出了訓練一個對抗性網絡來生成具有遮擋和變形的樣本,而這些遮擋和變形難以被物體探測器識別。 有些工作專注於開發更好的非最大抑制方法。


5.數據集和績效評估

5.1 DataSets

數據集在物體檢測領域的研究歷史中佔據了重要的位置,對於該領域長足的進步而言,數據庫是最重要的影響因素之一,它不僅是衡量和比較競爭算法性能的共同基礎,也是推動該領域向更復雜更具有挑戰性方向發展的主要力量,目前對因特網上大量圖像的訪問使得可以建立越來越多的圖像和類別的綜合數據集,以便捕獲更大的對象的豐富性和多樣性。擁有數百萬張圖像的大規模數據集的興起爲該領域的重大突破鋪平了道路,並在物體識別方向實現了前所未有的性能。

代表性的數據庫有Caltech101,Caltech256, Scenes15 , PASCAL VOC (2007),Tiny Images, CIFAR10 , SUN , Image Net ,Places , MS COCO 以及Open Images。

早期數據庫,如Caltech101 或者 Caltech256,因爲其缺乏對於其本身存在的類內的變形因此廣受爭議,因此,SUN通過找到描繪各種場景類別來收集圖片,其中的許多圖像都有其場景和物體的描述性信息,因此可以用來進行物體檢測和場景識別,Tiny Images創建了一個超出想象尺度的數據集,給予最廣泛類別的場景和類別,然而其標註性信息並不是人工進行確認的,其中不乏許多錯誤,因此,來自Tiny Image的具有兩個可靠的標籤的基準(CIFAR10和CI-FAR100)產生。

PASCAL VOC是一項多年努力,致力於創建和維護一系列用於分類和對象檢測的基準數據集,爲年度競爭形式的識別算法的標準化評估創造了先例。 從2005年的四個類別開始,增加到日常生活中常見的20個類別,它將對象識別研究推向了新的高度。

Image Net數據集的圖片公認物體比較大而且多居於圖像的中心,使得數據集在現實場景中不典型。 爲了解決這一問題,將研究推向更豐富的圖像理解,研究人員創建了MS COCO數據庫。 MS COCO中的圖像是複雜的日常場景,在其自然環境中包含常見對象,更接近現實生活,並且使用完全分段的實例標記對象以提供更準確的檢測器評估。位置數據庫包含1000萬個場景圖像, 帶有場景語義類別的label,爲數據飢餓的深度學習算法提供了達到人類視覺模式識別的機會。更新的數據庫——Open Images ,是大約900萬張圖像的數據,這些圖像已經用圖像級別標籤和對象邊界框註釋。

目前物體檢測識別領域有幾大著名的挑戰——PASCAL VOC, ILSVRC和MS COCO 每一個挑戰都包含兩個任務:公開可用的圖像數據集以及背景實況註釋和標準化評估軟件以及年度競賽和相應的研討會。

5.2 評判標準

評估檢測算法性能有三個標準:檢測速度(每秒幀數,FPS),精度和召回率。 最常用的指標是平均精度(AP),源自精度和召回。 AP通常以類別特定的方式進行評估,即分別爲每個對象類別進行計算。

 

 

5.3 效果

近些年來,大量的物體檢測器不斷涌現,像PASCALVOC , Image Net 和 COCO這些標準數據集也在引入, 使檢測器在準確性方面的比較變得更容易。而僅在準確性,速度和記憶方面客觀地比較探測器是困難的,因爲它們在基本/上下文方面可能不同,包括以下內容:

IoU:是一種測量在特定數據集中檢測相應物體準確度的一個標準。IoU是一個簡單的測量標準,只要是在輸出中得出一個預測範圍的任務都可以用IoU來進行測量

1.像RCNN, Fast RCNN, Faster RCNN, RFCN, Mask RCNN, YOLO和SSD等相同的網絡

2.像VGG, Inception, Res Net, Res Ne Xt, Xceptio和Det Net等核心網絡

3.創新如多層特徵組合,可變形卷積網絡,可變形RoIPooling等

4.在諸如Image Net, COCO,Places, JFT 和Open Images等數據庫中進行預訓練

5. 不同的檢測Proposals方法和不同數量的對象Proposals;

6.訓練/測試數據增加“技巧”,如重複,水平翻轉,多尺度圖像和新的多尺度訓練策略、掩蓋緊縮和模型集合等。

雖然比較每個最近提出的探測器可能是不切實際的,但將代表性和公衆可用的探測器集成到一個共同的平臺中以便以統一的方式比較它們是非常有價值的。通過研究表明(詳看原文數據),骨架網絡、檢測框架設計和大規模數據集的可用性是檢測中最重要的三個因素,此外,多個模型的集合,上下文特徵的結合以及數據增強都有助於實現更高的準確性,但是實踐表明現有技術探測器所達到的精度水平遠遠不能滿足通用實際應用的要求,所以未來的改進仍有很大空間。


6.總結

通用對象檢測是計算機視覺中一個重要且具有挑戰性的問題,並且受到了廣泛的關注。由於深度學習技術的顯着發展,對象檢測領域已經發生了巨大的變化。作爲對通用對象檢測深度學習的綜合調查,本文突出了最近的成就,根據其在檢測中的作用提供了方法的結構分類,總結了現有的流行數據集和評估標準,以及最具代表性的討論性能方法。雖然通用物體檢測近些年來取得了重大的成就,但是最先進的和人性化的表現之間仍存在巨大差距,特別是在開放世界學習方面。 還有很多工作要做,我們認爲這些工作集中在以下八個領域:

1.Open World Learning: 最終目標是開發對象檢測系統,能夠準確,高效地識別和定位所有開放世界場景中所有對象類別(數千或更多對象類)的實例,與人類視覺系統競爭。最近的物體檢測算法是利用有限的數據集學習的,目的是識別和定位數據集中包含的對象類別,但原則上這是盲目的,應當是對於數據集之外的其他對象類別的識別,儘管理想情況下強大的檢測系統應該能夠 認識新穎的對象類別。當前的檢測數據集僅包含數十個到數百個類別,這明顯小於人類可以識別的類別。爲了實現這一目標,需要開發具有更多通用對象檢測類別的新的大規模標記數據集,因爲有關CNN的狀態需要大量數據來進行良好的訓練。然而,收集如此大量的數據,特別是用於對象檢測的邊界框標籤,是非常昂貴的,尤其是對於數十萬個類別。

2.Better and More Efficient Detection Frameworks:通用對象檢測取得巨大成功的因素之一是開發了更好的檢測框架,基於區域(RCNN,Fast RCNN [64],Faster RCNN [175],Mask RCNN ) 和單態探測器(YOLO、SSD)。基於區域的探測器具有最高的精度,但對於嵌入式或實時系統來說計算量太大。一級探測器有可能更快更簡單,但尚未達到基於區域的探測器的準確性。一個可能的限制是,現有技術的對象檢測器嚴重依賴於底層骨幹網絡,該骨幹網絡最初已經針對圖像分類進行了優化,由於分類和檢測之間的差異而導致了學習偏差,因此一種潛在的策略是 從頭開始學習物體探測器,如DSOD探測器。

3.Compact and Efficient Deep CNN Features:在通用對象檢測方面取得長足進步的另一個重要因素是強大的深層CNN的發展,從幾層(例如,Alex Net)到數百層(例如Res),其深度顯着增加。這些網絡擁有數百萬到數億個參數,需要大量數據和耗電的GPU進行培訓,再次將其應用限制在實時/嵌入式應用中,作爲迴應,人們越來越關注緊湊和輕量級網絡,網絡壓縮和加速以及網絡解釋和理解,

4.Robust Object Representations:使物體識別問題如此具有挑戰性的一個重要因素是真實世界圖像的巨大變化,包括視點和光照變化,物體尺度,物體姿態,物體部分變形,背景雜波,遮擋,外觀變化,圖像模糊, 年齡分辨率,噪音,相機限制和扭曲。儘管深度網絡的進步,它們仍然受到這些許多變化缺乏魯棒性的限制,這顯然限制了實際應用的可用性。

5.Context Reasoning: 真實世界的對象通常與其他對象和環境共存。 已經認識到,語境信息(對象關係,全局場景統計)有助於物體檢測和識別,特別是在小物體或遮擋物體的情況下或圖像質量差的情況下。在深度學習之前有大量的工作,但是自從深度學習時代以來,在利用語境信息方面只取得了非常有限的進展。如何有效和有效地結合上下文信息仍有待探索,理想情況是由人類如何快速引導他們的注意力引導自然景觀中的感興趣對象引導。

6.Object Instance Segmentation:繼續朝着更豐富和更詳細的理解圖像內容的趨勢發展(例如,從圖像分類到單個對象定位到對象檢測),下一個挑戰是解決像素級對象實例分割,因爲對象實例分割可以在許多需要單個實例的精確邊界的潛在應用程序中發揮重要作用。

7.Weakly Supervised or Unsupervised Learning: 當前狀態的檢測器採用從帶有對象邊界框或分割掩模的標記數據中學習的全監督模型,然而這種完全監督的學習具有嚴重的侷限性,其中邊界框註釋的假設可能成爲問題,尤其是當對象的類別數量很大時。在沒有完全標記的訓練數據的情況下,完全監督學習是不可擴展的,因此研究如何在弱監督或無監督檢測中利用CNN的功效是有價值的。

8.3D Object Detection: 深度相機的進展可以以RGB-Dimages或3D點雲的形式獲取深度信息。 深度模態可用於幫助對象檢測和識別,但是在方向上會是一個比較受限的問題,但是可能促使利用大量高質量CAD模型的優勢。


7.致謝

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章