陳凱鑌,王從明,陶沙沙,李香紅
(1.成都工業職業技術學院,四川 成都 610218;2.河南理工大學能源科學與工程學院,河南 焦作 454003)
近年來,用于交通控制和安全的視頻監控對當前的公共交通系統產生了越來越大的影響,因此,相關研究在計算機視覺領域引起了越來越多的關注,并取得了很大的進展,如車輛檢測、分類等應用[1-2]。與上述任務不同的是,車輛重識別(re-identification,reID)的目標是精確匹配從多個非重疊的攝像機捕捉到的特定車輛場景,該項技術能夠以更少的時間和人力來自動地進行標識,這對智能城市的構建起著至關重要的作用[3]。
雖然車輛重識別技術已經取得了一定的進展,但是如何設計算法來適應不同場景之間的域偏差仍然是整個系統的關鍵。主要由于車輛重識別面對真實世界場景,在不同場景下拍攝的同一輛車可能呈現出不同的視覺外觀,另外,對于一個域,它不可能包含真實場景中所有的案例,這使得不同的域有自己獨特的風格,導致了域之間的偏差。因此跨域學習方法得到了廣泛的應用。文獻[4]采用了一個有條件的GAN來學習從輸入到輸出圖像的映射,這種方法結合了敵方損失和一級損失,但是訓練數據的成對性很難獲得。文獻[5]在重識別任務中引入了一個屬性語義和身份鑒別特征表示空間,該空間可以轉移到任何新的目標域,而不需要從目標域收集新的標記訓練數據。雖然上述域遷移方法已經證明在人臉識別上取得了較好的效果,但是在訓練過程中,有些算法需要額外的源域信息,如屬性標簽和時空標簽,這些信息在某些數據集中并不存在,另外對于車輛重識別存在車輛的變形和顏色失真等情況。
除此之外,基于深度網絡的特征學習已成為車輛領域的一種普遍做法。文獻[6]提取車輛的全邊緣三維邊界框,然后利用顏色直方圖和定向梯度直方圖,用線性回歸方法求解重識別問題。文獻[7]引入車牌信息、視覺特征和時空關系,采用漸進式策略學習車輛圖像之間的相似度得分。文獻[8]提出了一種群體敏感的三元組嵌入方法來處理學習表征中的類內方差,并給出了均值三元組損失,以減輕不適當的三元組抽樣帶來的負面影響。但是上述深度學習方法需要進行大量的學習訓練,且對不同場景的適應性較差。
為了解決上述問題,提出了一種基于跨域雙分支對抗網絡車輛重識別策略,通過雙分支對抗網絡實現源域信息的挖掘與保留,引入的結構注意力機制進一步挖掘顯著特征。數據集的試驗結果證明了提出的方法能夠保證重識別精度的同時提升泛化能力,證明了方法的有效性。
最終目標是在一個不直接標記的未知目標域中搭建車輛reID 模型。車輛重識別的自適應框架模型(Domain Adaptation Framework for Vehicle reID,DAVR)包含用于生成圖像的雙分支對抗網絡和用于訓練reID 模型的注意力網絡(Attention-Based network,ATTNet),如圖1 所示。通過雙分支對抗網絡(Dual-Branch Adversarial Network,DAN),可以獲得具有目標域的圖像,并保留源域的車輛信息。然后以轉換后圖像為數據集,利用ATTNet對車輛reID模型進行訓練。

圖1 車輛重識別的自適應框架Fig.1 Adaptive Frame of Vehicle reID
DAVR中的DAN模型,既可以在源域和目標域之間進行模式傳遞,又可以保留源域圖像的車輛信息。DAN由生成器G、F和兩個域的域鑒別器DS、DT組成,如圖2所示。

