周薇娜 孫麗華 徐志京
(上海海事大學 上海 201306)
行人檢測旨在從視頻和圖像中定位行人目標,是計算機視覺領域中一項傳統(tǒng)但又極其重要的任務。隨著時代的發(fā)展,行人檢測技術非但沒有被淘汰,反而越發(fā)在實際生活中發(fā)揮出了重要作用,獲得了越來越多的關注[1–3]。現(xiàn)如今在大多數(shù)人工智能應用中,例如自動駕駛、人流統(tǒng)計、行人身份識別、行人跟蹤、行人行為動作分析等方面,行人檢測技術都獨立或作為一個重要環(huán)節(jié)起到了獨一無二,無可替代的作用。
行人檢測技術一般主要由特征提取和目標分類決策兩部分組成。傳統(tǒng)行人檢測算法將這兩部分分開執(zhí)行。首先通過手工提取行人特征(包括顏色、邊緣和紋理等常用特征),然后用這些特征來訓練好分類器后進行檢測。手工提取特征有諸如SIFT[4]或梯度方向直方圖[5](Histogram of Oriented Gradients, HOG)等,而特征分類器,例如支持向量機[6](Support Vector Machines, SVM)、適應提升方法[7](Adaptive Boosting, AdaBoost)和隨機森林[8](Random forest,RF)等。這種檢測方法基于滑動窗口區(qū)域,沒有針對性,計算量大,時間復雜度高,有窗口冗余,且手工特征對于背景復雜的情況不具有很好的魯棒性。基于以上分析,傳統(tǒng)方法無論在速度還是準確性方面都無法在實際應用中獲得令人滿意的結果。
基于深度學習的目標檢測算法近年來在計算機視覺任務方面取得了重大突破[9–11],大幅度地提高了檢測算法的準確率?;谏疃葘W習的行人檢測算法主要集中為兩類:
(1)兩步檢測算法:將檢測問題分為兩個階段,第1階段生成候選區(qū)域,第2階段對候選區(qū)域做回歸和分類。這類算法的典型代表是R-CNN[12]系列算法,如R-CNN, Fast R-CNN[13]和Faster RCNN[14]等。此種基于候選區(qū)域的算法雖然精度高,但存在計算量大、運算速度慢,不能滿足實時應用的缺點。
(2)單步檢測算法:一種基于回歸的端到端的目標檢測方法,具體包括特征提取網絡、邊界框回歸和分類網絡兩個部分。該類算法不生成候選區(qū)域,直接將數(shù)據(jù)輸入卷積神經網絡。之后預測物體的邊界框信息,并對這些候選邊界框進行判別,其中包括:對邊界框內包含的物體的類別標簽進行判別、對邊界框的位置進行回歸。典型的該類算法有YOLO算法[15–17]和SSD[18]算法。單步檢測算法打破了候選區(qū)域生成這一常規(guī)前期處理操作,從而提高了基于深度學習的目標檢測類算法的速度,也推動了行人檢測技術的發(fā)展。
然而,行人檢測尚有兩大難點是目前已有的傳統(tǒng)和深度學習還未完全解決的。一是面對多變的復雜環(huán)境,不管是依靠可見光還是紅外傳感器信息都難以獲得令人滿意的效果。如日常生活中常會遇見的煙霧、雨水、灰塵、光照度低等情況都會造成可見光圖像中行人目標不可見或模糊不清的情況,而紅外圖像雖可以提高此種情況下圖像的質量,但其無法描述行人特征豐富的輪廓和顏色信息,也會導致一些漏檢和誤檢情況。二是行人目標的多尺度變化和小尺寸行人目標的檢測。當場景中同時存在不同尺寸的行人,或者行人目標中存在尺寸較小、分辨率較低的個體,檢測器提取到的行人特征會更加容易受到環(huán)境背景中的噪聲干擾,將會導致漏檢、誤檢,這對檢測結果的準確性帶來了不小的挑戰(zhàn)。因此,本文以復雜環(huán)境下的多尺度行人目標檢測的難點問題為主要研究內容,融合可見光和紅外圖像信息,結合深度學習和多尺度信息提取技術提出了一種基于卷積神經網絡的融合行人檢測網絡(FPDNet)。
本文所提出的方法具有以下幾個方面的特色和創(chuàng)新:(1) 設計并搭建了一個精簡的特征提取骨干網絡,包括基于殘差結構的骨干基礎網絡和金字塔池化層,提高了網絡對目標的檢測效果;(2) 在網絡檢測結構中采用多尺度檢測技術,來應對行人目標的尺寸變化,尤其改善了小尺寸行人目標的檢測效果;(3) 決策融合可見光和紅外圖像信息,為網絡提供更豐富可靠的行人目標特征,使得整個網絡在多變復雜環(huán)境中更具魯棒性。
本文提出的融合行人檢測網絡FPDNet頂層框圖如圖1所示??梢姽夂图t外圖像由多尺度檢測網絡得到特征分類結果后,經過決策融合模塊得到最終的檢測結果。而多尺度檢測網絡,又主要由特征提取骨干網絡和多尺度檢測模塊構成(詳見圖2)。因此整個算法網絡的主要模塊包括特征提取骨干網絡、多尺度檢測和信息決策融合3部分。

