陳冬艷,彭錦佳,蔣廣琪,付先平,2,米澤田+
(1.大連海事大學 信息科學技術學院,遼寧 大連 116026; 2.鵬城實驗室 機器人中心部,廣東 深圳 518033)
由于不同車輛可能具有相同品牌、型號和顏色,因此很難通過全局外觀辨別不同車輛之間的差異,如圖1所示,每一列的兩輛車具有不同的ID,圖中用圓圈突出它們的局部差異性。為克服這一困難,早期的車輛重識別[1-3]采用人工標注的方式,但監視視頻的質量通常受拍攝角度、光照、背景等諸多因素的影響,由圖2可知,不同攝像頭下的車輛圖片差異較大,因此,在監視場景中人工提取的判別特征具有不穩定性。隨著深卷積神經網絡(convolutional neural networks,CNN)[4,5]在計算機視覺領域的發展,一些研究者采用CNN技術獲取車輛全局特征,如Liu等[6]提出一種相對距離學習的耦合簇損失對全局特征進行學習該方法從一定程度上提高了重識別的準確性,但對高度相似車輛的識別率并不高。為解決這一問題,Liu等[7]提出一種區域感知深度模型,直接將較高層全局特征進行劃分, 以獲得粗略的局部特征。Pirazh等[8]提出利用關鍵點特征作為車輛結構特征,但未考慮背景信息的影響。Wang 等[9]將車輛方向關鍵點分為4組,使得每個方向的關鍵點均具有可見性,但不是所有關鍵點均具有判別信息。為解決以上問題,本文提出基于局部感知的車輛重識別算法LVR采用三分支網絡結構,不僅可獲取較為精細的判別特征,還解決背景信息的干擾問題。實驗結果表明,該算法具有較好的重識別結果。

圖1 相似外觀的不同車輛示例
LVR算法模型結構如圖3所示,該網絡模型主要包含3個網絡分支:即圖3(a)全局特征分支(第1.1節)、圖3(b)分塊局部特征分支(第1.2節)和圖3(c)關鍵點選擇分支(第1.3節)。首先,將車輛圖像輸入全局特征提取分支,該分支將極大限度的提取車輛的宏觀特征并保留圖像上下文信息,但該網絡分支可能無法判別相似車輛之間的細微差異,其中最困難的是相同品牌、顏色、型號的車輛;為解決這一問題,本文引入另一網絡分支:基于圖像分塊的局部特征分支,該分支在去除圖像背景信息干擾后,將車輛圖像均分為上、中、下3塊,經卷積得到的車輛局部特征;其次,將去除背景信息后的車輛圖像輸入兩階段關鍵點檢測分支,該分支首先預測出20個車輛關鍵點,然后采用由粗到細的方式篩選關鍵點并去除不可見關鍵點的影響,得到更為精細的車輛關鍵點特征;最后將3個網絡分支的車輛特征相連,利用L2-Softmax損失[10]對車輛圖像進行分類。網絡結構和模型訓練的詳細信息將在以下部分描述。

圖3 基于局部感知的車輛重識別算法(LVR)網絡模型
如圖3(a)所示,為提取全局外觀特征,本文采用了ResNet-50作為Backbone網絡,并將該網絡作為LVR網絡結構的Baseline模型。該模型由5個下采樣和一個全局平均池組成。首先,利用ImageNet預訓練模型的權重作為該模型的初始化權重;然后,將ResNet-50最后一個卷積層的2048維特征向量輸入淺層感知器。為了將相同車輛ID特征聚集,不同車輛ID特征分開,本文采用L2-Softmax損失函數訓練該網絡,將網絡提取到的特征向量約束在半徑為α的區域內。該操作的具體的表達式為
(1)
其中,y表示車輛類別,x表示車輛特征向量,Wm表示權重,bm表示與類別m對應的偏差,α是可訓練的正標量參數,N表示車輛類別的數量。
為提取判別度較高的局部特征并解決背景信息對重識別的影響,本文采用空間變換網絡(spatial transformer networks,STN)[11]對齊模塊對輸入的車輛圖像進行定位對齊,然后將圖像分為均等的上、中、下3部分,分塊后的圖像輸入到ResNet-50的Block3~Block5層,得到相對全局特征更為精細的局部判別特征。
空間變換網絡對齊模塊。該模塊主要由3部分組成:本地網絡(localisation network)、網格生成器(grid gene-rator)以及采樣器(sampler)。如圖4所示,首先,使用ResNet-50提取車輛圖像的全局特征。Block4特征通過由兩個卷積層組成的網格生成器進行特征映射,輸出轉換參數θ。之后,網格生成器依據預測的變換參數θ構建采樣網格T(θ), 最后采樣器利用雙線性內插法根據T(θ) 對車輛圖像定位,輸出目標特征圖。本文對STN對齊模塊中特征圖的具體轉換過程進行分析,其轉換過程如下
(2)