圖2 DAN模型結構圖Fig.2 Structure of DAN Model
對于DAN中的每一個生成器,由三部分組成:內容編碼器Ec、模式編碼器Es以及解碼器De。通過提出的注意力機制模型,Ec可以在抑制背景的同時提取前景,從而保留源域圖像中的身份信息。為了學習目標域的模式,在轉換網絡中加入存在模式損失的Es。最后,解碼器嵌入Ec和Es的輸出,生成翻譯后的圖像。以域X為例,內容編碼器將圖像映射到域不變的內容空間(:x→Cx),樣式編碼器將圖像映射到Y的域樣式空間(:x→Sy)。生成器G根據內容和樣式向量生成圖像(De:{Cx,Sy→G(X)})。鑒別器DS的作用是在域X中區分真實圖像和轉換圖像。
2.2.1 內容編碼
將生成器的輸入圖像定義為I,如圖3所示。經過三個步長為0.5的步進卷積塊,可以得到特征圖fshare。在假設兩個域共享一個潛在空間的基礎上,在Ecg和Ecf之間共享這三個卷積塊的權重。每個卷積塊包含一個卷積層、一個歸一化層和一個ReLU層。然后將fshare傳遞給包含九個ResBlocks的后續網絡和所提出的注意力機制模型。為了保留源域中的車輛信息,刪除了原始ResNet結構中的批處理歸一化層。注意力機制模型的設計是為了在抑制背景的同時,對特征顯著區域分配較高的視覺注意分數。

圖3 生成器結構Fig.3 Structure of Generator
如圖3 所示,將注意力機制模型的輸入特征映射表示為f。將ResBlock的所有輸出整合成f,形式為f=[fr1,fr2,…,fr9],其中fri是第i個ResBlock生成的第i個特征映射。i∈[1,9]和[·]表示串聯操作。對于特征圖在空間位置(i,j)的特征向量fi,j∈RC,可以用下式計算出其對應的注意MASKai,j
其中,FC(·)—用于學習注意模塊中映射函數的全連接層;Wa—FC的權重。MASKα=[ai,j]是使用Sigmoid 層獲得的概率圖,得分表示輸入圖像中前景的概率。在注意力模型之后,生成一個前景得分較高的MASK。因此,被關注特征映射fc由注意MASK與輸入特征映射的元素乘積計算得到:
其中,(i,j)—MASKa或特征映射fc的空間位置;?—元素乘積運算符號。
2.2.2 模式編碼器
除了源域內容分支之外,還有一個學習目標域風格的分支,如圖4所示。在這一分支中,不同于和,模式網絡和不包含注意力機制模型。例如由3個與內容編碼器網絡相同的卷積塊和9個ResBlocks組成,3個卷積塊與內容編碼器網絡共享參數。為了學習目標域的模式,設計了帶有模式損失的,輸出與目標域Y分布相似的模式特征fs,模式損失的公式如下:

