種衍杰, 方 琰, 沙 濤
(南京理工大學 電子工程與光電技術學院, 南京 210094)
自2006年, 行人重識別的概念第一次在CVPR會議上被提出后[1], 相關研究越來越受到學者們的關注.行人重識別旨在大規模的視頻監控系統中進行行人目標匹配, 即確認不同攝像頭在不同時間、不同地點所記錄到的行人目標是否為同一個人, 進而達到跟蹤或是搜索的目的[2]. 由于光照、視角、姿態等方面的差異, 導致同一行人在不同畫面中可能呈現截然不同的外觀; 加之存在圖像分辨率低下、遮擋等問題, 使得行人重識別成為一個頗具挑戰的課題.
行人重識別中兩個關鍵問題: 特征表示和度量學習[3]. 一個有效的特征應當緊湊且對諸如視角、光照等變化具有魯棒性; 而度量學習則通過學習獲得一個新的距離度量空間, 使得相同行人目標之間的距離更近,而不同目標之間的距離更遠. 許多學者沿著這兩個方向做了許多貢獻. Gray等[4]提出了局部特征集(Ensemble of Localized Features, ELF), 融合了顏色、紋理多種特征, 依據分類效果對特征賦予相應的權重.Farenzena等[5]提出了局部特征對稱性驅動累積(Symmetry-Driven Accumulation of Local Features,SDALF), 從 STEL(STel Component Analysis)[6]模型提取的行人輪廓中尋找垂直對稱軸, 依據對稱軸對像素加權后提取顏色和紋理特征. Liao等[3]提出了局部最大事件 (LOcal Maximal Occurrence representation, LOMO),聯合了HSV顏色直方圖和SILTP (Scale Invariant Local Ternary Patter)[7]紋理特征描述子, 并使用最大池化的方法獲得了更加穩定的特征表達, 同時, 還提出了跨視角二次判別(cross-view Quadratic Discriminant Analysis, XQDA)的度量學習方法. Wu等[8]提出了特征融合網絡 (Feature Fusion Net, FFN), 嘗試將手工剪裁特征和卷積神經網絡提取的CNN (Convolutional Neural Network)特征進行了有效的融合.
本文聚焦于行人重識別中的特征表達, 首先研究了原始LOMO特征的提取流程, 接著, 利用STEL算法改善了原始LOMO特征對背景噪聲的抗噪性能, 利用KPCA (Kernel Principal Component Analysis)[9]算法降低維度以便于后續融合, 在特征維度更低的情況下,本文改進LOMO特征取得了較原始LOMO特征更加優異的識別準確率. 隨后, 本文探索了手工特征和CNN特征的互補性, 經由全連接層將改進LOMO特征融入卷積神經網絡之中, 反向傳播使得改進LOMO特征能夠優化網絡參數的學習, 得到了區分度更高的融合特征. 在VIPeR和CUHK01數據集上的測試結果表明,本文融合特征的區分度明顯高于單一特征和級聯特征,Rank-1較級聯特征分別提高了3.73%和2.36%.
由于行人圖像分辨率較低, 諸如人臉等其它生物特征難以被捕捉到, 所以, 行人重識別主要依據行人的表觀特征, 例如顏色、紋理等特征. Liao提出的LOMO特征, 先將行人圖像水平劃分, 然后提取HSV顏色直方圖和SILTP[7]紋理特征, 并使用最大池化的方法獲得了更加穩定的表達. 圖1展示了LOMO特征的提取流程.
1.1.1 處理光照變化
顏色是描述行人圖像的一個重要特征, 然而, 由于光照條件、相機設置以及陰影等因素, 同一個行人在不同相機下所呈現的顏色可能相距甚遠[10]. 為此, LOMO特征首先使用了多尺度Retinex算法[11]預處理行人圖片. Retinex算法能夠很好地近似人類視覺感知, 并加強了陰影區域的細節表現. 在LOMO特征使用的多尺度Retinex算法中, 小尺度Retinex用于動態范圍壓縮,大尺度Retinex用于色調再現. 圖2展示了行人圖片經Retinex處理前后的對比, 其中(a)為原始圖片, (b)為經Retinex處理后的圖片, (a)(b)中同一列為同一行人圖像. 可以看出, 處理后的行人圖片在光照和顏色上有著更好的一致性.

圖1 LOMO特征的提取流程