圖1 FPDNet頂層框圖

圖2 多尺度檢測網絡內部結構圖
如上一小節(jié)所述,單步檢測深度學習網絡具有較高的檢測率和速度。單步檢測法中又以YOLO算法執(zhí)行最為高效,其YOLOv3版本可以通過強大的GPU實現(xiàn)實時目標檢測,在行人檢測上占有明顯的優(yōu)勢。但YOLOv3使用的Darknet-53網絡并不適合單一類別物體的檢測,過深和冗余的網絡結構,造成網絡收斂速度較慢,增大了訓練過程的時間開銷,增加了目標細節(jié)特征信息丟失的可能性。對于骨干網絡,參數(shù)過多會導致檢測模型訓練復雜化,增加對輸入數(shù)據(jù)量的需求,檢測速度也會降低。YOLOv3-tiny[17]為YOLOv3的精簡版本,由于使用了更少的卷積層,檢測速率得到了提高。然而,YOLOv3-tiny檢測精度卻下降得很厲害。針對這些不足,本文建立了一個改進的卷積神經網絡框架作為行人檢測模型的特征提取網絡,解決了檢測精度和參數(shù)冗余互為矛盾的問題。該特征提取骨干網絡分為骨干基礎網絡和金字塔池化層[19](Spatial Pyramid Pooling, SPP)網絡兩個部分。
(1)骨干基礎網絡:骨干基礎網絡以ResNet[20]為基礎,基礎網絡基本單元如圖3所示。對于傳統(tǒng)卷積神經網絡,若輸入為x,學習到的特征輸出H(x)=x,為恒等映射。本文中骨干基礎網絡的核心思想是將網絡的輸出分為恒等映射(Identity Mapping)和殘差映射(Residual Mapping)兩部分,即輸出H(x)=x+F(x)。網絡將學習目標改變,學習的將是期望輸出和輸入的殘差F(x),因此,接下來的訓練方向就是要隨著網絡加深,準確率不下降的情況下,將殘差F(x)逼近于零。

圖3 骨干基礎網絡基本單元
骨干基礎網絡結構如表1所示,網絡輸入維度為416×416×3,包括Conv(卷積層),Max(最大池化層)和Res(殘差層)。左邊第1列的3, 4, 2等數(shù)字表示對應模塊的重復次數(shù),Res層執(zhí)行快捷連接操作。ResNet結構可以很好地控制梯度的傳播,避免訓練中發(fā)生梯度消失或爆炸。其將卷積神經網絡的逐層訓練改為了逐階段訓練,網絡被分為若干個子段,其中包含比較淺的網絡,然后用快捷連接的方式對每個小段訓練。這種訓練方式解決了特征信息在網絡中傳遞時信息丟失損耗的問題,一定程度上保護了信息的完整性,降低了目標特征學習的難度。并且從表1中可以看出,該骨干基礎網絡參數(shù)相對較少,因此能提高收斂速度,降低整體網絡訓練的難度。

表1 骨干基礎網絡結構表
(2)金字塔池化層:區(qū)別于YOLOv3結構在特征提取網絡之后直接連接預測網絡,而忽略了同一層卷積上對每一張圖像多方面的特征提取,本文在骨干基礎網絡之后,引入一個金字塔池化層(SPP),以提高其檢測精度。它可以將圖像從較精細的層次劃分為較粗的層次,并在所有層次上聚合局部特征。
如圖4所示,SPP層由3個最大池化層組成,本文將池化層網絡中使用的卷積核大小設計為5×5,9×9和13×13。在本文的結構中,所有這些不同尺寸的最大池化層會通過填充操作進行結果對齊,使具有相同大小的輸出。然后將所有合并后的輸出特征圖連接起來作為下一個卷積層的輸入。網絡從不同的空間尺度對特征圖進行特征提取,再組合,更多空間信息通過卷積運算被充分利用,能進一步提高行人目標的檢測精度,增強了算法的魯棒性。