圖4 ATTNeT的結構Fig.4 The Structure of ATTNeT
通過計算源域和目標域圖像的模式損失來比較圖像之間的信息差異。因此不同領域的圖像可以相互學習對方的模式。
2.2.3 解碼器網絡
對于解碼網絡,它由2個反卷積層和1個卷積層組成,輸出生成的圖像G(I) 。
解碼器網絡的輸入是fc和fs的組合,它們分別表示內容特征和樣式特征,如圖4所示。采用級聯層將fc與fs相結合,并采用全局跳躍全連接結構,使訓練速度更快,模型的泛化能力更好,可以表示為:
式中:[·]—連接層;fe2—第2步卷積塊生成的特征映射。
2.2.4 損失函數
將DAN中的損失函數表示為對抗性損失、循環一致性損失、車輛信息損失和模式損失的疊加。對抗性損失和模式損失有助于域遷移網絡的學習,車輛信息損失和循環一致性損失保持了跨域類內實例的語義一致性和視覺相似性。目標函數可以描述如下:
其中模式損失Lstyle的計算公式如式(3)。DAN 將對抗性損失應用于這兩個映射函數。對于發生器F及其鑒別器DT,目標損失可以表示為:
式中:X、Y—表示源域和目標域;Pdata(x)、Pdata(y)—在源域和目標域中的樣本分布。還可以建立發生器G和鑒別器DS的目標。
另外,當學習到F和G的映射時,DAN 滿足F(G(x))≈x和G(F(y))≈y。因此,在DAN 中引入了循環一致性損失,使網絡更加穩定。循環一致性損失可定義為:
DAN 利用目標域信息約束輔助圖像轉換,文獻[9]引入目標域恒等約束,將生成器正則化為目標域樣本上的恒等矩陣,描述如下:
特征學習模塊的目的是獲取可用于識別車輛的特征。在特征學習模型的訓練過程中,為了使reID模型能夠適應目標區域,在訓練特征學習模型時,最好集中在車輛圖像中有顯著特點的信息并且忽略背景信息。因此,設計了一個包含注意力機制的雙分支ATTNet。
ATTNet 是一個雙分支結構,由識別網絡和驗證網絡組成,而且兩者之間共享參數。來自生成模塊的圖像被分成正樣本對和負樣本對作為ATTNet的輸入,如圖4所示。
具有相同車輛識別信息的圖像是正樣本對,否則為負樣本對。對于一個分支,輸入圖像被送入5 個ResNet 模塊,輸出7×7×2048 大小的特征映射fr,然后將它們傳遞到全局平均池化層(GAP)以獲得特征映射fg。通過所提出的注意力機制結構,利用fg生成MASK M。給定特征映射fg,其注意力映射的計算公式如下:
其中一個Conv算子是1×1大小的卷積核。在得到注意圖M后,由fm=fg?M計算被關注的特征圖,?是元素乘積符號。然后,被關注的特征圖fm將被輸入到后續結構中。然而,由于多個訓練圖像可能是空間錯位的,因此獲得的注意MASK M的精確度可能不高,并且所關注的特征圖fm可能受到噪聲的干擾,這將導致原始圖像中的fm包含的信息都是無用的。
為了解決這一問題,引入了一種快捷連接結構,將注意力網絡的輸入直接嵌入到其輸出中,該層可以描述為fg+fm。該方法將原始特征映射和參與特征映射相結合形成特征fs,并作為后續結構的輸入。經過兩層FC后,可以得到特征fd。最后,FC利用跳躍連接結構將fg和fd進行集成,以獲得更具區分性的識別特征,可以用fa=[fd,fg]進行描述。
VeRi-776是reID的一個大型城市監控車輛數據集,包含了776輛車輛的50000多張圖像,其中包含車輛信息的標注、攝像頭位置、圖像時間戳、車輛類型和顏色信息[10]。以576輛車的37781幅圖像作為訓練集,以200輛車的11579幅圖像作為測試集。測試集中的1678個圖像作為查詢集合,如圖5所示。

圖5 數據集示例Fig.5 Sample Dataset
VehicleID 是來自真實場景的監控數據集,共包含26267輛車輛和221763 張圖像。從原始測試數據中提取出800 輛、1600輛、2400輛和3200輛四個子集,用于不同規模的車輛搜索[11]。在測試過程中,從一類車中隨機抽取一幅圖像,得到一個包含800幅圖像的圖庫集,其余圖像全部用作探針圖像。其他三個測試集以相同的方式處理。
對于車輛reID任務,利用CMC曲線和mAP來評估reID模型的性能。對于每個查詢,其平均精度(AP)是根據其精度召回曲線計算的,mAP是所有查詢平均精度的平均值。
對于轉換模塊,采用Tensorflow框架進行訓練模型[12],學習率設為0.0002。該方法的最小批大小為16,Epoch設為6。在測試過程中,使用了VeRi-776→VehicleID 轉換的生成器G 和VeRi-776→VehicleID 轉換的生成器F,轉換后的圖像用于訓練reID模型。
對于特征學習模塊,基于Matconvnet 框架訓練本文提出的車輛reID模型[13]。在訓練過程中,利用動量μ=0.0005的隨機梯度下降。前50個Epoch的學習率設為0.1,后5個Epoch的學習率設為0.01。由于數據集的規模非常大,訓練數據被隨機分成小批量,批大小為16。
為了驗證模型的有效性,基于VehicleID 和VeRi-776 數據集對DAN 進行訓練。并和CycleGAN 和SPGAN 算法進行比較。比較結果,如圖6所示。在圖6(a)中是用來自VeRi-776的身份信息和VehicleID生成的圖像,圖6(b)是使用來自VehicleID的身份信息和VeRi-776生成的圖像。對于每組,第一行是VeRi-776中的原始圖像。第二行和第三行分別是由CycleGAN 和SPGAN生成的圖像。最后一行是由DAN生成的圖像。