L2(ω)=λ1l1+λ2l2+λ3l3
(3)
其中,l1,l2,l3分別表示上、中、下3個分支的損失,λ1,λ2,λ3表示對應的權重,ω表示深度模型網絡參數。

圖4 空間變換網絡(STN)
局部分塊特征訓練過程中,添加了全連接層來識別只有局部特征作為輸入的車輛圖像。該過程強制網絡在每個部分提取判別細節,提高網絡對局部特征的學習能力。
為獲得更精細的局部特征,本文對上節利用空間變換網絡去除背景信息后的車輛圖像采用兩階段的關鍵點檢測模型:第一階段,將去除背景信息的車輛圖像輸入到VGG-16[12]的全卷積神經網絡,進行關鍵點預測,并輸出大小為112×112×64的20個關鍵點的響應圖。盡管第一階段已預測出可見關鍵點的位置,但預測出的結果中可能存在不可見關鍵點的影響。受堆疊式沙漏網絡[13]的啟發,本文采用去除全連接層的兩層沙漏網絡提取關鍵點特征,該網絡在保證輸出關鍵點響應圖質量的同時,對第一階段粗糙關鍵點進行精細化選擇。圖5展示了兩階段的關鍵點響應圖,左側為第一階段預測的20個粗略關鍵點響應圖,右側為第二階段關鍵點精細化選擇后的響應圖,圖中可以觀察到關鍵點由粗糙到精細的變化。

圖5 車輛關鍵點響應
車輛關鍵點方向設定。為得到預測出的20個關鍵點對應的車輛方向,受OIFE[6]的啟發,本文將20個關鍵點分為4類,分別代表車輛的前、后、左、右4個方向,但相鄰兩個方向之間沒有絕對的界限。然后通過關鍵點選擇器自適應選擇關鍵點最多的方向。為保證預測方向的準確性,每個方向至少有6個可見關鍵點,并根據關鍵點預測的多個方向,選擇關鍵點最多的方向,并以此作為車輛的方向。對于每個圖,利用σ=2的高斯核確定關鍵點位置,以解決不可見關鍵點問題。為得到第一階段粗略關鍵點估計,本文采用交叉熵損失訓練網絡
(4)

(5)