圖2 行人圖片經Retinex處理前后對比[3]
1.1.2 處理視角變化
考慮到行人在不同相機下往往呈現出不同的視角,LOMO特征使用了滑動窗口來描述圖像的局部細節.具體而言, LOMO特征使用了尺寸為10×10的窗口, 在經裁剪的行人圖像上以5像素步長滑動. 在每個窗口內提取顏色直方圖和兩尺度紋理特征. 為了使產生的直方圖對視角變化具有魯棒性, LOMO特征掃描同一水平位置的所有窗口,提取每種子特征的最大值組成一個新的特征表達.
為了進一步考慮多尺度信息, LOMO特征構建了三尺度圖像金字塔, 對原始圖像進行下采樣后, 重復上述特征提取流程.
最后級)聯所有特征, 得到了長度為(8×8×8HSV+34×2SILTP×(24+11+5)=26 960維的LOMO特征.
LOMO特征使用滑動窗口來描述行人圖像的局部細節, 并通過最大化水平窗口特征值的方式來處理視角變化. 該方法簡單有效, 但卻沒有很好地處理背景噪聲的影響. 在我們的實驗中, LOMO特征在不同的數據集下表現得不夠穩定也驗證了這一點. 受到SDALF算法[5]利用對稱信息處理視角變化的啟發, 本文使用行人垂直對稱信息和加權函數來消除背景噪聲的干擾.
首先, 利用 STEL[6]將行人從背景中提取出來, 然后由行人輪廓確定垂直對稱軸, 依據對稱軸對滑動窗口賦予不同的權值: 距離對稱軸較近的窗口更有可能是前景(行人), 賦予較大權重; 而對遠離對稱軸的窗口賦予較小權值. 這樣, 所提取的LOMO特征更加專注于前景而減小了背景噪聲帶來的影響. 權值函數選用高斯函數:


首先, 使用上述流程提取窗口加權LOMO特征, 將LOMO特征矩陣變換為 6 74×X維的矩陣為圖像分割的水平條數. 在降維算法上選取了KPCA算法, 該算法應用了Mercer核來擴展PCA (Principal ComponentAnalysis),由輸入空間經非線性映射得到高維空間, 然后在高維空間計算主成分量[12]. 圖4展示了應用KPCA算法對LOMO特征進行降維的性能曲線, 測試圖庫為VIPeR cam_a圖集, 共632張圖片. 當累積方差貢獻率為0.9時, 平均所需主成分數目僅為17.20, 即平均使用11 591維的數據即可表示原始26 960維LOMO特征近90%的信息量.

圖4 KPCA對LOMO特征降維的性能曲線
結合圖4, 我們將LOMO特征矩陣降維至原始維度的50%, 此時平均累積方差貢獻率為0.91.
近來, 專為行人重識別設計的、傳統的手工多特征融合[3,5,13]在性能上遇到了瓶頸. 隨著神經網絡在圖像識別領域的流行, 越來越多的研究聚焦于基于深度學習的行人重識別. 然而, 深度學習的主要瓶頸是缺乏訓練數據, 大多數的重識別數據集對每個行人只提供兩張圖片, 例如VIPeR. 所以, 僅采用深度學習的行人重識別算法在某些數據集上的效果并不顯著.
受到FFN[8]的啟發, 本文提出了一種基于特征融合網絡的圖像特征提取方式, 該網絡融合了CNN特征和改進LOMO特征, 將其映射至一統一的特征空間. 在反向傳播的過程中, 手工剪裁的改進LOMO特征能夠優化神經網絡的參數學習. 這樣, 我們得到了比單個特征或者級聯特征更有區分度的融合特征. 如圖5所示,特征融合網絡由兩部分組成, 第一部分使用普通的卷積神經網絡從輸入圖像中提取特征, 是對圖像顏色、紋理、形態等特征的綜合學習; 第二部分使用改進LOMO來提取手工特征. 借助全連接層使得第二部分能夠優化第一部分的學習過程, 兩個特征最終融合在一起形成一個更加充分的特征表達. 圖6展示了在訓練好的融合網絡中進行行人目標匹配的流程圖, 系統輸出了匹配度較高的前20個結果.

圖5 特征融合網絡架構圖
特征融合網絡首先使用5個卷積層來提取圖像的CNN特征, 每個卷積層后使用ReLU函數作為激活函數, 池化層使用最大池化以更好地保留紋理特征, 忽略背景噪聲, 最終得到了4096維的CNN特征. 卷積神經網絡具有權值共享的特性, 有著更少的連接和參數, 因而更容易被訓練[14].
鑒于目前流行的行人重識別數據集行人數在1000個左右, 圖片總數大多小于10 000張, 較小的訓練集容易使得神經網絡出現過擬合現象. 為此, 本文首先采取圖像變化和水平反轉來增強數據[14]. 具體地, 首先將圖像尺寸調整至 2 56×256, 而后從 2 56×256圖像上隨機剪裁大小為 2 27×227的圖像塊, 將它們及其水平反轉送入神經網絡進行學習, 這樣訓練樣本總數增大了1682倍. 另外, 為了加快網絡的收斂速度, 在訓練集的圖像上進行了減均值操作.
由于LOMO特征和CNN特征差異巨大, 為了使融合得以成功, 在CNN特征和LOMO特征融合之前分別由一到兩個緩沖層(Buffer Layer)進行緩沖. CNN特征的緩沖層由一個全連接層組成, LOMO特征的緩沖層由兩個輸出維度分別為8192和4096的全連接層組成.為了使融合更加充分, LOMO特征事先進行了降維操作, 然后再通過兩級維度遞減的全連接層進行緩沖.

圖6 融合特征網絡行人匹配流程圖
緩沖層之后的融合層(fusion layer)輸出了維度為4096維的融合特征, 該層利用了全連接層來增強對LOMO特征和CNN特征的自適應能力. 另外, 緩沖層和融合層使用了概率為0.5的失活函數, 降低了特定神經元之間的互相依賴, 從而迫使其學習更加魯棒的特征[14].
假定緩沖層的輸出分別為BLOMO和BCNN, 則最終融合層輸出的融合特征可以表示為:

每個樣本在所有輸出節點的損失函數之和為:

損失函數的導數為:

利用鏈式求導法則逐層更新整個網絡參數.
分別在VIPeR[15]和CUHK01[16]數據集上進行測試, 在每個數據集測試中隨機選取一半樣本作為訓練數據集, 另一半作為測試數據集, 重復 10 次, 計算平均Rank-i并繪制CMS (Cumulative Matching Characteristic)曲線. 在分類器上選擇了最原始的非監督分類算法L1-norm, L1-norm距離又稱曼哈頓距離, 能夠表示特征最原始的區分度. 如圖6所示, 從融合層獲得融合特征后,與已有特征計算L1-norm距離, 獲得了匹配度較高的前20個結果.
在特征融合網絡的訓練中, 使用分批隨機梯度下降法以20張圖片為單位, 前向傳導至最后的Softmax損失層, 計算樣本損失的平均值, 并以此作為反向傳播的損失值. 初始學習率 γinitial=0.001, 更新策略:

其中,gamma取0.0001,power取0.75,iter為迭代次數.
在每次實驗中, 分別對比原始LOMO特征、本文改進LOMO特征、本文提取的CNN特征、改進LOMO特征和CNN特征的級聯特征以及融合特征,gBiCov[17]以及ELF16[8]作為額外對比項.
3.2.1 在VIPeR上實驗
VIPeR數據集是行人重識別領域最著名的數據集,包含632個行人共1264張圖像. VIPeR數據集的特點是光照和視角的多樣性. 圖7以及表1展示了VIPeR數據集上的測試結果.
3.2.2 在CUHK01上實驗
CUHK01數據集是由香港中文大學于2012年發布的行人重識別基準測試數據集, 包含了2個攝像頭、每個攝像頭971個ID、每個ID2張圖片, 共1264張圖片. CUHK01采集自行人天橋, 圖片整體亮度較低.圖8以及表2展示了CUHK01數據集上的測試結果.

表1 各種特征在VIPeR數據集、L1-norm下的性能比較

表2 各種特征在CUHK01數據集、L1-norm下的性能比較
3.2.3 運行時間
表3評估了本文所對比的行人重識別特征的提取時間, 測試圖集為VIPeR cam_a, 取其提取632張圖像特征的平均時間. 測試機器CPU為Intel i5-5200U, 內存 8 GB, 顯卡為 NVIDIA GTX950M.

表3 各種特征的提取時間、輸出維度比較
可以看到, 融合網絡的特征提取時間甚至快于某些手動特征. 雖然融合網絡的訓練需要花費大量時間,但在訓練完的網絡中運行一次前向傳播只需0.49 s, 而且, 其中大部分時間(0.31 s)花費在改進LOMO特征的提取上. 相較于其它特征, 融合特征的維度更小, 在后續的度量學習中也有著更大的優勢.
圖7和圖8展示了在L1-norm下, 本文融合特征與對比特征分別在VIPeR和CUHK01數據集上的表現. L1-norm衡量了各種特征最直觀的區分度, 結果表明, 融合特征的區分度大于其它特征.

圖7 VIPeR數據集、L1-norm下各種特征的CMS曲線

圖8 CUHK01數據集、L1-norm下各種的特征CMS曲線
本文改進LOMO特征和CNN特征的級聯特征準確率大于改進LOMO特征、CNN特征兩個單獨特征,說明了手工特征和CNN特征在一定程度上是可以互補的. 然而簡單的級聯并不是最優的融合方式, 在VIPeR和CUHK01數據集上, 融合特征Rank-1為19.76%和19.47%, 較級聯特征的16.03%和17.11%,分別提高3.73%和2.36%. 融合特征的準確率大于級聯特征的主要原因在于:
(1)經由緩沖層和融合層使得改進LOMO特征參與了神經網絡的訓練過程, 在反向傳播時, 提取CNN特征的卷積核(Filters)學習到了改進LOMO特征的特性.
(2)緩沖層和融合層由全連接層組成, 能夠更好的融合兩者的互補特性.
另外, 本文改進LOMO特征由于更加專注于行人,減小了背景噪聲的影響, 在特征維度更小的情況下, 表現出比原始LOMO特征更加優異的性能, 在VIPeR和CUHK01數據集上分別較原始LOMO特征提高了1.9%和1.83%.
本文首先利用STEL算法增強了LOMO特征對背景噪聲的抗噪性能, 為了便于后續融合, 利用KPCA進行了降維, 在特征維度更低的情況下取得了較原始LOMO特征更加優異的性能. 隨后, 本文探索了手工特征和CNN特征的互補性, 將改進LOMO特征融入到了卷積神經網絡之中, 得到了區分度更高的融合特征.在兩個頗具挑戰的數據集上, 本文融合特征表現出比單獨或者級聯特征更加優異的性能, Rank-1較級聯特征分別提高了3.73%和2.36%.