官术网_书友最值得收藏!

第2章 復(fù)雜場景下小目標(biāo)檢測與識別的相關(guān)技術(shù)

2.1 傳統(tǒng)場景下常規(guī)目標(biāo)檢測與識別

本章首先梳理了傳統(tǒng)場景下常規(guī)目標(biāo)檢測與識別的相關(guān)技術(shù),該部分相關(guān)技術(shù)由檢測與識別基本模塊及其主流框架組成。然后從信息增強、上下文信息兩個方面,針對復(fù)雜場景下小目標(biāo)檢測與識別研究展開討論。

2.1.1 檢測與識別的基本模塊

基于CNNs的檢測識別算法由區(qū)域推薦模塊、邊框分類和回歸模塊組成。

1.區(qū)域推薦模塊

區(qū)域推薦模塊在目標(biāo)檢測與識別中發(fā)揮著非常重要的作用。該模塊將物體存在的潛在區(qū)域以一組矩形邊界框的形式輸出,隨后對這組物體潛在區(qū)域進行分類或回歸。

本節(jié)將區(qū)域推薦方法分為經(jīng)典圖像處理方法、基于錨點的監(jiān)督學(xué)習(xí)方法和基于關(guān)鍵點的方法。

1)經(jīng)典圖像處理方法

經(jīng)典圖像處理方法嘗試根據(jù)低級視覺線索,在圖像中生成物體存在的潛在區(qū)域。這些方法歸納為3個步驟:①計算候選框得分;②合并原始圖像中的超像素;③生成多個前景和背景區(qū)域。

基于物體打分思路預(yù)測每個候選框可能包含一個物體的概率。Arbelaez等人根據(jù)視覺線索(如顏色對比)、邊緣密度和顯著性計算候選框的評分。Rahtu等人引入了更有效的級聯(lián)學(xué)習(xí)方法對候選方案的客觀性得分進行排名。

超像素合并的思路嘗試合并分割所產(chǎn)生的超像素塊。選擇性搜索[45]是一種基于合并超像素的區(qū)域推薦算法,該方法以顏色和區(qū)域為線索根據(jù)[82]的分割結(jié)果進行合并,將邊界框放置在合并的區(qū)域上。與前面方法的區(qū)別是學(xué)習(xí)合并功能的權(quán)重。由于選擇性搜索方法的效率高,目前該方法已經(jīng)廣泛應(yīng)用于檢測框架中,并且與其他傳統(tǒng)方法相比,具有召回率高的優(yōu)勢。

種子分割算法從多個種子區(qū)域開始,對每個種子都會生成前景和背景區(qū)域。為了避免建立分層分段所帶來的巨額計算量,CPMC[84]產(chǎn)生了一組由不同種子初始化的重疊片段。每個候選區(qū)域都被看作一個二分類問題,即前景或背景。Enreds和Hoiem結(jié)合了選擇性搜索[45]和CPMC[84],從超像素分割算法開始,然后合并區(qū)域用作種子,來產(chǎn)生更大的區(qū)域,類似CPMC。但是,生產(chǎn)高質(zhì)量的分割算法非常耗時,不適用于大規(guī)模數(shù)據(jù)集。傳統(tǒng)計算機視覺的主要優(yōu)勢是方法原理簡單,可以生成具有較高召回率的推薦區(qū)域,如在中等規(guī)模的數(shù)據(jù)集上,如PascalVOC。但是,上述方法主要基于低級視覺提示,如顏色或邊緣,這些方法不能與整個檢測模塊共同優(yōu)化,因此,無法利用大規(guī)模數(shù)據(jù)集的功能來改善表示學(xué)習(xí)。

2)基于錨點的監(jiān)督學(xué)習(xí)方法