(6)
其中,O={上、 下、 左、 右} 表示關鍵點方向,o*表示關鍵點的真實方向。第二階段精細關鍵點分支總損失為
L3=LMSE+βLCEE
(7)
其中,β表示平衡優化模型損失的權重,經實驗驗證當β=12時取得的效果最好。
最后,我們將3個分支特征連接,并在全連接層后利用L2-Softmax作為分類損失對車輛圖像進行分類。
在本節中,首先介紹用于車輛重識別任務的兩個大型數據集及評估標準,然后通過對比實驗和消融實驗驗證本文所述算法的有效性。
本文實驗采用兩個公開的大規模車輛重識別數據集:VeRi-776數據集和Vehicle-ID數據集,測試LVR算法的有效性。
VeRi-776數據集包含由20個監控攝像頭捕獲的776種車輛ID的50 000張圖像。所有圖像均標有車輛ID、類型和顏色。其中車輛類型有9種,例如轎車、公共汽車和卡車等;車輛顏色有10種,例如紅色、黑色和橙色等。在這些圖像中,訓練集和測試集分別包含按37 778張圖片(576種ID)和11 579張圖片(200種ID)。并從測試集中選擇1678張圖像作為查詢集。
VehicleID數據集包含26 267種車輛ID的221 763張圖像。所有圖像均標有車輛的ID信息,一部分標有車輛類型和顏色信息。選取13 164車輛的圖片作為訓練集,而另一半用于評估。從測試集中分別提取800、1600、2400種車輛ID的圖片分為3個子集。在每個子集中,隨機選擇每個車輛ID圖像,分別得到800、1600、2400種圖像組成的測試集,本文測試實驗中使用了800和1600種圖像組成的測試集。
車輛重識別中廣泛采用兩個評判指標對重識別結果進行評估——累積匹配曲線(cumulative match characteristic,CMC)和平均精確度均值(mean average precision,mAP)。CMC反映總體分類器的性能,其中CMC@1表示首位匹配準確率。mAP代表所有查詢的平均精度的平均值,它反映整體識別結果的平均精度,其中平均精度(ave-rage precision,AP)是識別結果中某一類別的加權平均值,mAP則為所有類別AP值的平均。
實驗過程中,將輸入網絡的圖像大小調整為224×224,Batch size的大小設定為64。訓練期間,首先對基礎網絡進行微調(參照1.1),然后使用Adam(β1=0.5、β2=0.999)優化器優化網絡,另外,本文針對不同數據集在訓練過程中設置的學習率變化方式也不同。在VeRi-776上全局特征分支和分塊局部分支前40個Epoch初始學習率為0.1,后40個Epoch學習率設置為0.01;在VehicleID上全局特征分支和分塊局部分支前40個Epoch初始學習率為0.1,后50個Epoch學習率設置為0.01;特別的,對于關鍵點網絡分支,在VeRi-776和VehicleID數據集上該分支網絡第一、二階段均訓練40個Epoch,學習率均為le-4。此外本文所有實驗均通過Pytorch[13]工具完成。
為測試LVR算法每個分支的有效性,首先對兩階段關鍵點選擇分支進行評估,然后在VeRi-776和Vehicle-ID數據集上設定消融實驗和對比實驗對該算法進行評估并給出相應的實驗結果。
關鍵點選擇分支評估。為評估兩階段關鍵點選擇分支的性能,首先,我們使用均方誤差在VeRi-776數據集上對檢測到的關鍵點位置進行準確性測試。表1顯示了該分支在第一階段和第二階段的MSE數值,由表1可知,第二階段關鍵點定位誤差比第一階段降低了18.3個百分點。這也進一步表明,本文采用兩階段由粗到細的關鍵點檢測方法的有效性。然后,采用與OIFE算法相同的評價標準,利用交叉熵損失對該分支的所有可見關鍵點位置與真實位置之間的平均距離進行評估。如果該距離小于閾值r0則認為該關鍵點預測正確,否則認為該關鍵點預測錯誤。比較結果見表2,當閾值r0為5時預測的準確性提高了1.93個百分點,不難發現本文提出的兩階段關鍵點選擇分支優于OIFE算法。

表1 關鍵點特征圖定位均方誤差

表2 關鍵點預測結果
STN去除背景有效性評估。為進一步說明背景信息對車輛重識別的噪聲干擾,本文刪除了局部分塊分支中的STN定位模型并將車輛圖像直接劃分為3個重疊區域(按照1.2節所述方式),該網絡命名為“背景分塊局部分支”并在VeRi-776和VehicleID數據集上對“全局特征分支+背景分塊局部分支”網絡模型和“全局特征分支+分塊局部分支”網絡模型的準確性進行對比驗證。實驗結果見表3和表4。與未去除背景信息的分塊局部分支相比,包含STN去除背景信息定位模塊的“全局特征分支+分塊局部分支”網絡模型在VehicleID 800和1600測試集上的mAP值分別提升了1.82個百分點和2.10個百分點,CMC@1分別提升了1.85個百分點和1.64個百分點;在VeRi-776數據集上“全局特征分支+分塊局部分支”網絡模型的mAP提升了3.41個百分點,CMC@1提升了2.45個百分點。實驗結果表明,本文采用STN的定位模型能有效去除背景信息提升車輛重識別的準確性。

表3 VeRi-776上STN去除背景性能實驗評估結果/%