圖6 生成圖像的效果Fig.6 The Effect of the Generated Images
從圖6(a)可以看出,在將圖像從VehicleID 傳輸到VeRi776時,CycleGAN生成的大多數圖像都嚴重失真。雖然SPGAN的效果比CycleGAN好,但是生成的圖像也有明顯的變形。然而,使用DAN方法,不僅可以完全保留車輛顏色和車型等信息,而且可以學習目標數據集的模式。從圖6(a)中可以看到,DAN生成的圖像具有更高的分辨率并且亮度更高,這是從VeRi-776中學習到的。在圖6(b)中,將VeRi-776 傳輸到VehicleID 時比將VehicleID 傳輸到VeRi-776時,能更好地保存生成圖像的車輛信息。DAN生成的圖像中的細節也得到了很好的保留。
詳細討論了幾種方法,并與本文方法進行了比較。監督學習是由文獻[14]提出的,它同時表示目標域上的訓練和測試過程。直接遷移是指將源域圖像訓練的模型直接應用于目標域,將文獻[15]的源域圖像轉化為目標圖像?!癇”代表基準文獻[10]中的方法,ATTNet是提出的注意力特征學習網絡。為了驗證方法的有效性,進行了多個實驗,其中訓練集是由不同的圖像經轉換生成的圖像。如表1、表2所示,分析了CycleGAN、SPGAN 和DAN 方法轉換的圖像的差異。與CycleGAN 相比,DAN 在VeRi-776 數據集上的mAP 和rank-1 分別提高了3.40%和2.09%。在VehicleID數據集上,與CycleGAN相比,不同測試集的rank-1分別提高了5.05%、6%、6.66%和5.79%。雖然SPGAN 在圖像到圖像的轉換階段比CycleGAN有更好的性能,但是在實際場景中,如圖7所示。SPGAN 也會導致圖像出現變形和顏色失真等問題。另外,與SPGAN相比,DAN在VeRi-776數據集上的mAP和rank-1分別提高了1.34%和0.41%。對于不同規模的VehicleID測試集,DAN的rank-1分別提高了1.57%、1.51%、1.56%和1.72%。這些所有結果都證明了DAN的結構更加穩定,可以生成適合目標域的訓練樣本。DAN轉換的圖像示例,如圖6所示。此外,與其他方法相比,DAVR在VeRi-776數據集和VehicleID數據集上都能獲得更好的性能。

表1 基于VeRi-776上不同域適應方法對不同reID方法的性能比較Tab.1 Performance Comparison of Different Domain Adaptation Methods to Different reID Methods Based on veri-776

表2 不同域適應方法在數據集上不同reID方法的性能Tab.2 Performance of Different reID Methods on Data Sets

圖7 VeRi-776數據集的結果Fig.7 Results of the VeRi-776 Data Sets
比較有監督學習算法和直接遷移法,可以清楚地發現,在目標域上直接使用源訓練模型時,性能下降很大。在VeRi-776上訓練和測試的基準模型的mAP達到52.36%,如表1所示。而在VehicleID 數據集上訓練和在VeRi-776上測試時的mAP下降到19.06%。從表2可以看出,當車輛ID被用作目標域時,mAP也降低了。在VeRi776上對reID模型進行訓練并在VehicleID上進行測試時,基準模型在不同大小的VehicleID測試集上的mAP分別下降了32.35%、35.21%、36.32%和34.73%。性能下降的原因是不同域的數據分布存在偏差,該域上的監督學習方法也不能直接應用于該領域。
3.4.1 DAN的影響
首先利用DAN將標記圖像從源域轉換到目標域,然后用監督的方式訓練基準reID 模型。如表1所示,當在VehicleID 數據集上進行訓練并在VeRi-776上進行基準測試時,mAP從19.06%提高到24.85%。如表2所示,reID模型在VeRi-776訓練集上使用基準法進行訓練,并在VehicleID 不同測試集上進行測試,Rank1 分別從35% 提高到44.44%,30.42% 提高到38.97%,27.28%提高到35.10%,25.41%提高到32.17%。通過DAN 圖像級域自適應方法,可以學習有效的域自適應基準方法。這說明圖像轉換方法從目標域中學習了重要的模式信息,在一定程度上縮小了域間差距。
3.4.2 ATTNet的影響
為了進一步提高目標數據集的re-ID性能,提出了ATTNet?;诓煌椒ㄔ赩eRi-776數據集和VehicleID數據集上的CMC結果,如圖7、圖8所示。與使用基準reID模型訓練的reID模型相比,使用ATTNet方法的性能更好。