基于錨點的監(jiān)督學(xué)習(xí)方法根據(jù)預(yù)先定義的內(nèi)容生成推薦的錨點。Ren等人提出的區(qū)域推薦網(wǎng)絡(luò)(Region Proposal Network,RPN)使用3×3卷積核將該網(wǎng)絡(luò)滑過了整個特征圖,以監(jiān)督學(xué)習(xí)的方式在深度卷積特征圖上生成潛在區(qū)域。該方法考慮了錨點尺寸和縱橫比,對于特征圖的每個位置均設(shè)置k個錨點。這類不同的錨點尺寸和縱橫比,可以匹配圖像中不同尺寸的目標(biāo)。根據(jù)真值標(biāo)簽(Ground Truth,GT),將物體位置與最合適的錨點匹配作為監(jiān)督信號。每個錨點均提取256維特征向量,并將其送入兩個同級分支分類模塊和回歸模塊。分類模塊用于評價物體類別得分,回歸模塊輸出4個實數(shù)值作為物體所在位置估計。根據(jù)GT,預(yù)測每個錨點是目標(biāo)還是背景。單發(fā)多盒檢測器(Single Shot Multi-Box Detector,SSD)[42]也采用了類似RPN的錨點匹配的思路,SSD為每個錨定分配了潛在區(qū)域的分類概率,并在下個階段首先評估潛在區(qū)域是前景還是背景。盡管基于錨點的監(jiān)督學(xué)習(xí)方法取得了令人滿意的檢測與識別性能,但錨點的參數(shù)是通過啟發(fā)式方式手動設(shè)計的,具有多個比例和長寬比,不同的數(shù)據(jù)集需要不同的錨點設(shè)計思路,因此,這些設(shè)計可能并不是最佳的選擇。Zhang等人提出了一種基于SSD的單次縮放不變面部檢測器,該檢測器根據(jù)不同特征圖的有效感受野[88],設(shè)計了不同的錨定規(guī)則用來匹配不同的目標(biāo)。朱等人介紹了一種通過擴大輸入圖像尺寸并減小錨距來匹配小物體的錨設(shè)計方法。Ghodrati等人開發(fā)了Deep Proposals,該方法預(yù)測了有關(guān)低分辨率深層特征的目標(biāo)潛在區(qū)域,然后將上述候選區(qū)域投影至高分辨率淺層特征圖中,并在其中進行進一步完善。Redmon等人通過學(xué)習(xí)先驗來設(shè)計錨先驗使用k均值聚類的訓(xùn)練數(shù)據(jù)。后來,張等人引入了單發(fā)細(xì)化神經(jīng)網(wǎng)絡(luò)(ingle-Shot Refinement Neural Network,RefineDet),RefineDet首先根據(jù)原始的手工設(shè)計錨點和這類錨點通過學(xué)習(xí)的偏移量進行細(xì)化;然后學(xué)習(xí)一組新的本地化偏移量,進一步精煉錨點,這種級聯(lián)的優(yōu)化框架極大地提高了錨點質(zhì)量和最終的預(yù)測精度。蔡等人提出的Cascade-RCNN采用了與RefineDet類似的思想改進錨點的級聯(lián)的方式。

3)基于關(guān)鍵點的方法

基于關(guān)鍵點的方法分為基于角點的方法和基于中心的方法。

Denet以概率的方式重新提出了目標(biāo)檢測問題,建模了分布角類型的對象(左上、右上、左下、右下),并在對象的每個角上應(yīng)用樸素貝葉斯分類器以估計邊界框的置信度得分。這種基于角點的方法不僅消除了錨定問題,而且還更有效地生成了高質(zhì)推薦區(qū)域。后來基于Denet的方法,Law和Deng提出了CornerNet,該方法直接對角上的分類信息進行建模。CornerNet建模的左上角信息的右上角和右下角具有新穎的特征嵌入方法和角池層,可正確匹配屬于同一對象的關(guān)鍵點,從而獲得最新的結(jié)果公開基準(zhǔn)。