圖4 SPP層結構
行人檢測的一個難點在于不同尺寸,尤其是小尺寸行人目標的檢測。由于物體細節(jié)特征的豐富性和具體程度與其所占像素數(shù)量基本成正比,小目標特征不易提取,從而會導致整體檢測率的下降。在目標檢測中,語義特征是指區(qū)分背景和目標對象的信息。對于卷積神經網絡來說,不同的網絡深度對應不同層次的特征,細粒度特征更容易在分辨率高的淺層網絡學到,分辨率較低的深層網絡則學到的更多的是語義特征。針對弱小行人目標,由于小尺度的特征圖中無法提供所需的分辨率信息,還需聯(lián)合大尺度的特征圖進行判斷,增加特征層之間的互補性。因此本文采用了3個不同尺度(13×13, 26×26和104×104)的特征圖來進行行人檢測。如圖5所示,本文從網絡中前兩個圖層中得到特征圖,并對它進行兩次上采樣操作。再根據(jù)網絡更早的圖層中獲得的特征圖,把高低兩種分辨率的特征圖連接到一起,增強底層特征圖對行人目標特征的描述能力。通過這種方式,上采樣的特征中更多的語義信息將被利用,也能從網絡中較低層的特征映射圖中獲得檢測目標更細粒度的信息。每個檢測層分配3個錨箱(anchor)來預測目標候選框信息(包括中心坐標位置,框的高度和寬度)、1個目標置信度值和它的類別概率,最后比較9種尺寸的檢測結果,通過非極大值抑制方法確定最終檢測結果。

圖5 多尺度檢測模塊
可見光圖像在光線良好、目標不被遮擋的情況下,能較為準確地反映目標的特征信息;而紅外圖像不易受光照度和煙雨、霧霾等復雜環(huán)境的影響,可以適應日夜連續(xù)監(jiān)測。本文充分利用可見光和紅外圖像各自的優(yōu)勢特點,采用圖像決策融合的方法來實現(xiàn)兩種圖像中行人特征信息的互補,充分利用多個信息源的細節(jié)特征,從更周全、準確和可靠的角度來描述檢測目標,以此來提高行人目標在復雜環(huán)境變化中的識別準確度。決策融合檢測方法對前期數(shù)據(jù)要求低,并且具有良好的實時性和容錯性,可以更好地克服單一傳感器造成的誤差。本文基于決策融合的行人目標檢測方法的具體流程如圖6所示。

圖6 基于決策融合的目標檢測流程
從圖6中可以看到,當前期特征提取網絡訓練得到兩個獨立的區(qū)域特征分類模塊后,在決策融合層對兩個獨立的分類模塊預測的置信度采用Softmax[21]分類,如式(1)所示。將具有最高預測概率的類別作為包含在預測邊界框中物體的類別,最后輸出決策融合的檢測類別結果。式中p為對應的預測概率,x為分類模塊的預測值,i表示序號,j表示分類數(shù)目。基于決策級融合的檢測算法效率較高,可以實現(xiàn)多波段圖像的信息互補,比基于單一類別的可見光或紅外圖像的行人檢測器更具穩(wěn)健性,而且方便實現(xiàn),運算速度較快,能滿足實時檢測的需求。這些都為行人檢測在多變復雜環(huán)境中的實際應用奠定了基礎。

本文所做實驗的硬件配置為Intel i7 8700k處理器、NVIDIA TITAN XP 顯卡、64 GB RAM的服務器,軟件環(huán)境為Ubuntu16.04系統(tǒng)、Darknet框架。
實驗所采用的訓練和測試數(shù)據(jù)主要來源于KAIST[22]行人數(shù)據(jù)庫,該數(shù)據(jù)庫包含了校園、街道等各種常見生活和交通場景,并且包含了豐富的白天和夜晚各種天氣下的環(huán)境,能代表絕大多數(shù)實際生活中會碰到的復雜情況。行人與鏡頭的距離也各有不同,行人目標被分為3種尺度,即大于80像素的大尺度行人目標,30~80像素的中等尺寸行人目標和不在少數(shù)的小于30像素的小尺寸行人目標。該數(shù)據(jù)庫分為set01~set09 共9個子集針對復雜環(huán)境下多尺度行人檢測的研究需求,在保留訓練樣本多樣性的前提下,為縮短訓練時間,精簡訓練樣本,本文選取了set05和set09文件夾中的可見光和紅外圖像作為數(shù)據(jù)樣本,并剔除了其中空對象。最終本文的數(shù)據(jù)集總共包括2783對圖像,訓練集和測試集樣本的分配比例為7:3。
本文在FPDNet檢測模型中使用了3個尺度的目標檢測層,尺寸分別為13像素×13像素、26像素×26像素和104像素×104像素。對于每個檢測層,分別使用3種尺寸錨箱,即共9種尺寸的錨箱,通過聚類輸入圖像的真實邊界框參考值來檢測行人目標。在訓練模型前,首先根據(jù)已經標注了邊界框的數(shù)據(jù)集,用K-means聚類算法[23]得出初始的錨箱尺寸和比例,具體候選框的高度和寬度如表2所示。