表4 VehicleID上STN去除背景性能實驗評估結果/%
各分支性能評估。為了評估各分支的性能,本文分別在兩個數據集上設定了7個步驟的消融實驗對各分支進行評價并給出相應的實驗結果。第一是全局特征分支。命名為“全局特征分支”;第二是分塊局部分支的上、中、下3個分支,命名為“上局部分塊分支”、“中間局部分塊分支”、“下局部分塊分支”;第三是整個將分塊局部分支的上、中、下3個分支連接起來,命名為“局部分塊分支”;第四是“全局特征分支+局部分塊分支”;第五是在“全局特征分支”的基礎上加入兩階段關鍵點檢測分支,命名為“全局特征分塊+關鍵點選擇分支”;第六是在“局部分塊分支”的基礎上加入“關鍵點選擇分支”命名為“局部分塊分支+關鍵點選擇分支”;第七是在“局部分塊分支+關鍵點選擇分支”基礎上加入“全局特征分支”分支,也就是本文提出的“LVR”。
在VehicleID數據集上的實驗結果見表5。由表可知,“上局部分塊分支”、“中間局部分塊分支”、“下局部分塊分支”的mAP、CMC@1、CMC@5的結果均低于“全局特征分支”,這是由于分塊之后3個分塊局部分支不包含整張圖片上下文信息導致的;“全局特征分支+局部分塊分支”的mAP比“全局特征分支”在800和1600測試集上分別提升了3.28個百分點和3.47個百分點;“全局特征分支+關鍵點選擇分支”在800和1600測試集上的mAP、值比“全局特征分支”分別提升了3.16個百分點和3.35個百分點,這說明了局部分塊分支和關鍵點分支的有效性;在“局部分塊分支+關鍵點選擇分支”后加入“全局特征分支”構成LVR算法,在800和1600測試集上,與“全局特征分支+局部分塊分支”相比LVR算法的mAP值分別提升了2.87個百分點和4.69個百分點,CMC@1分別提升了2.42個百分點和5.29個百分點;同樣可知LVR算法比“全局特征分支+關鍵點選擇分支”識別效果也得到進一步提升,其中mAP值分別提升了2.99個百分點和4.81個百分點,CMC@5分別提升了1.42個百分點和0.94個百分點。
在VeRi-776數據集的實驗結果見表6,不難發現與在VehicleID數據集上的實驗結果類似,“上局部分塊分支”、“中間局部分塊分支”、“下局部分塊分支”的各個評價標準均低于“全局特征分支”,這是由局部特征不能包含整個車輛的判別特征導致的,與LVR相比“全局特征分支+局部分塊分支”的mAP值降低了3.22個百分點,“全局特征分支+關鍵點選擇分支”的CMC@1值降低了2.45個百分點,進一步驗證了各個分支的有效性。
LVR算法的車輛重識別效果評估。為驗證本文提出的LVR算法的有效性,我們在VehicleID和VeRi-776兩個數據集上設定了對比實驗。一方面,在VehicleID上與LOMO[14]、VGG+T[15]、VGG+CCL[15]、Mixed DC[15]、FACT[16]、VAMI[17]進行比較。實驗結果見表7,不難發現LVR的CMC@1和CMC@5值均優于其它算法。其中,LVR比傳統人工特征選擇方法LOMO的CMC@1提升了53.31個百分點,這也充分驗證基于CNN的車輛重識別方法遠遠優于早期人工特征選擇方法;LVR和這些比較方法中結果最高的VAMI相比,VAMI比LVR算法的CMC@1降低了9.95個百分點,這充分顯示出本文提出的LVR算法的有效性。另一方面,在VeRi-776與LOMO[14]、FACT[16]、OIFE[9]、FACT+Plate-SNN+STR[18]、OIFE+ST[9]及RAM[7]、Siamese-Visual[19]進行比較。實驗結果見表8,由表8可知,LVR算法比OIFE和RAM的mAP值分別提升了17.53個百分點、4.03個百分點,LVRC比RAM的CMC@1值提升了1.37個百分點,比OIFE的CMC@5值提升了7.12個百分點,這也表明LVR去除背景信息和考慮不可見關鍵點信息的有效性。

表5 在VehicleID上特征融合性能實驗評估結果/%

表6 VeRi-776上特征融合性能實驗評估結果/%

表7 VehicleID上與已有部分方法對比實驗評估結果/%

表8 VeRi-776上與已有部分方法對比實驗評估結果/%
為解決相似度較高車輛尤其是相同品牌、顏色、型號的車輛識別率低的問題,本文從全局和局部多個角度提取車輛的判別特征,提高車輛重識別對相似車輛識別效果。與已有的全局和局部特征識別算法相比,本文方法融合局部分塊和關鍵點及全局特征,可以獲取更加精細的車輛判別特征,最終提升重識別的準確性。由消融實驗和對比實驗可以得出本文方法不僅有效解決背景信息干擾,還可以獲取更加精細的局部判別特征,增強了識別性能。盡管本文方法獲得了較好的重識別效果,但仍然存在以下不足:本文方法采用的提取關鍵點選擇分支雖然可以獲取精細的判別特征,增強重識別對相似度較高車輛的識別性能,但如果采集到的車輛圖像遮擋物較多不能獲取6個以上關鍵點,本文方法則不能達到最優的效果。