對于基于中心的方法,在每個位置上預(yù)測物體中心位置,并物體的高度和寬度直接回歸,無須任何錨點先驗。朱等人提出了一個無須功能選擇錨(FSAF)的框架,插入具有FPN結(jié)構(gòu)的一級檢測器。與FSAF類似,Zhou等人提出了一個基于單個沙漏網(wǎng)絡(luò)的基于中心的新框架,其沒有FPN結(jié)構(gòu)。此外,他們應(yīng)用了基于中心的方法解決更高層次的問題,如3D檢測和人體姿勢識別,并全部獲得了最新技術(shù)成果。段等人提出了CenterNet,該方法結(jié)合了基于中心的方法和基于角點的方法的思想,與基準(zhǔn)方法相比,CenterNet取得了顯著進步。

總之,區(qū)域推薦技術(shù)通過減少潛在候選區(qū)域的搜索空間,縮短了檢測算法的處理時間,對于保證算法的快速性至關(guān)重要。

2.邊框分類和回歸模塊

在基于滑動窗口的物體檢測框架中,算法的本質(zhì)是對圖像子區(qū)域進行逐一分類。圖像分類是計算機視覺的根本任務(wù)之一,在圖像分類的相關(guān)研究中幾乎涵蓋了所有適用于分類的機器學(xué)習(xí)算法。由于背景的干擾和小目標(biāo)區(qū)域特征提取困難,直接使用神經(jīng)網(wǎng)絡(luò)分類器對復(fù)雜場景下的小目標(biāo)進行分類是不可行的。

對于目標(biāo)潛在區(qū)域,除了可以進行分類操作,還可對區(qū)域的范圍進行細(xì)微的調(diào)整。當(dāng)檢測框離物體邊框較近時,可以采用邊框回歸算法對檢測框進行微調(diào)。在當(dāng)前的物體檢測框架中,邊框回歸已經(jīng)成為默認(rèn)使用的組件文獻[18,23,63,64]。在邊框回歸中,本部分使用回歸方法調(diào)整檢測框的位置,包括大小和長寬比。

式中,(x,y),w,h分別為檢測框方向的中心、寬度和長度;xt,xs分別對應(yīng)目標(biāo)框和初始框;(tx,ty,tw,th)是作為回歸目標(biāo)的四維向量。在訓(xùn)練階段,算法以檢測框內(nèi)子圖像為輸入,以(tx,ty,tw,th)為回歸目標(biāo)訓(xùn)練回歸器,如回歸樹、支持向量回歸、神經(jīng)網(wǎng)絡(luò)等。在測試階段,回歸器根據(jù)輸入圖像內(nèi)容,取得輸出;輸出經(jīng)過反參數(shù)化,對檢測框進行微調(diào)。

目標(biāo)檢測結(jié)果有兩種形式,分別為對象檢測(矩形框)和實例分割(像素級)。對象檢測已得到一定的研究,是傳統(tǒng)的檢測設(shè)置,目標(biāo)是通過矩形邊界框定位對象。在對象檢測算法中,僅需矩形框注,在評估過程中,需要預(yù)測邊界框與標(biāo)準(zhǔn)之間的交并比(Intersection over Union,IoU),計算GT預(yù)測區(qū)域的覆蓋程度。不同于對象檢測結(jié)果,實例分割是一種新型的結(jié)果輸出形式,檢測結(jié)果輸出的并不是粗糙的矩形,實例分割需要對邊界框中每個像素進行精確分類。由于像素級的預(yù)測更加精確,因此,實例分割對空間未對準(zhǔn)更加敏感,對空間信息的處理有更高的要求。實例分割的評估指標(biāo)除了在掩碼預(yù)測上執(zhí)行IoU計算,其他功能幾乎與bbox級檢測相同。

2.1.2 檢測和識別的框架