表2 候選框的寬度和高度表
訓練過程中本文使用的是隨機梯度下降法[24],設定初始學習率為0.001,動量(momentum)為0.9,權重衰減(decay)為0.005,批大小(batchsize)為16,使用0.001 的學習率迭代訓練數(shù)據(jù)12000次,然后再用0.0001的學習率迭代到18000 次,最后用0.00001 的學習率迭代到20000 次。正負樣本的IOU[25](Intersection Over Union)設置為0.5,即大于此閾值就設定為正樣本,否則設定為負樣本。
3.4.1 與基于單可見光或紅外圖像的算法在檢測效果上的直觀視覺比較
為了更直觀證明本文提出的融合思想的有效性,將決策融合后的檢測結果與基于單傳感器的檢測結果進行對比。我們在數(shù)據(jù)集中選取了4幅圖像來代表4類比較典型的生活場景下多尺度行人的圖像。4幅圖像如圖7所示,其中圖7(a)、圖7(b)中的行人較為密集,大、小尺寸的目標兼有,并有相互遮擋的情況。圖7(c)中行人目標較小,目標特征不明顯,難以辨認。圖7(d)中行人目標尺寸相對正常,作為對比。
圖8顯示了對圖7中幾幅圖像或其相對紅外圖像進行行人檢測的結果,其中圖8(a1), (b1), (c1),(d1)為基于可見光圖像的行人檢測結果圖,圖8(a2),(b2), (c2), (d2)為基于相對紅外圖像的行人檢測結果圖,圖8(a3), (b3), (c3), (d3)為基于本文提出的FPDNet的檢測結果圖。

圖7 4幅行人檢測實驗圖

圖8 融合檢測效果對比圖
由圖8對同一幅圖像的處理效果對比得出,單一行人檢測器對行人目標均有一定程度的丟失,融合檢測能夠適應多種檢測環(huán)境,取得較好的效果。如圖8(a1)可見光圖像中未檢測出人群中的小目標。圖8(b2)和圖8(c2)紅外圖像中均漏檢了一個小目標,而只有目標尺度較大,較為明顯的圖7(d)圖的檢測結果,不論是可見光還是紅外圖像均檢測出了目標,但紅外的結果更為顯著。
3.4.2 與其他基于融合的算法在檢測指標上的比較分析
本文采用mAP(mean Average Precision)指標反映目標檢測精度,fps(frame per second)為每秒的檢測幀數(shù),代表目標檢測速度。式(2)和式(3)為mAP的計算公式,其中AP表示單一類別的檢測精度;R表示數(shù)據(jù)集中某個類別所有目標的數(shù)量;n表示數(shù)據(jù)集中所有目標的數(shù)量;j表示目標的序號,若與真實值相關,Ij為1,否則Ij為0;而Rj是前j個目標中相關目標的數(shù)量。q表示某一類別;QR表示總的類別數(shù)量。mAP值介于0~1之間,值越大表示該算法的檢測精度越高。

表3顯示了ACF+T+THOG[26], HalFus+TSDCNN[27], TSDCNN+Ada[28], SSD, YOLOv3和YOLOv3-tiny算法與本文的FPDNet多尺度融合行人檢測網絡的檢測性能比較結果。7種模型均使用了同一種數(shù)據(jù)集數(shù)據(jù)進行訓練和測試。實驗結果表明,本文的檢測網絡在準確性方面與擁有最高準確度的YOLOv3模型相差不大,但其檢測速度卻比Y O L O v 3 有了明顯提高。在速度方面僅次于YOLOv3-tiny,但比YOLOv3-tiny的檢測精度提高了超過10%。而其他模型的檢測效果與本文算法相比,在檢測率和速度上均無法抗衡。綜合在檢測精度和速度兩方面的表現(xiàn),本文采用的FPDNet與其他幾種常用的目標檢測模型相比,具有最佳的檢測效果??紤]到實際生活中對行人檢測算法在對檢測速度和準確性上的雙重要求,本文算法顯然更有利于應用在實際相關領域中。

表3 網絡模型的對比結果表
本文提出了一種能在復雜背景環(huán)境中對多尺度行人目標進行高效檢測的算法––融合的行人目標檢測網絡(FPDNet)。本文算法提出的特征提取骨干網絡,其精簡的參數(shù)量改善了檢測算法的檢測效率;針對行人目標的尺度變化,在網絡結構中采用了多尺度檢測技術,尤其改善了小尺寸行人目標的檢測效果;此外,算法利用可見光圖像和紅外圖像中目標特征的差異,決策融合了從可見光和紅外圖像中提取的行人目標信息,使得檢測更具魯棒性。實驗結果表明,相對于單一紅外或可見光行人檢測器,以及其他常見的目標檢測算法,F(xiàn)PDNet不僅在檢測精確度上表現(xiàn)良好,且具備實時應用性,可以更好地應對多變復雜場景和環(huán)境下的多行人目標檢測問題。