杜培德,嚴(yán) 華
(四川大學(xué)電子信息學(xué)院,成都 610065)
(*通信作者yanhua@scu.edu.cn)
密集人群計(jì)數(shù)的任務(wù)是估計(jì)圖像或視頻中包含的人物數(shù)量。隨著全球人口數(shù)量的上漲和人類(lèi)社會(huì)活動(dòng)的增加,各地公共場(chǎng)所經(jīng)常會(huì)出現(xiàn)人群大量聚集的情況,如交通樞紐和娛樂(lè)場(chǎng)所等,這給公共安全帶來(lái)了巨大的隱患。密集人群計(jì)數(shù)任務(wù)在視頻監(jiān)視、交通控制和大都市安全方面應(yīng)用廣泛,各國(guó)研究人員開(kāi)展了大量研究。人群計(jì)數(shù)的方法還可以推廣到其他領(lǐng)域的類(lèi)似任務(wù),例如醫(yī)學(xué)中顯微圖像的細(xì)胞數(shù)量估計(jì)[1]、交通擁擠情況下的車(chē)輛估計(jì)[2]和廣泛的生物樣本調(diào)查[3]等。
一些早期的方法通過(guò)檢測(cè)人群中的每個(gè)行人來(lái)解決人群計(jì)數(shù)問(wèn)題[4],取得了一定的效果;但是在人群密集場(chǎng)景和嚴(yán)重遮擋場(chǎng)景下該方法效果會(huì)急劇下降。因此,基于特征回歸的方法[5-7]被用來(lái)解決此問(wèn)題?;貧w方法通常學(xué)習(xí)一種從特征到人數(shù)的映射關(guān)系,通過(guò)提取前景特征學(xué)習(xí)一個(gè)線(xiàn)性回歸或高斯過(guò)程回歸來(lái)計(jì)數(shù)。然而,這種回歸方法學(xué)習(xí)到的是低級(jí)特征映射,當(dāng)場(chǎng)景尺度和視角急劇變化時(shí)效果不佳。
近年來(lái),卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)[8-10]在計(jì)算機(jī)視覺(jué)領(lǐng)域的成功應(yīng)用,為解決上述問(wèn)題開(kāi)拓了新的方法。自密度圖的思想在文獻(xiàn)[2]中被提出以來(lái),基于密度估計(jì)的方法已經(jīng)在人群計(jì)數(shù)任務(wù)中占據(jù)了絕對(duì)優(yōu)勢(shì)。使用深度卷積神經(jīng)網(wǎng)絡(luò)來(lái)估計(jì)密度圖以及大規(guī)??捎脭?shù)據(jù)集的提出[11-14]進(jìn)一步提高了在更具挑戰(zhàn)性的真實(shí)場(chǎng)景中進(jìn)行人群計(jì)數(shù)的準(zhǔn)確性。人群計(jì)數(shù)的最新工作一直集中在深度神經(jīng)網(wǎng)絡(luò)新穎架構(gòu)(例如多列CNN[15-16]和注意力機(jī)制)的設(shè)計(jì)上,以進(jìn)行準(zhǔn)確的密度圖估計(jì)。這些設(shè)計(jì)的動(dòng)機(jī)通常是為了改進(jìn)對(duì)比例變化的人群圖像的泛化能力。
Zhang 等[11]提出了一種具有多分支的多列卷積神經(jīng)網(wǎng)絡(luò)(Multi-column Convolutional Neural Network,MCNN)體系結(jié)構(gòu),其中每個(gè)分支使用不同大小的濾波器,這些分支的特征被組合在一起以進(jìn)行密度圖估計(jì)。Sam 等[15]使用類(lèi)似的想法設(shè)計(jì)了一種稱(chēng)為選擇卷積神經(jīng)網(wǎng)絡(luò)(Switching Convolutional Neural Network,Switch-CNN)的架構(gòu)。Switch-CNN 使用多個(gè)分支、不同大小的卷積核提取特征;但是,Switch-CNN 并未連接所有分支的特征圖,而是學(xué)習(xí)了一個(gè)分類(lèi)器,該分類(lèi)器預(yù)測(cè)輸入圖像的密度等級(jí),然后使用此預(yù)測(cè)選擇一個(gè)分支并使用該分支用于密度估計(jì)。Sindagi 等[16]提出了上下文金字塔卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)(Contextual Pyramid CNN,CP-CNN),除了整個(gè)圖像的全局密度等級(jí)外,CP-CNN還可以預(yù)測(cè)圖像中的局部密度等級(jí),將從全局和局部密度等級(jí)預(yù)測(cè)中獲得的上下文信息進(jìn)行組合,以進(jìn)行最終密度估計(jì)。陸金剛等[17]提出了多尺度多列卷積神經(jīng)網(wǎng)絡(luò)(Multi-scale Multi-column Convolutional Neural Network,MsMCNN),以多列卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為主干,每列使用不同大小的卷積核;并將中間層特征圖跳躍傳遞給后端的反卷積層,最后融合各分支特征圖得到估計(jì)密度圖。以上方法均取得了一定進(jìn)步,但Li 等[18]提出的密集場(chǎng)景識(shí)別網(wǎng)絡(luò)(Congested Scene Recognition Network,CSRNet)中指出,多列CNN 中使用不同大小卷積核,各列提取到的特征相差不大,結(jié)構(gòu)冗余復(fù)雜,且多列卷積網(wǎng)絡(luò)訓(xùn)練困難、耗時(shí)長(zhǎng)。CSRNet 使用深層卷積網(wǎng)絡(luò)VGG-16(Visual Geometry Group 2016)[8]前10層作為特征提取器,后端使用7層擴(kuò)張卷積作為回歸器,在各個(gè)數(shù)據(jù)集上均表現(xiàn)最佳。本文也將基于此網(wǎng)絡(luò)做出改進(jìn)。
近幾年,注意力模型在各種計(jì)算機(jī)視覺(jué)任務(wù)中得到了廣泛應(yīng)用,可以有效提升模型的識(shí)別準(zhǔn)確性。使用注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)方法[19-23]在密集人群計(jì)數(shù)任務(wù)中也取得了一定的成果。如陳美云等[19]提出的像素級(jí)注意力機(jī)制的人群計(jì)數(shù)方法(crowd counting method based on Pixel-level Attention Mechanism,PAM)。首先使用全卷積神經(jīng)網(wǎng)絡(luò)生成像素級(jí)的密度等級(jí)掩碼,然后將原圖與密度圖掩碼共同傳入反卷積網(wǎng)絡(luò)回歸得到估計(jì)密度圖。Zou 等[22]提出了比例校準(zhǔn)模塊(Scale Recalibration Module,SRM)和比例聚焦模塊(Scale Focus Module,SFM)。SFM模塊對(duì)不同卷積層特征圖聚焦,使每個(gè)層可以聚焦于不同規(guī)模的行人;在SFM 處理后將這些特征發(fā)送到SRM,以通過(guò)切片/堆棧策略重新分配規(guī)模感知特征圖,最終回歸出高質(zhì)量密度圖和準(zhǔn)確人群數(shù),取得了良好的效果。但是,采用SFM 模塊會(huì)使每個(gè)層只聚焦于一種特定規(guī)模,這就隔離了各個(gè)層特征圖之間的相關(guān)性,使得最終網(wǎng)絡(luò)性能無(wú)法達(dá)到最佳。
本文設(shè)計(jì)了多尺度空間注意力特征融合網(wǎng)絡(luò)(Multiscale spatial Attention Feature fusion Network,MAFNet)來(lái)避免上述的問(wèn)題。由于深層特征圖具有較大接受域,因此它帶有可用于定位大尺寸頭部的高級(jí)語(yǔ)義信息;由中間層生成的特征圖在計(jì)算小尺寸頭部時(shí)更準(zhǔn)確、可靠,并且包含有關(guān)人群的空間分布信息;低層特征圖則包含更多低級(jí)紋理的重要細(xì)節(jié)信息。本文計(jì)劃融合一個(gè)主干網(wǎng)絡(luò)的三個(gè)不同階段的特征圖來(lái)降低網(wǎng)絡(luò)的復(fù)雜度,實(shí)現(xiàn)特征融合,從而降低計(jì)算量,提高訓(xùn)練速度。為了合理融合多層次特征,本文引入了輕量級(jí)基于通道方向和空間方向的注意力模塊CBAM(Convolutional Block Attention Module)[24],避免了多尺度特征直接融合帶來(lái)的混亂,保持了各層特征圖的相關(guān)性,也加快了網(wǎng)絡(luò)的收斂。此外,為提高網(wǎng)絡(luò)表現(xiàn)性能,本文提出了聯(lián)合使用雙損失函數(shù)的方式來(lái)訓(xùn)練網(wǎng)絡(luò),使人群計(jì)數(shù)準(zhǔn)確度進(jìn)一步提升。實(shí)驗(yàn)結(jié)果驗(yàn)證了本文的方法在四個(gè)主要人群計(jì)數(shù)數(shù)據(jù)集(ShanghaiTech[11]、UCF_CC_50[13]、UCF-QNRF[14]和World-Expo’10[12])上達(dá)到人群計(jì)數(shù)誤差最小。
綜上所述,本文的主要工作如下:
1)設(shè)計(jì)了一種多尺度空間注意力特征融合網(wǎng)絡(luò)MAFNet用于人群計(jì)數(shù),通過(guò)合并來(lái)自同一主干網(wǎng)絡(luò)不同層的特征圖來(lái)感知尺度變化和空間分布,使網(wǎng)絡(luò)保留更多細(xì)節(jié);
2)引入通道空間注意力機(jī)制對(duì)融合特征圖進(jìn)行重新校準(zhǔn),提高特征圖的聚焦能力,減少背景、噪聲的影響,便于精準(zhǔn)定位人頭部位置;
3)提出聯(lián)合損失函數(shù)約束預(yù)測(cè)密度圖與真值密度圖的一致性,加快網(wǎng)絡(luò)訓(xùn)練收斂速度,提高人群計(jì)數(shù)的準(zhǔn)確度。
本章將介紹提出的多尺度空間注意力特征融合網(wǎng)絡(luò)(MAFNet)。首先介紹用于密度圖預(yù)測(cè)的主要網(wǎng)絡(luò)結(jié)構(gòu);接著介紹多尺度特征融合結(jié)構(gòu)和融合策略;然后介紹引入的通道空間注意力模塊(CBAM)如何整合特征圖的相關(guān)性,實(shí)現(xiàn)特征圖聚焦能力,最后介紹提出的聯(lián)合損失函數(shù)。
本文模型的主要目標(biāo)是學(xué)習(xí)一個(gè)從原始圖像到密度圖的映射F:
其中:Ii表示輸入圖像表示預(yù)測(cè)密度圖;θ為學(xué)習(xí)到的網(wǎng)絡(luò)參數(shù)。具體人群計(jì)數(shù)結(jié)果可以通過(guò)對(duì)預(yù)測(cè)密度圖進(jìn)行積分得到?;谏鲜鰯?shù)學(xué)模型,本文提出了多尺度空間注意力特征融合網(wǎng)絡(luò),體系結(jié)構(gòu)如圖1所示。
與CSRNet 相同,本文的主干網(wǎng)絡(luò)也包括兩部分:前端深層卷積網(wǎng)絡(luò)(VGG)和后端擴(kuò)張卷積網(wǎng)絡(luò)。選擇VGG-16 網(wǎng)絡(luò)的前10層作為前端網(wǎng)絡(luò),并只保留3個(gè)池化層,其強(qiáng)大的特征提取能力和可調(diào)整的結(jié)構(gòu)便于特征融合。將7 層擴(kuò)張卷積層作為后端網(wǎng)絡(luò),利用其大范圍接收野提取更深層的重要信息,且保持輸出密度圖的分辨率。如圖1 所示,VGG 網(wǎng)絡(luò)和擴(kuò)張卷積網(wǎng)絡(luò)的詳細(xì)設(shè)計(jì)如表1 所示,其中,卷積層數(shù)字表示為:(層數(shù))×(卷積核大小)×(卷積核大?。粒ň矸e核個(gè)數(shù))conv-(擴(kuò)張因子)。此外,為了實(shí)現(xiàn)尺度感知能力,本文構(gòu)建了多尺度特征融合結(jié)構(gòu),分別從前端VGG 網(wǎng)絡(luò)的三個(gè)階段抽取特征圖通過(guò)特征融合策略進(jìn)行融合,融合后的特征圖作為多尺度特征圖。在前端與后端模塊之間的過(guò)渡區(qū),分別對(duì)VGG 特征圖和多尺度特征圖進(jìn)行了通道空間注意力校準(zhǔn),并將二者進(jìn)行逐像素地加和。
圖1 MAFNet結(jié)構(gòu)Fig.1 Architecture of MAFNet
表1 主干網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)Tab.1 Architecture design of backbone network
VGG 網(wǎng)絡(luò)的局限性在于它在整個(gè)圖像上使用單向相同尺寸卷積核進(jìn)行卷積編碼。為了解決這個(gè)問(wèn)題,本文提出融合VGG 的三個(gè)階段特征來(lái)提取多尺度上下文信息實(shí)現(xiàn)尺度感知。
在VGG-16 的前10 層網(wǎng)絡(luò)中,由于第一個(gè)卷積層的接收野太小,無(wú)法獲得任何人群信息,因此首先從第一個(gè)池化層之后抽出一個(gè)淺層特征圖分支,作為第一個(gè)特征融合分支F_64;從第二個(gè)池化層之后抽出一個(gè)中間層特征圖分支,作為第二個(gè)特征融合分支F_128;從最后一個(gè)池化層之后抽出一個(gè)深層特征圖分支,作為第三個(gè)特征融合分支F_256。此時(shí)F_64 的尺寸為[64,W/2,H/2]([通道數(shù),寬,高]),F(xiàn)_128 的尺寸為[128,W/4,H/4],F(xiàn)_256的尺寸為[256,W/8,H/8]。
本文的融合策略是使用1×1×128 conv-1(卷積核大小為1×1,卷積核個(gè)數(shù)為128,擴(kuò)張因子為1)的卷積層將F_64 擴(kuò)容到[128,W/2,H/2],之后經(jīng)過(guò)一個(gè)2×2 max pooling 池化層,即圖1中的EP 操作(式(2)),得到特征圖FF_1[128,W/4,H/4]。FF_1與F_128尺度相同,因此對(duì)二者先在通道維度上進(jìn)行拼接,然后經(jīng)過(guò)一個(gè)2×2 max pooling池化層,即圖1中的CP操作(式(3)),得到特征圖FF_2[256,W/8,H/8]。之后將FF_2 與F_256 在通道維度上進(jìn)行最后的拼接,即C 操作(式(4)),得到最終的融合特征圖FF_3[512,W/8,H/8]。上述操作的公式化定義如下:
融合特征FF_3 和VGG 網(wǎng)絡(luò)的輸出特征分別通過(guò)注意力模塊,在通道維度和空間維度上重新整合上下文信息進(jìn)行重新校準(zhǔn)。最后,再將校準(zhǔn)后的兩個(gè)特征圖累加融合,此后送入擴(kuò)張卷積網(wǎng)絡(luò)回歸得到密度圖。
1.1 節(jié)和1.2 節(jié)中VGG 網(wǎng)絡(luò)、擴(kuò)張卷積網(wǎng)絡(luò)和多尺度特征融合結(jié)構(gòu)在模型的深度和感受野兩方面提高了模型的泛化能力。此外,注意力機(jī)制的引入能使模型更加關(guān)注重要特征而抑制不重要特征,本文引入注意力模塊的方法為直接將該模塊插入特征圖傳遞路徑上。
通道空間注意力模塊結(jié)構(gòu)如圖2 所示,本模塊旨在從通道維度和全局空間維度上分別學(xué)習(xí)到目標(biāo)特征和位置特征。具體而言,就是給定一個(gè)中間特征圖,本模塊會(huì)沿著通道和空間兩個(gè)維度依次推斷出注意力權(quán)重,然后與原特征圖相乘來(lái)對(duì)特征進(jìn)行自適應(yīng)調(diào)整。具體公式表示如下:
其中:F∈RC×H×W,Mc∈RC×1×1,Ms∈R1×H×W,F(xiàn)是輸入特征圖,Mc是通道注意力操作,Ms是空間注意力操作,F(xiàn)'和F″分別是通道注意力和空間注意力的輸出特征圖;?表示逐元素乘法。
MAFNet 在尺度融合時(shí)將不同深度的特征圖融合為了一組特征,而不同深度特征圖的語(yǔ)義信息層次不同,也就是對(duì)不同大小人頭的感知能力各不相同。因此,注意力模塊在通道維度作出調(diào)整,可以增加通道維度上的相關(guān)性,提高模型面對(duì)人群分布變化劇烈的場(chǎng)景的適應(yīng)能力;注意力模塊在空間維度上重新校準(zhǔn)特征圖,使特征圖上人頭位置的像素值更大,背景的像素值更小,提高了模型的背景抑制能力。
圖2 通道空間注意力模塊Fig.2 Convolutional block attention module
現(xiàn)有的大多數(shù)研究都只使用均方誤差損失作為人群計(jì)數(shù)的損失函數(shù),該損失函數(shù)可以約束預(yù)測(cè)密度圖和真實(shí)密度圖之間的像素級(jí)誤差。均方誤差損失函數(shù)定義如下:
其中:N是一個(gè)批次的圖像個(gè)數(shù);G(Xi;θ)是使用網(wǎng)絡(luò)參數(shù)θ對(duì)圖像Xi預(yù)測(cè)的密度圖是圖像Xi的真實(shí)密度圖。均方誤差損失函數(shù)把目標(biāo)值與模型輸出(估計(jì)值)G(Xi;θ)作差后計(jì)算平方得到誤差。因此L2對(duì)離群點(diǎn)會(huì)異常敏感,使模型更偏向于離群點(diǎn),對(duì)于密集人群圖像中人群分布變化巨大的數(shù)據(jù)集會(huì)表現(xiàn)不佳。而絕對(duì)值誤差損失是目標(biāo)值與模型輸出(估計(jì)值)G(Xi;θ)差的絕對(duì)值作為誤差,對(duì)離群點(diǎn)更加魯棒,絕對(duì)值誤差損失函數(shù)定義如下:
其中:N是一個(gè)批次的圖像個(gè)數(shù);G(Xi;θ)為使用網(wǎng)絡(luò)參數(shù)θ對(duì)圖像Xi預(yù)測(cè)的密度圖是圖像Xi的真實(shí)密度圖。
因此,本文提出聯(lián)合使用均方誤差損失和絕對(duì)值誤差損失來(lái)約束預(yù)測(cè)密度圖和真實(shí)密度圖。用L1能夠?qū)Ξ惓V蹈敯?,用L2能夠更快地收斂,L2比L1能更快速收斂的原因在于預(yù)測(cè)值與目標(biāo)值接近時(shí),L2曲線(xiàn)更加平滑。最終損失函數(shù)通過(guò)加權(quán)兩個(gè)損失函數(shù)得到:
其中,λ是權(quán)衡均方誤差損失和絕對(duì)值誤差損失的權(quán)重,它是一個(gè)超參數(shù)。
2.1.1 真實(shí)密度圖生成
對(duì)于真實(shí)密度值δ中的目標(biāo)物體xi,用表示其k近鄰的平均距離。在實(shí)驗(yàn)中,按照文獻(xiàn)[11]中的配置,其中β=0.3且k=3。對(duì)于密集場(chǎng)景ShanghaiTech 數(shù)據(jù)集的PartA,UCF_CC_50 和UCF_QNRF 使用自適應(yīng)高斯核生成密度圖;對(duì)于稀疏場(chǎng)景ShanghaiTech 數(shù)據(jù)集的PartB 和World_Expo’10使用固定高斯核生成密度圖。
2.1.2 訓(xùn)練方法
使用與CSRNet 相同的方法端到端地訓(xùn)練MAFNet。其中,VGG-16 網(wǎng)絡(luò)的前10 個(gè)卷積層導(dǎo)入了預(yù)訓(xùn)練模型參數(shù),目的是提高訓(xùn)練速度;后面的7 層擴(kuò)張卷積層的初始值設(shè)置為標(biāo)準(zhǔn)偏差0.01 的高斯初始值。訓(xùn)練期間,應(yīng)用隨機(jī)梯度下降(Stochastic Gradient Descent,SGD)優(yōu)化器來(lái)訓(xùn)練MAFNet,學(xué)習(xí)率設(shè)為固定1E -7,且動(dòng)量設(shè)為0.95。所有的實(shí)驗(yàn)均在Ubuntu16.04 系統(tǒng)下,使用Python 3.7 在Pytorch 框架下編碼,在一塊RTX 2080Ti GPU上訓(xùn)練。
2.2.1 評(píng)估準(zhǔn)則
與大多數(shù)基于卷積神經(jīng)網(wǎng)絡(luò)的密集人群計(jì)數(shù)方法相同,使用平均絕對(duì)誤差(Mean Absolute Error,MAE)和均方誤差(Mean Square Error,MSE)作為評(píng)估準(zhǔn)則。MAE 反映了模型的準(zhǔn)確性,而MSE反映了模型的穩(wěn)健性,這些指標(biāo)定義如下:
其中:N是測(cè)試集圖像數(shù)量;Ci和分別是人群計(jì)數(shù)場(chǎng)景的預(yù)測(cè)密度圖和真實(shí)密度圖。
2.2.2 數(shù)據(jù)集
在四個(gè)公開(kāi)數(shù)據(jù)集 ShanghaiTech、UCF_CC_50、UCF_QNRF和World-Expo’10上進(jìn)行實(shí)驗(yàn),并與現(xiàn)有方法進(jìn)行了對(duì)比,結(jié)果如表2 所示。選擇對(duì)比的方法主要可以分為兩類(lèi):一類(lèi)為多列多尺度結(jié)構(gòu)方法,一類(lèi)為注意力機(jī)制方法。其中多列卷積神經(jīng)網(wǎng)絡(luò)(MCNN)、選擇卷積神經(jīng)網(wǎng)絡(luò)(Switch-CNN)、上下文金字塔神經(jīng)網(wǎng)絡(luò)(CP-CNN)、多尺度多列卷積神經(jīng)網(wǎng)絡(luò)(MsMCNN)以及尺度聚合網(wǎng)絡(luò)SANet(Scale Aggregation Network for accurate and efficient crowd counting)均是多列多尺度結(jié)構(gòu)的方法;像素級(jí)注意力網(wǎng)絡(luò)(PAM)、關(guān)系注意 力 網(wǎng) 絡(luò)RANet(Relational Attention Network for crowd counting)以及分級(jí)尺度校準(zhǔn)網(wǎng)絡(luò)HSRNet(crowd counting via Hierarchical Scale Recalibration Network)是注意力機(jī)制的方法;擴(kuò)張卷積神經(jīng)網(wǎng)絡(luò)(CSRNet)則是單列結(jié)構(gòu)網(wǎng)絡(luò),本文在此基礎(chǔ)上改進(jìn)。
1)ShanghaiTech。本數(shù)據(jù)集有1 198 張帶標(biāo)注的圖像,包含330 165 個(gè)人。其中482 張較密集場(chǎng)景被劃分為PartA,716張較稀疏場(chǎng)景被劃分為PartB。PartA包括482張圖像,圖像場(chǎng)景中人數(shù)變化范圍從33 到3 139,其中,300 張圖像構(gòu)成訓(xùn)練集,182 張圖像構(gòu)成測(cè)試集;PartB 有716 張圖片,人數(shù)變化范圍從12 到578,其中,400 張圖像構(gòu)成訓(xùn)練集,316 張構(gòu)成測(cè)試集。
2)UCF_CC_50。本數(shù)據(jù)集僅包含50 張人數(shù)從94 到4 543不等的圖像,這使其成為了人群計(jì)數(shù)任務(wù)中最有挑戰(zhàn)性的數(shù)據(jù)集。使用與文獻(xiàn)[13]中相同的5 倍交叉驗(yàn)證方法:將圖像劃分為5 等份圖像子集,每次選擇4 組作為訓(xùn)練集,剩余1 組為測(cè)試集進(jìn)行訓(xùn)練,最后給出5組結(jié)果的平均值。
3)UCF_QNRF。本數(shù)據(jù)集有1 535 張圖像,包含1 151 642個(gè)人,該數(shù)據(jù)集具有多種多樣的場(chǎng)景,人群密度從49到12 865不等,這使訓(xùn)練和預(yù)測(cè)都變得更加困難;而且,圖像分辨率變化也非常大,導(dǎo)致人頭尺寸急劇變化。其中訓(xùn)練集由1 201張圖像組成,其余為測(cè)試集。
4)World-Expo’10。它包含從108個(gè)不同監(jiān)控設(shè)備中收集的3 980張已標(biāo)注視頻序列圖像。其中,3 380張作為訓(xùn)練集,剩余600張劃分為5個(gè)場(chǎng)景作為測(cè)試集,每個(gè)圖像均包含一個(gè)感興趣區(qū)域(Region Of Interest,ROI)。在本數(shù)據(jù)集上,本文方法實(shí)驗(yàn)結(jié)果展示了每個(gè)場(chǎng)景(Sce1~Sce5)的MAE 以及所有場(chǎng)景的平均值。
2.2.3 結(jié)果分析
如表2 所示,對(duì)于ShanghaiTech 數(shù)據(jù)集,本文方法與其他方法相比,在PartA 中實(shí)現(xiàn)了較低的MAE 和MSE。MAFNet 是基于CSRNet 做出的改進(jìn),因此與CSRNet 相比,在PartA 中的MAE 和MSE 分別下降9.4%和9.9%;但比兩種注意力機(jī)制方法RANet 和HSRNet稍差,RANet 方法使用了先進(jìn)的自注意力機(jī)制,達(dá)到了所有方法中最低的MAE。此外,本文在PartB 的實(shí)驗(yàn)結(jié)果達(dá)到了所有方法中最低的MAE 和MSE,人群計(jì)數(shù)準(zhǔn)確 率 最 高,與CSRNet 相 比MAE 下 降34.9%,MSE 下 降29.4%。在UCF_CC_50 數(shù)據(jù)集上,本文方法與CSRNet 相比,MAE 下降26.1%,MSE 下降26.2%,與最好的RANet 相比,MAE 下降18.0%,MSE 下降8.2%。在最大的數(shù)據(jù)集也是頭部大小變化最大的數(shù)據(jù)集UCF-QNRF 上,本文方法也取得了最低計(jì)數(shù)誤差,與現(xiàn)有最好方法RANet 相比,MAE 和MSE 分別下降4.5%和5.3%。與使用了相同注意力模塊的方法HSRNet相比,在World-Expo’10數(shù)據(jù)集中,本文方法獲得了更低的MAE。上述數(shù)據(jù)表明了本文方法MAFNet 無(wú)論是在擁擠的人群場(chǎng)景數(shù)據(jù)集中還是在稀疏的人群場(chǎng)景數(shù)據(jù)集均能達(dá)到較高的人群計(jì)數(shù)準(zhǔn)確率。從實(shí)驗(yàn)結(jié)果中也可以發(fā)現(xiàn),所有多列多尺度方法實(shí)驗(yàn)結(jié)果均比注意力方法和單列結(jié)構(gòu)差,說(shuō)明多列結(jié)構(gòu)提取到的特征信息相似度較高,單純多列結(jié)構(gòu)無(wú)法整合多尺度特征,對(duì)實(shí)驗(yàn)性能提升不大。本文則采用從單列結(jié)構(gòu)中提取多尺度特征的策略,并引入注意力機(jī)制整合多尺度特征,這樣既減少了多列結(jié)構(gòu)帶來(lái)的計(jì)算量,也避免了多尺度特征融合的混亂,所以?xún)?yōu)于多數(shù)方法。
表2 不同方法在公開(kāi)數(shù)據(jù)集上的MAE與MSE結(jié)果比較Tab.2 Comparison on MAE and MSE of different methods on public datasets
此外,如圖3 所示,本文方法MAFNet 也可以產(chǎn)生更加精細(xì)的預(yù)測(cè)密度圖。在圖中展示的四個(gè)場(chǎng)景中,有兩個(gè)非常密集的場(chǎng)景和兩個(gè)相對(duì)稀疏的場(chǎng)景,本文方法均能生成與真實(shí)密度圖幾乎相同的密度圖,估計(jì)出更加接近真實(shí)人數(shù)的數(shù)字。這表明,本文方法在抑制背景干擾和保持細(xì)節(jié)方面的性能優(yōu)越。
圖3 本文方法針對(duì)不同場(chǎng)景圖生成的預(yù)測(cè)密度圖和真實(shí)密度圖對(duì)比Fig.3 Comparison results of estimated density map generated by the proposed method and ground truth density map for different scene images
如圖4所示,圖(a)是從ShanghaiTech的PartA提取的一張?jiān)紙D像,圖(b)是對(duì)應(yīng)的真實(shí)密度圖,圖(c)是MAFNet 生成的預(yù)測(cè)密度圖,(d)是CSRNet 生成的預(yù)測(cè)密度圖。針對(duì)標(biāo)注框內(nèi)區(qū)域,本文方法預(yù)測(cè)密度圖(c)的細(xì)節(jié)更加精細(xì),背景和前景區(qū)分的輪廓更加明顯,而CSRNet 網(wǎng)絡(luò)的預(yù)測(cè)密度圖(d)則相對(duì)模糊。
圖4 MAFNet與CSRNet的密度圖細(xì)節(jié)對(duì)比Fig.4 Comparison of density map details of MAFNet and CSRNet
如圖5 所示,圖(a)展示了三種具有復(fù)雜背景的場(chǎng)景,圖像1 的背景有路燈、大量氣球以及遮陽(yáng)傘;圖像2 的背景中有一塊亮斑,而且是夜景照片;圖像3 的背景包含茶杯、大量樹(shù)葉、汽車(chē)以及遮陽(yáng)傘等。圖(b)是使用本文方法生成的預(yù)測(cè)密度圖,可以看出:圖像1 中所有的氣球、路燈和遮陽(yáng)傘所在位置均被預(yù)測(cè)為背景;圖像2 中右上角的亮斑在密度圖中也被預(yù)測(cè)為背景;圖像3 中上部存在大量樹(shù)葉,樹(shù)葉在密集場(chǎng)景下是人群計(jì)數(shù)任務(wù)中最大的干擾背景,但在密度圖中也未被誤識(shí)別。
圖5 MAFNet在復(fù)雜背景場(chǎng)景下的預(yù)測(cè)密度圖Fig.5 Estimated density maps of MAFNet in complex background scenes
最后,分別從網(wǎng)絡(luò)結(jié)構(gòu)和超參數(shù)兩個(gè)方面做消融實(shí)驗(yàn),驗(yàn)證多尺度特征融合結(jié)構(gòu)、注意力模塊和聯(lián)合損失函數(shù)的有效性。消融實(shí)驗(yàn)是深度學(xué)習(xí)方法驗(yàn)證網(wǎng)絡(luò)模型各子結(jié)構(gòu)對(duì)精度提升有效性的最好方式。首先,在ShanghaiTech 數(shù)據(jù)集上,針對(duì)多尺度特征融合結(jié)構(gòu)和注意力模塊進(jìn)行消融實(shí)驗(yàn)。由于本文方法是在CSRNet基礎(chǔ)之上的改進(jìn),因此本文的消融實(shí)驗(yàn)在CSRNet 上依次添加多尺度特征融合結(jié)構(gòu)(Multi-scale Future fusion structure,MF)和注意力模塊(CBAM)。最后,CSRNet+MF+CBAM就是本文的網(wǎng)絡(luò)MAFNet,實(shí)驗(yàn)結(jié)果如表3所示。
如表3所示,CSRNet增加多尺度融合結(jié)構(gòu)可以使PartA數(shù)據(jù)集的MAE 下降2.9%,MSE 下降6.3%,使PartB 數(shù)據(jù)集的MAE 下降31.3%,MSE 下降25.6%,而且多尺度融合結(jié)構(gòu)對(duì)PartB 數(shù)據(jù)集的性能改善更大;CSRNet 增加注意力模塊使PartA 數(shù)據(jù)集的MAE 下降2.3%,MSE 下降10.5%,使PartB 數(shù)據(jù)集的MAE 下降26.4%,MSE 下降18.7%;當(dāng)CSRNet 增加多尺度特征融合結(jié)構(gòu)和注意力模塊時(shí)性能提升明顯,使PartA的MAE 下 降7.0%,MSE 下 降11.4%,使PartB 的MAE 下 降32.1%,MSE 下降28.1%。由此可見(jiàn),多尺度特征融合結(jié)構(gòu)與注意力模塊結(jié)合可以使模型達(dá)到最低計(jì)數(shù)誤差。
表3 在ShanghaiTech數(shù)據(jù)集上的網(wǎng)絡(luò)結(jié)構(gòu)消融實(shí)驗(yàn)Tab.3 Ablation experiment of network structure on ShanghaiTech dataset
在1.4 節(jié)提出了聯(lián)合損失函數(shù),針對(duì)不同數(shù)據(jù)集使用了不同的λ值來(lái)加權(quán)L1和L2。在ShanghaiTech 數(shù)據(jù)集上就λ值開(kāi)展消融實(shí)驗(yàn),結(jié)果如表4所示。
由表4 中PartA 數(shù)據(jù)顯示,在λ=0.2 時(shí),MAE 下降到最低,相對(duì)于CSRNet 下降9.4%,MSE 下降9.9%;在λ=0 時(shí),MAE 下降7.0%,而MSE 達(dá)到最低,下降11.4%;λ=0.2 的MAE 相較λ=0 下降2.5%,λ=0 的MSE 相較λ=0.2 下降1.6%。因此本文選擇λ=0.2的作為最佳結(jié)果。PartB 數(shù)據(jù)顯示,在λ=0.5時(shí),可以達(dá)到最低的MAE和MSE,相較于CSRNet分別下降34.9%、29.4%。以上結(jié)果表明,聯(lián)合使用加權(quán)后的L1和L2作為損失函數(shù)可以有效提升人群計(jì)數(shù)的準(zhǔn)確率。而且實(shí)驗(yàn)結(jié)果表明,針對(duì)不同的數(shù)據(jù)集應(yīng)該設(shè)置不同的λ值,表5中顯示了實(shí)驗(yàn)中不同數(shù)據(jù)集設(shè)置為如下λ值時(shí),本文方法在各數(shù)據(jù)集上可以達(dá)到最高人群計(jì)數(shù)準(zhǔn)確率。
表4 在ShanghaiTech數(shù)據(jù)集上的λ值消融實(shí)驗(yàn)Tab.4 Ablation experiment of λ on ShanghaiTech dataset
表5 各數(shù)據(jù)集設(shè)置的λ值Tab.5 Values of λ for different datasets
本文提出了一種多尺度空間注意力特征融合網(wǎng)絡(luò)(MAFNet)模型,該模型基于CSRNet 增加了多尺度特征融合結(jié)構(gòu),并引入了通道空間注意力機(jī)制。其中,VGG-16 網(wǎng)絡(luò)結(jié)構(gòu)、擴(kuò)張卷積、多尺度結(jié)構(gòu)和注意力機(jī)制四個(gè)組成部分?jǐn)U大了尺度感知的多樣性和特征的接受范圍,增強(qiáng)了模型抑制背景和保留細(xì)節(jié)信息的能力,可以解決各種復(fù)雜場(chǎng)景下的人群計(jì)數(shù)問(wèn)題,在計(jì)算圖像中人數(shù)的方法中表現(xiàn)良好。此外,本文提出聯(lián)合使用兩種基本損失函數(shù)的方法來(lái)訓(xùn)練模型,提高了模型的泛化能力。本文方法在四個(gè)公開(kāi)數(shù)據(jù)集上相比其他方法達(dá)到了較高的人群計(jì)數(shù)準(zhǔn)確率。盡管如此,本文方法在ShanghaiTech 數(shù)據(jù)集的PartA 上仍然表現(xiàn)不佳,對(duì)比RANet 之后認(rèn)為原因在于在密集場(chǎng)景下MAFNet 對(duì)場(chǎng)景內(nèi)全局元素和局部元素相關(guān)性整合度不夠。接下來(lái)的工作將考慮使用更深的網(wǎng)絡(luò)來(lái)做進(jìn)一步的研究。