基于CNNs的物體檢測器分為雙階段檢測器和單階段檢測器兩大類。雙階段檢測器首先生成一組稀疏分布的目標(biāo)潛在區(qū)域,然后通過深度CNNs 對目標(biāo)潛在區(qū)域的特征向量進行編碼,最后進行對象類別預(yù)測。單階段檢測器沒有單獨的候選區(qū)域生成階段,它們通常會考慮將整幅圖像作為潛在對象,并嘗試將每個區(qū)域分類為背景或目標(biāo)類型。雙階段檢測器在許多公共數(shù)據(jù)集上可達到最前沿的檢測性能,然而它們通常不具備較高的處理速度。雖然,單階段檢測器面向?qū)崟r目標(biāo)檢測器的應(yīng)用,但與雙階段檢測器相比,其性能相對較差。

1.雙階段檢測器

雙階段檢測器將檢測任務(wù)分為區(qū)域推薦和候選區(qū)域預(yù)測兩個階段。在區(qū)域推薦階段,檢測器試圖尋找圖像中所有可能包含物體的區(qū)域。在候選區(qū)域預(yù)測階段,使用類別標(biāo)簽信息作為模型監(jiān)督信息,訓(xùn)練基于CNN的深度學(xué)習(xí)模型并對候選區(qū)域進行分類,該區(qū)域可以是背景,也可以是預(yù)定義的類標(biāo)之一。接下來,回顧一些極具影響力的兩級檢測器。

Girshick等人提出了RCNN,該檢測器是開創(chuàng)性的雙階段目標(biāo)檢測器。2014年,F(xiàn)elzenszwalb等人提出了基于傳統(tǒng)檢測框架的SegDPM檢測器。當(dāng)時,在VOCImageNet數(shù)據(jù)集上,state-of-the-art方法的mAP為40.4%,而RCNN顯著地提高了檢測結(jié)果,其mAP為53.7%。RCNN的檢測過程分為候選區(qū)域生成、特征提取和候選區(qū)域分類3個部分。對于每幅圖像,RCNN首先會生成一組稀疏候選區(qū)域(約2000個區(qū)域),用于剔除容易被識別成背景的區(qū)域。然后,裁剪每個推薦區(qū)域并將其調(diào)節(jié)為固定大小,之后編碼為固定維度的(如4096維)特征向量。緊接著,將該特征向量送入SVM,進行特征分類。最后,使用提取的特征作為輸入來回歸邊界框,以便推薦區(qū)域的邊界框緊緊地綁住物體。與傳統(tǒng)手工的特征描述符相比,深度神經(jīng)網(wǎng)絡(luò)生成分層特征并捕獲不同層中的不同比例信息后再分類。基于遷移學(xué)習(xí)理論,RCNN在ImageNet上,預(yù)先訓(xùn)練卷積網(wǎng)絡(luò)的權(quán)重,再重新初始化一個完全連接的層用于最終的檢測任務(wù),微調(diào)預(yù)訓(xùn)練模型。實驗結(jié)果顯示,將Imagenet數(shù)據(jù)集的知識遷移至新的任務(wù),可顯著提高檢測識別性能。

受空間金字塔匹配思想[46]的啟發(fā),文獻[47]提出了SPP網(wǎng)絡(luò),它能夠提高RCNN網(wǎng)絡(luò)的處理速度并提高特征的區(qū)分能力。SPPNet采用區(qū)域推薦網(wǎng)絡(luò)產(chǎn)生候選目標(biāo),并將這些候選區(qū)域輸入到CNN模型中,使用深度卷積神經(jīng)網(wǎng)絡(luò)計算圖像的特征圖,并提取固定長度的特征向量。SPPNet將特征圖劃分為N×N的網(wǎng)格,用于獲取N個值(允許獲取不同位置的信息),并在網(wǎng)格的每個特征元素上執(zhí)行合并操作,從而給出固定長度的特征向量。給每個N×N的特征向量連接網(wǎng)格中的全連層,以給出該區(qū)域的特征表示,提取的特征被反饋到SVM分類器和邊界框回歸器中。與RCNN相比,SPP層可以處理各種縱橫比例的圖像,但不調(diào)整它們的大小。因此,該網(wǎng)絡(luò)不會受信息丟失和幾何失真的影響。

