羅艷,張重陽*,田永鴻,郭捷,孫軍
1.上海交通大學(xué)電子信息與電氣工程學(xué)院,上海 200240;2.北京大學(xué)信息科學(xué)技術(shù)學(xué)院,北京 100871;3.上海交通大學(xué)網(wǎng)絡(luò)空間安全學(xué)院,上海 200240
行人檢測是計算機視覺中的一個基本任務(wù),主要研究從圖像或者圖像序列中準(zhǔn)確識別并定位行人目標(biāo)。當(dāng)前,行人檢測技術(shù)不僅廣泛應(yīng)用于智能交通系統(tǒng)和智能安防監(jiān)控等多種實際場景,而且作為技術(shù)支撐,為人體行為識別和人體動作理解等研究熱點提供理論基礎(chǔ)。因此,探索更加高效的行人檢測技術(shù)具有重要的實際應(yīng)用價值和學(xué)術(shù)意義。
在深度學(xué)習(xí)興起前,行人檢測主要依賴于手工設(shè)計的特征進行目標(biāo)表征,常用的特征提取算子包括結(jié)合了人體運動和外觀模式的Haar小波特征(Papageorgiou和Poggio,2000),運用邊緣方向信息描述行人輪廓的梯度方向直方圖(histogram of oriented gradient,HOG)特征(Dalal和Triggs,2005),具有灰度不變性以及旋轉(zhuǎn)不變性的LBP(local binary pattern)特征(Ojala等,2002),以及具有尺度不變性的結(jié)構(gòu)性特征(scale-invariant feature transfor-mation,SIFT)(Lowe,2004)。以上手工特征的核心是利用人工設(shè)計針對特定任務(wù)的圖像特征描述算子來幫助區(qū)分目標(biāo)位置或目標(biāo)類別。這些手工特征相對而言比較簡單并且易于使用,但是也具有明顯的局限性。1)手工特征主要利用行人外觀等淺層信息作為判斷依據(jù),容易誤檢;2)手工特征較難適應(yīng)視角不同、相互遮擋和姿態(tài)變化的行人目標(biāo),由此會導(dǎo)致大量漏檢。因此傳統(tǒng)的基于手工特征的行人檢測方法很難適應(yīng)當(dāng)前的高精度高效率行人檢測應(yīng)用需求,研究者將目光轉(zhuǎn)向了基于深度學(xué)習(xí)的行人檢測方法。
深度學(xué)習(xí)模型在當(dāng)前的目標(biāo)檢測中處于主流地位,與前述的手工特征不同,基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)方法通過構(gòu)建多層網(wǎng)絡(luò)學(xué)習(xí)隱含在數(shù)據(jù)內(nèi)部的關(guān)系,從而使得學(xué)習(xí)到的特征具有更強的表征和泛化能力。隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,行人檢測作為通用目標(biāo)檢測的重要分支引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。在簡單無遮擋場景下,學(xué)者將通用目標(biāo)檢測模型,如基于錨點的兩階段檢測器Faster R-CNN(region-based convolutional neural network)(Ren等,2017)和基于錨點的單階段檢測器SSD(single shot multibox detector)(Liu等,2016),直接應(yīng)用于行人檢測已經(jīng)取得了良好的性能。但是在實際應(yīng)用中,行人檢測依然面臨嚴(yán)峻挑戰(zhàn),主要體現(xiàn)在以下兩個方面:1)遮擋問題。在智能監(jiān)控和無人駕駛等真實場景中,圖像中行人目標(biāo)遮擋的情況通常難以避免。一般而言,遮擋可以分為兩類:(1)行人目標(biāo)與場景物體間的遮擋(例如行人與街邊樹木欄桿、道路車輛等相互遮擋),即人與物之間的遮擋;(2)行人目標(biāo)之間的相互遮擋,即人與人之間的遮擋。以上兩種遮擋情況均對行人的整體結(jié)構(gòu)特征造成破壞,并且由于遮擋模式的多樣性,導(dǎo)致通用的數(shù)據(jù)驅(qū)動的檢測器難以學(xué)習(xí)一致的遮擋行人目標(biāo)特征。所以往往需要設(shè)計獨立的模塊用以提高模型對遮擋行人的表征能力,從而有效降低漏檢率。2)尺度變化問題。在行人檢測中,距離攝像頭較近的行人目標(biāo)往往在圖像中呈現(xiàn)較大的尺寸,而距離攝像頭較遠(yuǎn)的行人目標(biāo)往往尺寸較小。因此,在待檢測的圖像或圖像序列中往往存在尺度不一致的行人目標(biāo)。這種尺度不一致性會帶來兩個問題:(1)小尺度目標(biāo)有用信息較少,很難精準(zhǔn)檢測;(2)大尺度目標(biāo)與小尺度目標(biāo)特征差異較大,例如大尺度行人目標(biāo)往往具有清晰的紋理特征以及骨架信息,而小尺度行人目標(biāo)只具有模糊的輪廓信息,因此較難對不同尺度的目標(biāo)設(shè)計統(tǒng)一的特征處理策略。
圍繞上述面臨的問題與挑戰(zhàn),本文以基于深度學(xué)習(xí)的行人檢測技術(shù)為研究對象,對不同行人檢測算法的原理、適用場景以及優(yōu)缺點進行了詳細(xì)分析,同時介紹了行人檢測通用數(shù)據(jù)集以及不同算法的實驗結(jié)果,并對行人檢測領(lǐng)域未來可能的發(fā)展方向進行展望。
基于錨點框的目標(biāo)檢測(例如Faster R-CNN和SSD)是當(dāng)前較為成熟并且應(yīng)用較為廣泛的一類算法,該方法利用數(shù)據(jù)集的先驗信息設(shè)置一系列大小形狀不同的錨點框,并利用卷積神經(jīng)網(wǎng)絡(luò)對錨點框進一步分類與回歸,得到最終的行人檢測結(jié)果。根據(jù)研究思路及針對問題的不同,本文將基于錨點框的主流行人檢測方法分為基于行人部位的方法、基于行人整體與部位加權(quán)的方法以及基于級聯(lián)的方法。
基于行人部位的方法是處理遮擋行人檢測問題最常見也是非常有效的一類方法。該方法利用遮擋行人可見部位判斷行人是否存在。從部位檢測的角度,該類方法分為基于部位檢測器的方法和基于注意力機制的方法。
1.1.1 基于部位檢測器的方法
基于部位檢測器的方法往往是通過已訓(xùn)練好的人體關(guān)鍵點或部位檢測網(wǎng)絡(luò)簡單有效地識別遮擋行人可見身體部位。Xu等人(2019)提出了一種提取行人特定部位信息的網(wǎng)絡(luò)結(jié)構(gòu),如圖1所示,圖中FC(fully connected network)表示全連接網(wǎng)絡(luò)。該算法通過人體關(guān)鍵點檢測網(wǎng)絡(luò)識別每個行人目標(biāo)的6種關(guān)鍵節(jié)點,包括頭部、上身、手臂、腿部等,并利用關(guān)鍵節(jié)點重建相應(yīng)的部位信息。將含有特定語義的部位信息進行整合,即得到最終更加魯棒的行人特征表達(dá)。研究結(jié)果表明,該方案直觀有效,對于提升檢測器的抗遮擋性能有明顯效果。但是缺點也顯而易見,一是此類方法需要額外的部位標(biāo)注訓(xùn)練人體關(guān)鍵點或部位檢測網(wǎng)絡(luò);二是依賴數(shù)據(jù)驅(qū)動的部位檢測器往往難以適配遮擋模式的多變。因此,如何降低部位檢測器的計算成本,以及如何更有效地利用部位檢測器仍然是一個值得探索的問題。
圖1 基于部位檢測器的行人檢測框架圖(Xu等,2019)Fig.1 Framework of pedestrian detection based on part detector (Xu et al.,2019)
近年來,研究者發(fā)現(xiàn)可以將基于統(tǒng)計的部位模型直接與卷積神經(jīng)網(wǎng)絡(luò)特征相結(jié)合,從而有效減少部位檢測所需時間,典型的部位模型如圖2所示,圖中數(shù)值表示該區(qū)域為行人部位的概率值。Zhang等人(2018a)構(gòu)建了由5種行人部位組成的部位模型,并通過卷積神經(jīng)網(wǎng)絡(luò)度量各個部位可見度,最后綜合所有部位的可見得分,得到整體行人的檢測結(jié)果。這種方法的局限性在于,使用的部位往往是人工定義的,而行人遮擋的類型理論上有無窮多種,盡管可以定義主要的遮擋模式近似表示,但仍然難以達(dá)到最優(yōu)。這種局限性也促使研究者探討是否存在行之有效的方法可以避免復(fù)雜的部位檢測網(wǎng)絡(luò),同時保證遮擋行人的檢測精度。
圖2 基于部位模型的行人檢測(Zhang等,2018a)Fig.2 Pedestrian detection based on part model(Zhang et al.,2018a)
1.1.2 基于注意力機制的方法
與部位檢測器時間開銷大、數(shù)據(jù)依賴程度高不同,基于注意力機制的方法以弱監(jiān)督的方式自適應(yīng)地引導(dǎo)行人檢測網(wǎng)絡(luò)更多地關(guān)注遮擋行人的可見部位。Zhang等人(2018b)發(fā)現(xiàn)特征圖的不同通道可以用來感知行人不同的身體部位,由此提出了基于通道注意力的行人檢測網(wǎng)絡(luò)。該網(wǎng)絡(luò)針對性地加權(quán)原始通道特征圖,建立選擇注意力機制,使遮擋行人可見身體部位對應(yīng)的通道獲得更高的權(quán)重,以此降低遮擋噪聲對行人檢測器的干擾,提升遮擋行人的檢測精度。與之類似,Pang等人(2019)提出利用行人的可見身體部位構(gòu)建逐像素的空間注意力模塊MGAN(mask-guided attention network),如圖3所示。該模塊通過空間掩膜引導(dǎo)檢測器重點關(guān)注行人可見的身體區(qū)域,同時一定程度上降低行人的遮擋部分的特征權(quán)重,以此獲得更加魯棒的特征。
圖3 基于注意力機制的行人檢測(Pang等,2019)Fig.3 Pedestrian detection based on attention mechanism (Pang et al.,2019)
以上兩種典型的基于注意力機制的行人檢測方法嘗試從不同角度解決遮擋行人檢測問題。通道注意力機制聚焦在“什么”是有價值的特征,為了有效計算通道注意力,往往需要對輸入特征的空間維度進行壓縮。空間注意力更聚焦于“哪里”是最具有信息量的部分,這是對通道注意力的有效補充。因此,如何融合不同的注意力機制,如何合理地提升行人特征的表達(dá)能力,也是值得進一步探討的問題。
基于部位的行人檢測方法較為有效地降低了遮擋行人漏檢率,但是由于過于依賴局部(部位)特征,導(dǎo)致對結(jié)構(gòu)形似行人部位的背景目標(biāo)產(chǎn)生誤檢。例如,主體結(jié)構(gòu)形似行人軀干的樹干、形狀形似行人頭部的路燈等。顯然,僅基于行人部位的檢測算法較難滿足實際應(yīng)用的需求。因此,研究者提出了基于行人整體(全局特征)與部位(局部特征)加權(quán)的方法,旨在同時保證遮擋行人的低漏檢率以及無遮擋行人的低誤檢率。Zhou和Yuan(2018)提出了一種典型的基于該方法的行人檢測框架BiBox,如圖4所示。
圖4 基于整體與部位加權(quán)的行人檢測(Zhou等,2019)Fig.4 Pedestrian detection based on re-weighting between full-body and parts (Zhou et al.,2019)
BiBox利用一個網(wǎng)絡(luò)同時進行整體行人檢測和遮擋估計,具體而言就是在同一網(wǎng)絡(luò)中設(shè)計并行的兩條分支,分別輸出兩組預(yù)測框用以表征整體行人目標(biāo)以及行人可見部分。該方法顯著提高了遮擋及無遮擋檢測精度,但是代價也顯而易見,即需要數(shù)據(jù)集額外標(biāo)注出行人目標(biāo)的可見部分用于網(wǎng)絡(luò)訓(xùn)練,故該方法無法在沒有可見部分標(biāo)注的數(shù)據(jù)集上使用。
Chi等人(2020b)、Lin等人(2019)和Zhang等人(2019)提出了基于行人頭部特征與行人整體特征融合的檢測算法。此類檢測算法主要基于兩點考慮:一是在遮擋場景下,頭部特征往往具有較好的辨別性,因此可以有效改善遮擋行人檢測性能;二是行人整體特征包含較多的上下文信息,可以有效降低過于依賴頭部特征而導(dǎo)致誤檢,算法流程如圖5所示。
圖5 基于行人頭部與整體加權(quán)的檢測網(wǎng)絡(luò)(Zhang等,2019)Fig.5 Pedestrian detection based on joint learning of head and full-body features (Zhang et al.,2019)
此類方法通過對行人頭部和全身同時進行檢測,直觀有效地緩解了行人檢測中的遮擋問題,但仍存在局限性:一是與BiBox類似,需要額外的頭部標(biāo)注框,無法適用于沒有額外標(biāo)注的數(shù)據(jù)集;二是此類方法往往是通過雙支并行的結(jié)構(gòu)分別預(yù)測部位及整體檢測框,因此計算量增大,時間復(fù)雜度較高,處理效率差強人意。對此類方法而言,如何保證較高的行人檢測準(zhǔn)確率,同時保證較為有效的處理速度,仍是亟待解決的問題。
近年來,主流的行人檢測算法多基于通用的目標(biāo)檢測框架,因此也面臨與通用目標(biāo)檢測相似的兩個問題。1)訓(xùn)練階段的候選框與測試階段不一致。在訓(xùn)練階段,檢測器可以依據(jù)標(biāo)簽將交并比(interse-ction over union,IoU)大于某一閾值(例如0.5)的候選框作為正樣本用于訓(xùn)練分類網(wǎng)絡(luò)及回歸網(wǎng)絡(luò),因此候選框質(zhì)量往往較高。而在測試階段,由于缺少真值標(biāo)簽,所有候選框均參與分類與回歸過程,此時候選框質(zhì)量往往較低。這種訓(xùn)練與測試候選框分布不一致的情況通常會影響檢測器的檢測精度(Cai和Vasconcelos,2018)。2)難以為候選框設(shè)置合適的交并比閾值。一方面,較高的交并比閾值固然可以獲得高質(zhì)量的候選框,但是檢測器也面臨候選框過少、過擬合等風(fēng)險;同時,過度提高交并比閾值會加劇上述的不匹配問題;另一方面,較低的交并比閾值會增加大量低質(zhì)量的候選框,并不利于檢測器的訓(xùn)練。如圖6所示,其中u為交并比閾值,AP為平均精度,一味地提高交并比閾值反而會導(dǎo)致檢測性能降低。
圖6 不同交并比閾值對檢測性能的影響(Cai和Vasconcelos,2018)Fig.6 Performance of different IoU (Cai and Vasconcelos,2018)
目前,如何緩解檢測框架中的不匹配問題,如何為候選框設(shè)置合理的交并比閾值,也是研究者廣泛探討的熱點問題之一。研究者認(rèn)為,單一的閾值無法適應(yīng)候選框的變化(Cai和Vasconcelos,2018),由此引入了基于級聯(lián)(設(shè)置多種交并比閾值)的檢測方法。本文將基于級聯(lián)的行人檢測方法分為基于兩階段檢測器的級聯(lián)方法和基于單階段檢測器的級聯(lián)方法兩類。
1.3.1 基于兩階段檢測器的級聯(lián)方法
兩階段的檢測器是指檢測算法包含候選框產(chǎn)生和候選框修正兩個階段。以兩階段Faster R-CNN網(wǎng)絡(luò)為例,候選框通過RPN(region proposal network)模塊產(chǎn)生,并經(jīng)過R-CNN模塊進行修正,由此得到更加精確的檢測結(jié)果。本文首先介紹一種典型的基于兩階段檢測器的級聯(lián)方法Cascade R-CNN(Cai和Vasconcelos,2018),如圖7所示,其中H表示檢測模塊,B表示檢測框回歸結(jié)果,C表示檢測框分類得分,conv及pool分別表示卷積層及池化層。Cascade R-CNN采用級聯(lián)式的網(wǎng)絡(luò)框架,將檢測結(jié)果迭代式地回歸,前一級檢測模型的輸出作為下一級檢測模型的輸入,并逐步提高正負(fù)樣本分類時的交并比閾值。這種結(jié)構(gòu)具有3種顯著優(yōu)勢:1)與Iterative Bbox(Gidaris和Komodakis,2016)不同,Cascade R-CNN在不同階段針對不同的候選框分布設(shè)置不同的檢測網(wǎng)絡(luò)參數(shù)(H1,H2,H3),由此可以更好地提取不同分布下的候選框特征用于網(wǎng)絡(luò)訓(xùn)練;2)與integral loss(Zagoruyko等,2016)不同,Cascade R-CNN是級聯(lián)式的結(jié)構(gòu),下一級的檢測輸入與上一級的檢測輸出息息相關(guān);3)Cascade R-CNN利用交并比閾值遞增的策略,逐步改善了訓(xùn)練過程中正負(fù)樣本不平衡的問題。
圖7 Cascade R-CNN 算法框架圖(Cai和Vasconcelos,2018)Fig.7 Framework of Cascade R-CNN (Cai and Vasconcelos,2018)
值得注意的是,此類方法通過多級級聯(lián)的模式對檢測結(jié)果逐步精調(diào),可以取得更好的分類精度和更好的定位效果。利用這個特性,Brazil和Liu(2019)設(shè)計了基于級聯(lián)的自回歸框架AR-Ped(auto regressive network),旨在進一步提高行人檢測器的定位精度,如圖8所示,其中P1、P2和P3表示下采樣模塊。一方面,AR-Ped沿用Cascade R-CNN的檢測思路,采用級聯(lián)的方式漸進地提高候選框的采樣閾值。另一方面,AR-Ped設(shè)計了新穎的編碼—解碼(encoder-decoder)模塊,為候選框提供語義信息更豐富的底層特征,由此提高檢測精度。
圖8 AR-Ped框架圖(Brazil和Liu,2019)Fig.8 Framework of the AR-Ped (Brazil and Liu,2019)
諸如此類的基于兩階段檢測器的級聯(lián)方法對候選框進行了多次遞進式的分類與回歸,檢測精度較高,但是相對速度較慢。
1.3.2 基于單階段檢測器的級聯(lián)方法
單階段檢測器是指無需經(jīng)過候選框生成,可以通過錨點框直接預(yù)測分類結(jié)果和邊界框的回歸位置。因此,單階段檢測器往往效率較高、速度較快,但是面臨著嚴(yán)重的正負(fù)樣本不平衡問題,檢測精度較低。受Cascade R-CNN的啟發(fā),有研究者提出將級聯(lián)方法應(yīng)用于單階段檢測器中,在保證檢測速度的同時提高檢測精度。典型的行人檢測模型是ALFNet(asymptotic localization fitting network)(Liu等,2018)。其主要思想是多級漸進定位,即使用較高交并比閾值篩選第1級的檢測框作為第2級檢測框的輸入,之后逐步提高網(wǎng)絡(luò)的交并比閾值,從而訓(xùn)練更精確的行人檢測器,具體的網(wǎng)絡(luò)框架如圖9所示,其中,h及w分別表示特征圖高度及寬度,CPB(convolution prediction block)表示卷積預(yù)測模塊。通過該級聯(lián)的方式,一方面,可以為下一級檢測網(wǎng)絡(luò)提供更加精準(zhǔn)可靠的行人特征;另一方面,通過加權(quán)多級檢測置信度,可以得到更加可靠的檢測結(jié)果。相比于Cascade R-CNN,ALFNet更面向?qū)崟r的行人檢測應(yīng)用,提供了一種高效準(zhǔn)確的行人檢測方案。此外,ALFNet的研究結(jié)果表明,多步預(yù)測是提升行人檢測器定位精度的關(guān)鍵所在。
圖9 ALFNet檢測框架圖(Liu等,2018)Fig.9 Framework of ALFNet (Liu et al.,2018)
尺度變化問題也是行人檢測面臨的挑戰(zhàn)之一。本文將其主要難點概括為兩類:1)小尺度行人目標(biāo)漏檢率高。小尺度行人通常指在圖像中成像尺寸較小的目標(biāo),在Caltech(Dollr等,2012)和CityPersons(Zhang等,2017)等行人檢測通用數(shù)據(jù)集中,小尺度行人定義為高度小于30像素的行人目標(biāo)。因此小目標(biāo)在原圖中往往只具有模糊的輪廓,缺乏較為精細(xì)的行人骨架及紋理特征,檢測難度較大。2)行人目標(biāo)尺度分布不均衡。本文概括了兩種不均衡問題:1)單一圖像中大小尺度行人特征分布不均衡。例如,大尺度行人目標(biāo)往往具有清晰的紋理特征以及骨架信息,而小尺度行人目標(biāo)只具有模糊的輪廓信息,因此較難對不同尺度的目標(biāo)設(shè)計統(tǒng)一的特征處理策略。2)大小尺度行人目標(biāo)數(shù)目不均衡。在通用的行人檢測數(shù)據(jù)集中,往往小尺度行人目標(biāo)較少,因此在訓(xùn)練過程中小尺度行人難以得到充分學(xué)習(xí),導(dǎo)致訓(xùn)練后的模型對小尺度行人檢測精度較低。按以上兩個難點,本文將基于尺度的行人檢測方法分為基于特征融合的方法和基于尺度自適應(yīng)的方法。
1.4.1 基于特征融合的方法
研究者認(rèn)為,小尺度目標(biāo)往往在圖像中呈現(xiàn)輪廓特征模糊、細(xì)節(jié)紋理不清晰等特點,因此如何捕獲高質(zhì)量的特征是提高小目標(biāo)行人檢測性能的關(guān)鍵。本文介紹一種典型的基于特征融合的目標(biāo)檢測方法,用于提高小尺度行人目標(biāo)檢測精度。
Lin等人(2017)認(rèn)為頂層特征具有較為清晰的語義特征,同時底層特征具有更豐富的細(xì)節(jié)信息,包括圖像邊緣、輪廓和紋理等,因此通過頂層與底層特征融合互補的方法可以構(gòu)建更加魯棒的特征表達(dá)。如圖10所示,Lin等人(2017)提出通過自上而下的結(jié)構(gòu)進行特征融合,頂層特征經(jīng)過雙線性插值與較低層的特征圖進行逐像素相加。這種結(jié)構(gòu)增強了網(wǎng)絡(luò)對多尺度特征的提取能力,并作為基礎(chǔ)模塊廣泛應(yīng)用于各種目標(biāo)檢測框架,取得了顯著的性能提升。
圖10 基于特征融合的網(wǎng)絡(luò)結(jié)構(gòu)(Lin等,2017)Fig.10 Network structure based on feature fusion (Lin et al.,2017)
1.4.2 基于尺度自適應(yīng)的方法
大多數(shù)小尺度行人具有輪廓模糊的特點,很難與雜亂的背景和其他重疊實例區(qū)分。同時,大尺度的行人目標(biāo)通常表現(xiàn)出與小尺度行人不同的視覺特征。例如,大尺度行人的身體骨骼信息可以為行人檢測提供豐富的語義特征,而小尺度目標(biāo)的骨骼無法輕易識別。如圖11所示,大尺度行人目標(biāo)具有較大身體骨架特征響應(yīng),而小尺度行人目標(biāo)僅具有模糊的局部特征。
圖11 大尺度與小尺度行人目標(biāo)特征響應(yīng)值(Li等,2018)Fig.11 Feature activation of large-scale pedestrians and small-scale pedestrians (Li et al.,2018)((a)large-scale pedestrians;(b)small-scale pedestrians)
這種大小尺度行人目標(biāo)的特征差異導(dǎo)致較難設(shè)計統(tǒng)一的行人檢測網(wǎng)絡(luò)。針對這個問題,Li等人(2018)提出可以利用多尺度特征,采用分治理念解決關(guān)鍵的尺度變化問題。基于這一思路,Li等人(2018)認(rèn)為統(tǒng)一的框架可以包括多個單一模型,每個模型專門通過捕獲尺度特定的視覺特征來檢測特定范圍尺度的行人目標(biāo),具體的檢測框架SAF R-CNN(scale-aware fast R-CNN)如圖12所示。SAF R-CNN由兩條并行支路組成,分別用以檢測大尺度與小尺度行人目標(biāo)。該框架通過門函數(shù)加以控制,當(dāng)輸入大尺度目標(biāo)時,為大尺度分支分配較高的權(quán)重;反之,賦予小尺度分支的權(quán)重更大。通過加權(quán)兩路分支的輸出,SAF R-CNN實現(xiàn)對不同尺度行人的精準(zhǔn)檢測。
圖12 SAF R-CNN算法框架圖(Li等,2018)Fig.12 Framework of SAF R-CNN(Li et al.,2018)
基于錨點框的行人檢測方法通過預(yù)設(shè)大量尺寸和比例固定的行人目標(biāo)先驗框,用類似“窮舉”的方法羅列行人目標(biāo)的所有可能性。此類方法往往較為魯棒且具有更好的泛化性能,但存在一定局限性。例如,難以為不同數(shù)據(jù)集設(shè)定具有針對性的錨點框超參數(shù)、大量冗余的錨點框會導(dǎo)致計算資源的浪費以及正負(fù)樣本不均衡。因此,基于無錨點框的方法逐漸引起研究者的關(guān)注,如CenterNet(Zhou等,2019)和CornerNet(Law和Deng,2018)。此類方法并不需要額外設(shè)置先驗框參數(shù),而是直接利用特征圖進行分類預(yù)測以及位置回歸,推動了目標(biāo)檢測領(lǐng)域的巨大進步。近年來,研究者將基于無錨點框的方法應(yīng)用于行人檢測,本文將其主流方法概括為基于點的行人檢測方法和基于線的行人檢測方法。
基于點的行人檢測方法的出發(fā)點是認(rèn)為行人目標(biāo)可以用含有特定語義信息的點表示,例如角點、中心點等。CSP(center scale prediction)(Liu等,2019b)即是此類算法中的典型代表。CSP網(wǎng)絡(luò)的主要思路是:1)通過卷積神經(jīng)網(wǎng)絡(luò)直接預(yù)測行人目標(biāo)中心點熱力圖,熱力圖上響應(yīng)較大的點即為行人目標(biāo)置信度較高的位置;2)通過卷積及全連接層預(yù)測相應(yīng)的行人檢測框高度。具體框架如圖13所示,其中h及w分別表示輸入圖像高度及寬度。
圖13 CSP算法框架圖(Liu等,2019b)Fig.13 Framework of CSP(Liu et al.,2019b)
與基于錨點框的方法相比,基于點的方法優(yōu)點在于:1)降低了錨點框訓(xùn)練推理過程中的計算復(fù)雜度;2)基于點的方法更多依賴于行人可見部位特征而非整體行人特征,因此往往對于遮擋行人檢測較為有效。但是,由于基于點的方法僅使用中心點或角點附近區(qū)域的特征,因此有用信息相對有限,導(dǎo)致模型訓(xùn)練測試過程不穩(wěn)定,往往需要設(shè)計額外的約束或加權(quán)模塊用以穩(wěn)定檢測結(jié)果。
與CSP不謀而合,Song等人(2018)也嘗試跳脫出錨點框的限制,但是與CSP基于行人中心點的檢測思路不同,Song等人(2018)提出可以利用直立行人的垂直特征,設(shè)計了基于垂直線的行人檢測網(wǎng)絡(luò)TLL(topological line localization),具體框架如圖14所示,其中h及w分別表示輸入圖像高度及寬度。
圖14 TLL算法框架圖(Song等,2018)Fig.14 Framework of TLL(Song et al.,2018)
從基于線的檢測思路出發(fā),TLL將行人檢測劃分為3個子任務(wù),分別是行人目標(biāo)上頂點預(yù)測、行人目標(biāo)下頂點預(yù)測以及行人目標(biāo)中軸線預(yù)測。與CSP類似,預(yù)測結(jié)果用熱力圖表示,且熱力圖上響應(yīng)較大的點即為行人目標(biāo)置信度較高的位置。相較于基于錨點框的行人檢測方法,基于線的方法有兩個顯著優(yōu)勢:1)無需根據(jù)數(shù)據(jù)集人工設(shè)定大量先驗框,降低了計算復(fù)雜度。2)基于錨點框的檢測方法不可避免地引入背景噪聲,而基于線的方法具有更明確、更清晰的語義特征。相較于基于點的行人檢測方法,基于線的方法對行人結(jié)構(gòu)有垂直約束,在檢測性能上表現(xiàn)更為魯棒。此外,TLL通過提取相鄰幀間的運動信息,進一步提高了小尺度行人目標(biāo)檢測的召回率。總的來說,如何合理利用行人結(jié)構(gòu)信息,如何合理提取幀間行人運動信息,也是行人檢測領(lǐng)域值得探討的研究方向。
無論是基于錨點框還是基于無錨點框的行人檢測方法均依賴于一些通用技術(shù)模塊。針對通用技術(shù)模塊的改進,往往可以直接有效地提升行人檢測器的性能。本文總結(jié)了近年來研究者對于行人檢測通用技術(shù)的改進,并將主流的改進算法概括為損失函數(shù)的改進和后處理方式的改進。
損失函數(shù)通常是由人工設(shè)計,并作為卷積神經(jīng)網(wǎng)絡(luò)的優(yōu)化目標(biāo),用于估量模型預(yù)測值偏離真實值的程度。在目標(biāo)檢測中,損失函數(shù)作為模型的重要組成部分,其改進方法引起廣泛關(guān)注。本文針對目標(biāo)檢測或行人檢測中的不同問題,介紹3種典型的損失函數(shù)。
1)針對目標(biāo)檢測中的回歸定位問題,研究者提出將交并比作為損失函數(shù)用于模型優(yōu)化。但是交并比作為損失函數(shù)存在兩點不足:(1)交并比在目標(biāo)沒有重疊時為0,無法反映兩個目標(biāo)之間的真實距離;(2)交并比無法區(qū)分兩個目標(biāo)的相對方向,更確切地講,存在不同方向上交并比完全相等的情況。因此,Rezatofighi等人(2019)提出了廣義交并比(generalized intersection over union,GIoU)損失函數(shù),計算為
(1)
式中,AC表示兩個框的最小閉包區(qū)域面積,即同時包含了預(yù)測框和真實框的最小框的面積,U表示兩個框并集的面積。由式(1)可以得出,廣義交并比GIoU具有兩點優(yōu)勢:1)繼承了原交并比算法的優(yōu)點,包括非負(fù)性、尺度不敏感性等;2)在兩框重合時取最大值1,在兩框無交集且其相距無限遠(yuǎn)時取最小值-1,因此是有效的距離度量指標(biāo)。GIoU作為高效的通用損失函數(shù)已經(jīng)應(yīng)用到目標(biāo)檢測的各個領(lǐng)域,行人檢測作為目標(biāo)檢測的重要分支也因此取得了較高的精度提升。
2)Lin等人(2020)認(rèn)為目標(biāo)檢測中通用的交叉熵?fù)p失函數(shù)(cross entropy function,CE)無法緩解正負(fù)樣本不平衡的問題。CE的計算式為
(2)
式中,p為模型預(yù)測置信度,y為真值標(biāo)簽。對于式(2)的交叉熵?fù)p失函數(shù)而言,正負(fù)樣本以相同的權(quán)重相加得到總的損失值。因此,在正負(fù)樣本極度不均衡的情況下,此交叉熵?fù)p失函數(shù)直接導(dǎo)致訓(xùn)練模型對于負(fù)樣本的學(xué)習(xí)能力過強,正樣本無法得到有效訓(xùn)練。Lin等人(2020)提出的FL(focal loss)通過加權(quán)因子,有效降低了大量簡單負(fù)樣本在訓(xùn)練中所占的權(quán)重。
3)針對行人遮擋問題,Wang等人(2018)提出RepLoss(repulsion loss),如圖15所示。Wang等人(2018)認(rèn)為如何精確地定位密集人群中每個行人目標(biāo)是檢測器最為關(guān)鍵的問題之一。密集遮擋的主要影響表現(xiàn)在顯著增加了行人定位的難度,候選框難以準(zhǔn)確匹配其對應(yīng)的真實目標(biāo)框,造成漏檢及誤檢增多。因此,Wang等人(2018)通過改進檢測算法中常用的回歸方法,使候選框距離與之匹配的真實目標(biāo)框較近,距離其他真實目標(biāo)框較遠(yuǎn),同時使得屬于不同真實目標(biāo)框的候選框彼此距離也較遠(yuǎn)。通過這種方式,RepLoss大幅提升了遮擋場景下的檢測精度,并在通用目標(biāo)檢測中進一步證明了其有效性。
圖15 RepLoss原理圖(Wang等,2018)Fig.15 Illustration of RepLoss (Wang et al.,2018)
本文提到的后處理方式主要指非極大值抑制算法(non maximum suppression,NMS)。非極大值抑制是一種重疊框去除方法,廣泛應(yīng)用于主流的目標(biāo)檢測框架中,非極大值抑制算法的性能與檢測精度息息相關(guān),因此也是行人檢測通用技術(shù)的研究熱點之一。針對行人檢測任務(wù)的特殊性,非極大值抑制算法主要用于提升密集場景中遮擋行人目標(biāo)的檢測性能,本文介紹兩種典型的非極大值抑制算法。
1)Liu等人(2019a)提出了場景自適應(yīng)的非極大值抑制方法Adaptive NMS,通過對密集場景及稀疏場景設(shè)置不同的非極大值抑制閾值提升遮擋行人檢測性能,具體框架如圖16所示。Liu等人(2019a)認(rèn)為較高的非極大值抑制閾值會導(dǎo)致稀疏場景誤檢率增高,而較低的非極大值抑制閾值無法有效地減少密集場景中大量重疊的檢測框。因此,依據(jù)場景密度動態(tài)調(diào)整非極大值抑制閾值至關(guān)重要。Adaptive NMS通過引入密度預(yù)測分支(density subnet)合理估計不同場景的密集程度,并據(jù)此密度等級設(shè)置相應(yīng)的非極大值抑制閾值。
圖16 Adaptive NMS算法框架圖(Liu等,2019a)Fig.16 Framework of Adaptive NMS (Liu et al.,2019a)
2)Huang等人(2020)提出可以利用行人部位檢測框改進非極大值抑制算法R2NMS。如圖17所示,該思路的出發(fā)點是行人的可見部位有效緩解了遮擋問題,因此,利用行人可見部位的交并比設(shè)置非極大值抑制閾值可以充分抑制重疊誤檢框,同時保證遮擋場景的低漏檢率。
圖17 基于行人部位的NMS改進算法(Huang等,2020)Fig.17 Improved NMS based on pedestrian parts (Huang et al.,2020)
數(shù)據(jù)是人工智能技術(shù)發(fā)展的基礎(chǔ),深度學(xué)習(xí)技術(shù)的進步離不開數(shù)據(jù)的支撐,常用的公開數(shù)據(jù)集也是各領(lǐng)域評估模型性能的重要依據(jù)。隨著行人檢測領(lǐng)域不斷發(fā)展,越來越多復(fù)雜多樣、具有針對性的行人檢測數(shù)據(jù)集涌現(xiàn),數(shù)據(jù)類型更加豐富、場景更加真實,更為貼近實際應(yīng)用環(huán)境。
表1列出了常用的行人數(shù)據(jù)集。USC(University of Southern California)(Wu和Nevatia,2005)、INRIA(Dalal和Triggs,2005)以及ETH(Eidgenossische Technische Hochschule)(Ess等,2007)均為早期公開的行人檢測數(shù)據(jù)集。其中USC(USC pedestrian detection test set)包含3組數(shù)據(jù),即USC-A、USC-B和USC-C,3組子集分別針對不同的行人檢測場景。USC-A中的圖像來自網(wǎng)絡(luò),行人間不存在相互遮擋,拍攝角度為正面或背面;USC-B中的圖像主要來自CAVIAR視頻庫,包括各種視角的行人,行人之間有相互遮擋;USC-C中的圖像同樣來自網(wǎng)絡(luò),均為正面無遮擋行人目標(biāo)。戴姆勒行人檢測標(biāo)準(zhǔn)數(shù)據(jù)集Daimler(Enzweiler和Gavrila,2009)圖像采集自車載相機,均為灰度圖像,另包含3個輔助的非行人圖像集。Caltech(Dollr等,2012)和City-Persons(Zhang等,2017)是較為廣泛用于評估行人檢測性能的數(shù)據(jù)集。Caltech數(shù)據(jù)集包含大量小尺度行人目標(biāo)及遮擋行人目標(biāo),可以有效檢驗復(fù)雜場景下行人檢測器性能。此外,Caltech和CityPersons含有可見部位標(biāo)注,有利于部位檢測器的訓(xùn)練。CrowdHuman(Shao等,2018)和WiderPerson(Zhang等,2020)因場景復(fù)雜、行人間遮擋嚴(yán)重,近年來受到研究者的廣泛關(guān)注。CrowdHuman數(shù)據(jù)集不僅具有整體行人標(biāo)注,還提供了行人可見部位標(biāo)注和行人頭部標(biāo)注。WiderPerson聚焦于野外場景,圖像采集自網(wǎng)絡(luò),同時標(biāo)注遮擋類型,為訓(xùn)練遮擋模板提供了可能。
表1 行人檢測常用數(shù)據(jù)集Table 1 Widely used datasets for pedestrian detection
本文主要介紹兩種常用的行人檢測評價指標(biāo),均是目前主流的判斷行人檢測器優(yōu)劣的標(biāo)準(zhǔn)。
1)平均對數(shù)漏檢率(log-average miss rate) (Dollr等,2012)。該指標(biāo)通過同時計算MR(miss rate)和每幅圖誤檢個數(shù)(false positives per image,F(xiàn)PPI)衡量行人檢測器性能。MR計算為
MR=1-TP/N
(3)
式中,TP(true positive)表示預(yù)測正確的行人目標(biāo)個數(shù),N表示真實行人目標(biāo)總數(shù)。通過繪制MR-FPPI曲線,平均對數(shù)漏檢率為9個FPPI值下的平均MR值,記為MR-2,其中9個點是對數(shù)區(qū)間[10-2,100]上的均勻采樣。MR-2表示在指定誤檢率的情況下行人檢測器的漏檢率。MR-2越低,表示模型漏檢率越低,檢測性能越好。
2)平均精度AP(average precision)。該指標(biāo)通過同時計算準(zhǔn)確率(precision)以及召回率(recall)衡量行人檢測器性能。準(zhǔn)確率表示預(yù)測為正的樣本中含有真正正樣本的比例。召回率表示真正正樣本中正確預(yù)測的比例。通過計算precision-recall曲線的線下面積,即可得平均精度值A(chǔ)P,AP值越大,模型精度越高,性能越好。
在驗證行人檢測算法性能時,一般希望能夠綜合評估算法在不同情況下的表現(xiàn),因而需要在數(shù)據(jù)集的各個子集上進行測試,這些子集有著不同的側(cè)重點,例如有的子集目標(biāo)尺寸較小、有的子集目標(biāo)嚴(yán)重遮擋。通過在這些不同的子集上驗證,可以考察算法針對尺度變化、遮擋等問題的處理能力。各子集的詳細(xì)描述如表2所示。
表2 行人數(shù)據(jù)集子集劃分方法Table 2 Method to divide pedestrian datasets
表3總結(jié)了不同算法在Caltech數(shù)據(jù)集上的實驗結(jié)果。ACF(aggregated channel features)(Dollr等,2014)和LDCF(locally decorrelated channel features)(Nam等,2014)均采用手工特征進行行人檢測,盡管采用了特征融合等方式,檢測性能依然落后于基于深度學(xué)習(xí)的行人檢測方法。TLL-TFA(topological line localization and temporal feature aggregation)(Song等,2018)采用基于線的檢測方式,在遮擋和小尺度行人檢測中顯著超越其他算法。JointDet(Chi等,2020a)和PedHunter(Chi等,2020b)采用基于整體與部位加權(quán)的方法,通過平衡的方式同時降低漏檢及誤檢率,檢測性能在通用行人檢測中更為突出。
表3 以MR-2為評價標(biāo)準(zhǔn),不同行人檢測算法在Caltech數(shù)據(jù)集上的性能比較Table 3 MR-2 of different pedestrian detection algorithms on Caltech pedestrian dataset /%
表4總結(jié)了不同算法在CityPersons數(shù)據(jù)集上的實驗結(jié)果。一方面,基于錨點框與基于無錨點框的方法CSP和TLL + MRF在通用行人檢測子集R上性能相差無幾,但是基于無錨點框的方法可以有效緩解行人遮擋問題。另一方面,基于改進的非極大值抑制的方法Adaptive-NMS和R2NMS,以及基于部位檢測的方法MGAN表現(xiàn)優(yōu)異,主要得益于對遮擋問題的有效處理。
表4 以MR-2為評價標(biāo)準(zhǔn),不同行人檢測算法在CityPersons數(shù)據(jù)集上的性能比較Table 4 MR-2 of different pedestrian detection algorithms on CityPersons pedestrian dataset /%
此外,相比于手工特征,基于深度學(xué)習(xí)的行人檢測技術(shù)取得了較好的性能,但是目前的檢測效果與人類自身表現(xiàn)之間仍有較大差距。
根據(jù)以上實驗結(jié)果和已有的研究思路,本文總結(jié)了基于深度學(xué)習(xí)的行人檢測技術(shù)待解決問題和未來發(fā)展方向。
1)遮擋處理問題。遮擋普遍存在于行人檢測和人臉檢測等諸多計算機視覺任務(wù)中,是這些任務(wù)的核心挑戰(zhàn)之一。在遮擋場景下,行人身體結(jié)構(gòu)信息破壞,與檢測器學(xué)習(xí)到的無遮擋行人特征差異較大,從而導(dǎo)致漏檢。此外,由于遮擋程度或遮擋模式的不同,有遮擋行人特征往往呈現(xiàn)多樣性的特點,因而對依賴數(shù)據(jù)驅(qū)動的通用行人檢測框架提出了更高要求。目前,針對遮擋問題的解決方案大致分為以下兩類:(1)引入部位特征輔助檢測;(2)通過改進的后處理方法保留更多的檢測框以匹配遮擋行人目標(biāo)。雖然這些方法一定程度上緩解了遮擋問題,但是往往需要引入額外的網(wǎng)絡(luò)結(jié)構(gòu),如部位檢測網(wǎng)絡(luò)(Huang等,2020)、密度預(yù)測網(wǎng)絡(luò)(Liu等,2019a),因而復(fù)雜度較高,處理速度較慢,較難滿足實際應(yīng)用的需求。如何合理提升遮擋行人表征能力,如何提高遮擋行人檢測器效率,是目前遮擋行人檢測亟待解決的問題。
2)尺度處理問題。尺度變化是行人檢測面臨的另一個嚴(yán)峻挑戰(zhàn)。由于行人距離攝像機的遠(yuǎn)近不同,在同一圖像中往往呈現(xiàn)尺度差異較大的行人目標(biāo)。一方面,小尺度目標(biāo)輪廓模糊、有用信息較少,檢測器難以精準(zhǔn)檢測。另一方面,大尺度目標(biāo)與小尺度目標(biāo)特征差異較大,難以針對不同尺度的目標(biāo)設(shè)計統(tǒng)一的特征處理策略。本文總結(jié)了當(dāng)前行人檢測算法針對尺度變化的處理方法,包括特征融合、尺度自適應(yīng)等。此外,仍有兩個研究方向值得探索:(1)針對小目標(biāo)行人設(shè)計專用的特征提取網(wǎng)絡(luò)?,F(xiàn)有的特征提取算法大多基于通用目標(biāo),而行人外觀表現(xiàn)模式具有一定的特點,例如行人大多直立、行人寬高比相對固定等,因此小目標(biāo)行人容易形成其特殊的外觀特性,檢測器可以針對這種外觀表現(xiàn)設(shè)計合適的特征提取策略。(2)引入多任務(wù)學(xué)習(xí)機制。由于大小尺度行人目標(biāo)的特征不一致性,可以構(gòu)建多任務(wù)模型,分別檢測大小尺度目標(biāo),同時通過聯(lián)合學(xué)習(xí)以獲得更多有利于小目標(biāo)行人檢測的信息,提升小目標(biāo)檢測的性能。
3)檢測器效率問題。當(dāng)前行人檢測器效率問題主要體現(xiàn)在兩個方面:(1)時間復(fù)雜度高。為了緩解遮擋、尺度變化等問題,主流的行人檢測框架通常引入額外的網(wǎng)絡(luò)框架,因而導(dǎo)致計算量增加,檢測速度變慢,難以滿足實際應(yīng)用的實時性需求。(2)主流的行人檢測器多針對行人檢測的某一類特定問題,如RepLoss針對遮擋行人檢測、MS-CNN(Cai等,2016)針對行人尺度變化,因此難以同時滿足遮擋檢測及尺度自適應(yīng)的需求。如何提升算法效率,如何兼顧遮擋與尺度問題,也是未來一個重要的研究方向。
4)有效利用多模態(tài)信息問題?,F(xiàn)有的行人檢測方法主要集中于單一視角的圖像模態(tài),這種單一的模態(tài)信息往往無法避免隨之而來的遮擋問題、尺度問題以及視角問題等。因此,如何挖掘多種信息、如何構(gòu)建多模態(tài)信息的交互也是行人檢測未來可行的研究方向之一。例如,利用深度信息(即行人目標(biāo)距離攝像機的遠(yuǎn)近)可以感知行人的尺度變化,因此可以有效提高多尺度行人檢測性能;利用俯視圖信息可以有效緩解絕大多數(shù)的行人遮擋問題,由此提高遮擋行人檢測精度。Luo等人(2020)基于該思路提出了一種多模態(tài)融合的行人檢測網(wǎng)絡(luò),通過融合深度信息、俯視圖信息以及正視圖信息極大提高了遮擋行人檢測性能。
行人精確檢測是智能視頻監(jiān)控、無人駕駛和智能機器人等領(lǐng)域深度應(yīng)用的基礎(chǔ)性關(guān)鍵問題。本文關(guān)注行人檢測面臨的兩個核心問題:遮擋及尺度變化,從基于錨點框的行人檢測、基于無錨點框的行人檢測和行人檢測通用技術(shù)改進3個角度對基于深度學(xué)習(xí)的行人檢測算法進行綜述,對比分析了行人檢測通用數(shù)據(jù)集及主流算法在數(shù)據(jù)集上的實驗結(jié)果。最后,總結(jié)了行人檢測待解決的4個問題,即如何進行遮擋處理、如何進行尺度處理、如何提高檢測器效率以及如何有效利用多模態(tài)信息,同時提出了針對性的解決方案。
總而言之,以卷積神經(jīng)網(wǎng)絡(luò)為代表的深度學(xué)習(xí)方法極大推動了行人檢測領(lǐng)域的進步,但是依然面臨遮擋及尺度變化的嚴(yán)峻挑戰(zhàn),也是當(dāng)前行人檢測領(lǐng)域亟需解決的問題之一。近年來,行人檢測方法已經(jīng)廣泛應(yīng)用于自動駕駛、安防監(jiān)控和機器人自動化等領(lǐng)域,但是距離高效率高精度的檢測目標(biāo)仍有一定差距,因此提高檢測效率、提升檢測精度以及拓寬應(yīng)用領(lǐng)域也是窺見可行的發(fā)展方向。