圖8 車輛ID上不同方法的CMC曲線Fig.8 CMC Curves of Different Methods on Vehicle ID
從表3和表4可以看出,當reID 模型在VehicleID 上進行訓練并在VeRi-776上進行測試時,與直接遷移+基準方法相比,直接遷移+ATTNEt 的mAP 增加了4.35%。在VeRi-776 數據集上訓練模型并在VehicleID 上進行測試時,不同測試集的Rank1分別提高了8.26%、9.05%、8.67%和7.99%。此外,與基準方法相比,利用ATTNet的reID模型對每種圖像轉換效果都有明顯的改進。這說明用方法訓練的reID模型比基準方法能更好地適應跨域任務。

表3 基于VeRi-776的不同reID模型的比較Tab.3 Comparison of Different Reid Models Based on VeRi-776

表4 基于數據集的不同reID模型的比較Tab.4 Comparison of Different reID Models Based on Data Sets
為了進一步說明本文方法的有效性,本節將結果進行可視化對比分析。利用t-SNE將通過不同方法提取的特征可視化,如圖9所示。reID模型在VehicleID數據集上進行訓練,并在VeRi-776數據集上使用原始圖像通過基準方法進行測試,如圖9(a)所示。reID 模型使用ATTNet 訓練,圖像由DAN 在VehicleID 數據集上生成,并在VeRi776 上測試,如圖9(b)所示。reID 模型在VeRi-776 上用基準法訓練原始圖像,并在VehicleID 上進行測試,如圖9(c)所示。利用DAN 在VeRi-776上生成的圖像,使用ATTNet對reID模型進行訓練,并在VehicleID上進行測試,如圖9(d)所示。t-SNE本質上來說就是要找到一個投影方法,使得降維后,數據之間的分團信息得以保存。在實驗中,在VeRi-776和VehicleID上測試的車輛數分別為200800輛,從可視化結果可以看出,提出方法的數據分布相對于基準方法更加的分散,說明提出方法能夠更加有效的保存相關數據信息,進一步證明了提出的方法在特征提取上的性能有了顯著的改進。方法DAVR 在VeRi-776和VehicleID上的車輛reID結果示例,如圖10所示。在圖10(a)和圖10(b)中,左側是查詢圖像,右側圖像是通過本文方法獲得的檢索結果。左上角的數字表示VeRi-776數據集中的車輛ID、攝像頭ID和VehicleID數據集的車輛ID。同一車輛標識表示同一輛車。攝像機ID是捕捉圖像的攝像機編號。


圖9 特征分布t-SNE圖Fig.9 t-SNE Diagram of Characteristic Distribution

圖10 識別結果Fig.10 Identification Results
從圖10可以看出,提出的域自適應方法取得了良好的性能。特別地,在圖10(a)中,檢索結果包含不同的視點和光照,說明方法在不同的條件下具有較好的魯棒性。
為了減輕域偏差,提升算法的應用泛化能力,提出了一種基于跨域雙分支對抗網絡車輛重識別策略。通過分析兩個車輛重識別數據集試驗結果可以得出結論:(1)提出的方法具有更高的車輛重識別精度,且對與環境具有更好的泛化能力與魯棒性,有效的提升了實際應用效果;(2)引入的雙分支對抗網絡能夠從目標域中學習重要的模式信息,并且保存源域中的相關信息,有效的減小了源域與目標域間差距,提升了遷移學習的效果;(3)引入的注意力機制網絡能夠更加有效的挖掘顯著特征,對提升再識別的精度有較大作用。