盡管在檢測器的學(xué)習(xí)策略方面取得了不小的進展,但區(qū)域推薦階段仍然依賴于傳統(tǒng)方法,如SelectiveSearch[45]或EdgeBox[48],這類方法統(tǒng)一基于低級視覺,無法以數(shù)據(jù)驅(qū)動的方式進行學(xué)習(xí)。為了解決該問題,文獻[34]提出了Faster RCNN的檢測網(wǎng)絡(luò),該網(wǎng)絡(luò)設(shè)計了新型區(qū)域推薦網(wǎng)絡(luò)——Region Proposal Networ(RPN),RPN可以通過下列方式學(xué)習(xí)有監(jiān)督的學(xué)習(xí)方法。RPN是一個完全卷積的網(wǎng)絡(luò),它可以輸入任意大小的圖像,并在特征圖的每個位置上生成一組候選區(qū)域。該網(wǎng)絡(luò)使用N×N的滑動窗口在特征圖上滑動,并為每個位置生成特征向量。然后,將特征向量饋入兩個同級輸出分支,即對象分類層(根據(jù)對象分類層是否對提案進行分類確定其是否為對象)和邊界框回歸圖層,再將上述結(jié)果輸入到實際對象的最后一層,進行分類和邊界框的回歸。RPN可以插入至FastRCNN中,整個框架可以將大量訓(xùn)練數(shù)據(jù)按照端到端的方式對整個檢測網(wǎng)絡(luò)進行訓(xùn)練。RPN支持以數(shù)據(jù)驅(qū)動的方式生成候選區(qū)域,還能提升深層骨干網(wǎng)絡(luò)的區(qū)分能力。提速后的RCNN能夠在GPU上達到5FPS的預(yù)測速度,并在許多公開基準(zhǔn)數(shù)據(jù)集上,獲得了最前沿的檢測和識別結(jié)果,如PascalVOC2007、PascalVOC2012和MSCOCO。當(dāng)前,有大量基于Faster RCNN的變體檢測器用于不同的計算機視覺任務(wù)[39,49-51]

快速的RCNN特征算子計算輸入圖像的特征圖,并在特征圖上計算推薦區(qū)域的特征,在不同區(qū)域之間采用共享計算的方式進行特征提取。然而,這種計算共享在區(qū)域分類階段沒有共享,每個特征向量依然需要經(jīng)過一個全連接層區(qū)分開。由于每幅圖像可能有成百上千的候選區(qū)域,因此,計算量可能非常大。深度網(wǎng)絡(luò)會減少候選區(qū)域的空間信息,所以簡單地去除全連接層會導(dǎo)致檢測性能急劇下降。戴等人提出了基于區(qū)域的全卷積共享計算網(wǎng)絡(luò)(RFCN),用于區(qū)域推薦過程。RFCN生成了位置敏感打分圖,該打分圖將不同類別的相對位置信息進行編碼,使用位置敏感的ROI合并層(PSROI池化),通過編碼目標(biāo)區(qū)域的每個相對位置來提取空間感知區(qū)域特征。

在DCNN特征表示中,深層特征在語義上很強,但是在空間信息上表示能力較弱,而淺層特征在語義上較弱但空間信息上較強。Lin等人基于該屬性提出了將深層特征與淺層特征相結(jié)合的特征金字塔網(wǎng)絡(luò)(FPN)特征圖,用于檢測不同比例的目標(biāo)。本部分的想法是利用深層的語義信息增強淺層特征的表達能力。FPN在檢測多尺度物體方面取得了重大進展,并已廣泛用于許多其他領(lǐng)域,如視頻檢測[53-54]和人體姿勢識別[55-56]等。

大多數(shù)實例分割算法均是物體檢測算法的改進變形。早期方法[57-59]通常生成的細(xì)分類的候選區(qū)域,然后通過RCNN快速進行細(xì)粒度分類。后來,戴等人提出了一種稱為MNC的多階段學(xué)習(xí)算法,該算法將整個檢測框架分為多個階段,并預(yù)測邊界框的候選區(qū)域,隨后由區(qū)域分類器對其進行分類。上述早期工作以多種方式執(zhí)行bbox和mask預(yù)測。為了提高算法整個過程的靈活程度,He等人提出了MaskRCNN,可預(yù)測物體的邊界框和并行細(xì)分模板。基于MaskRCNN,Huang等人提出了一個具有高質(zhì)量區(qū)域得分的感知框架,名為Mask Scoring RCNN,預(yù)測模板的質(zhì)量并校準(zhǔn)模板之間對于未對準(zhǔn)置信度的分?jǐn)?shù)。

2.單階段檢測器

雙階段檢測算法由區(qū)域推薦和候選區(qū)域預(yù)測兩個階段組成。與雙階段檢測算法不同,單階段檢測算法沒有用于區(qū)域推薦的單獨階段。雙階段檢測算法通常將圖像上的所有位置視為可能出現(xiàn)的候選區(qū)域,并嘗試將每個推薦的區(qū)域分類為背景或目標(biāo)對象。

早期較為成功的基于深度學(xué)習(xí)的單階段檢測算法由Sermanet等人提出。分類網(wǎng)絡(luò)輸出網(wǎng)格在輸入的每個區(qū)域上進行預(yù)測,從而指示對象是否存在。識別目標(biāo)之后,通過學(xué)習(xí)回歸器優(yōu)化物體邊界框的位置。為了檢測多尺度目標(biāo),將輸入圖像調(diào)整為多個尺度后再送入網(wǎng)絡(luò)進行檢測。

后來,Redmon等人開發(fā)了一種稱為YOLO的實時檢測器。YOLO將目標(biāo)檢測任務(wù)視為回歸問題,在圖像空間上將整個圖像劃分為固定數(shù)量的網(wǎng)格單元,如使用7×7網(wǎng)格,每個單元存在一個或多個潛在目標(biāo)。在最原始的算法實現(xiàn)中,每個單元格被認(rèn)為包含最多兩個對象。對于每個單元格,做出的預(yù)測包括以下信息:該位置是否包含物體,邊框的坐標(biāo)和大小(寬度和高度),以及對象的類別。整個框架是一個單一的網(wǎng)絡(luò),它省略了候選區(qū)域的推薦過程,該步驟優(yōu)化了端到端的方式。基于精心設(shè)計的輕量級架構(gòu),YOLO可以做到預(yù)測速度45幀/秒,使用更簡化的特征提取網(wǎng)絡(luò)速度達到155幀/秒。但是,YOLO還面臨一些挑戰(zhàn):①它只能檢測到在給定位置的兩個物體,很難檢測小物體和擁擠的物體[40];②僅最后一個使用特征圖進行預(yù)測,不適用于以多種比例和縱橫比預(yù)測對象。

主站蜘蛛池模板: 多伦县| 宜宾市| 阿拉善右旗| 龙山县| 崇州市| 平邑县| 漾濞| 泰州市| 广水市| 且末县| 汉沽区| 巢湖市| 仙游县| 女性| 兴和县| 土默特右旗| 富源县| 临漳县| 平昌县| 余江县| 兴海县| 竹溪县| 广安市| 铜陵市| 天水市| 南木林县| 曲靖市| 辽宁省| 分宜县| 九寨沟县| 闸北区| 庄河市| 阳原县| 栖霞市| 清涧县| 松原市| 东安县| 福州市| 永平县| 棋牌| 旌德县|