趙嘉靖 黎 曙
(江蘇大學 鎮江 212013)
行人重識別技術可分為基于視頻序列的行人重識別[1~5]和基于單幀圖像的行人重識別[6~10]。主流方法還是基于單幀的重識別,因為基于單幀的行人重識別技術需求數據集較小,訓練時間較短,在工程上有較高的可實現性。基于單幀的行人重識別技術框架可分為目標檢測[11]和行人的再識別兩步來實現。首先在監控攝像頭中,每一幀畫面都由我們感興趣的前景和不感興趣的背景組成,其中目標檢測作為第一步的作用就是提取一系列視頻圖像中我們感興趣的行人圖像,也就是解決視頻圖像中哪些是人的問題。而行人的再識別技術作為第二步則是針對將提取的同一行人的不同圖像進行分類和聚類,解決這些人是誰的問題。
但是在大多數現存的基于生物特征的單幀數行人重識別系統中,每個個體的基樣本都需要提前獲得的,而在查詢的過程中也通常采用N:N的方式進行查詢。使用系統用戶和待登記錄入信息的ID則需要從兩方面進行“有感操作”。一方面是在錄入新的樣本的特征時候,待登記錄入信息的ID 通常需要在特定的攝像頭或者登記處對人體整體進行一個全面的掃描和采樣,而且不能群體性的進行批量登記;另一方面,對于系統的使用方,在登記錄入ID 的信息時候也通常需要專門的人員進行確認、輔助操作以及引導待登記錄入ID 信息的人員進行正確的登記程序;這無疑既浪費了待錄入信息方的時間也浪費了使用系統方的人力和財力。
本文基于Jetson TX2,在Jetson TX2 上移植了目標檢測算法MobilenetV2-YOLOV3[12~13]和改進的BOT[14]行人重識別算法。之后利用了KM算法[15]對相鄰幀中的行人特征進行匹配和關聯,再使用基于梯度下降算法計算每個身份的特征中心[16],利用跟新后的特征中心代替查找集G 中的特征。最后上傳服務器實現無感式的行人特征提取。
“有感式”的行人重識別系統所謂“有感”其實有兩方面原因。一是群體的行人特征對齊問題?;诙攘繉W習的身份ID 的重識別方法,會把某身份ID 的映射到特征空間中成為特征空間中某一系列子空間中的點,不同身份ID 的特征通過一定的度量方式進行比對。如果有數個人同時需要進行身份ID 的比對,由于網絡的限制則會造成同一身份ID 對應多個樣本的問題,如圖1;二是基于幀的行人檢測技術會產生大量的同一身份ID 的行人圖片,大量的重復的同一身份ID 導致系統使用前必須有一段“篩選融合”的過程。

圖1 相鄰幀的行人特征匹配
KM 算法,即kuhn munkres算法,是一種用來求賦權二分圖最大或者最小權匹配的算法。
KM 算法的基本思想是,把權值轉化為可行頂標通過給每一個頂點建立可行的頂點標號來把求最大匹配問題轉化為完備匹配問題。其算法思想為首先給出一個賦權的二分圖G 的任意一個頂點的可行頂點標號(比如平凡頂點標號),然后決定相等子圖Gl,在Gl中執行不帶權的匈牙利算法,若其中找到完美匹配,他就是G 的最大權完美匹配。否則,匈牙利算法終止于S?X,T?Y且此時有Ngl=T,之后進行修改標號αl,并計算G 的新的可行頂點標號l',并用其代替原來,在Gl'中繼續迭代執行不帶權的匈牙利算法。
使用KM算法進行特征匹配的基本流程如下。
Step1:初始化目標檢測網絡ModelD,行人重識別網絡ModelR。視頻流輸入Input(img1,img2,…imgt)。初始化查詢特征表G(g1,g2…gn),待查詢表Q(q1,q2…qm)。
Step2:在t時刻,獲取視頻流圖片imgt,通過目標檢測網絡ModelD,獲取行人圖片集Pt(p1,p2,…pk) 。并將行人圖片集P 通過行人重識別網絡ModelR提取對應特征集Qt(q1,q2,…qk),其中:
Step3:計算t 時刻查詢集集合合Gt和待查詢集集合Qt距離矩陣D(d(0,0),d(0,1),…d(n,k),…) ,其中:
Step4:對距離矩陣D按行求最小值得到向量Vmin,并根據閾值θnew建立新身份集。(這里的依據為當Q 中某一個身份和G 中所有身份的距離特征顯著遠遠大于其他距離,則可認為此Q中的身份為G 中所沒有的身份)。跟新距離矩陣從距離矩陣中移除包含Q'項。
Step5:補全距離矩陣,使得距離矩陣成為一個方陣,填充值為一個極大值。(視為距離無窮),之后使用KM 算法求得匹配矩陣Mt(m(0,0),m(0,1),…m(n,n),…)。
Step6:檢查匹配矩陣Mt,去除掉不可能的明顯不匹配的值。同時跟新查詢G 中的元素使之成為Gt+1,轉到Step2讀取下一幀圖片信息。
基于梯度下降的計算特征中心公式為
其中fit為身份ID 和Cit身份一致的特征向量。α為學習率,控制特征中心的學習速度和對負樣本抗干擾的能力。在本文的項目背景下使用基于梯度下降的特征中心代替查詢集gallery。在行人重識別網絡中,使用了聯合損失函數對網絡特征進行了約束,其中在度量損失函數中使用了三元組損失加中心損失對特征空間進行了約束。使用了中心損失后行人特征趨向聚集于某個點,于是基于梯度下降的特征融合具體應用為式(5)中,將式(5)修改為
在JetsonTX2 平臺上首先使用MobilnetV2-YOLOV3 目標檢測框架獲取行人框,再將檢測框通過一種改進的BOT 行人重識別網絡將行人圖片映射到特征空間中建立檢索集Q,和查找集G 計算距離矩陣。之后根據距離矩陣進行是否有未知身份的行人出現的判斷,并將未知行人加入查找集。之后再使用KM 算法進行特征匹配。得到對應匹配索引后計算相應身份ID 的特征中心,跟新查找集。最后根據需要將特征上傳到向量搜素引擎Milvus。其基本流程圖如圖2所示。

圖2 基于KM算法和梯度下降算法的特征融合提取過程
本文算法主要分為兩部分,基于KM 算法的特征匹配和基于梯度下降的特征中心融合,為了驗證這兩部分的有效性,分別在公開數據集上進行了不同的實驗。
實驗環境:本文實驗采用第八代酷睿智能英特爾處理器i7-8700k處理器,3.7GHz、32G內存,256G固態硬盤,顯卡配置為英偉達RTX 2080s,顯存8GB;操作系統為64 位Ubuntu 18.04,使用的深度學習框架為基于Python3.7的TensorFlow2深度學習框架下完成的。實驗中使用的權重文件為在maket1501 數據集上評價指標分數為(rank1 91.8%mAP 80),在dukemtmc 數據集上評價指標為(rank1 84%mAP 68.4)。
實驗一目的:驗證使用基于KM 算法的行人特征匹配的有效性。
實驗一設計:在數據集中隨機抽取N個行人身份和其分屬不同攝像頭下的行人圖片進行N:N的匹配,具體準確度計算公式為
實驗二目的:驗證使用基于梯度下降的行人特征中心融合在行人重識別中的有效性。
實驗二設計:實驗數據集使用公開數據集market1501 和dukemtmc。具體實驗流程以market1501數據集為例:
在數據集中抽取原本作為gallery 集中所有行人矩形框,記為集合G1。原作為query 集文件夾記為集合Q1。調換兩個集合的身份,使用原本query集中樣本圖片作為新的gallery 集合,記為G2。原gallery 中的樣本圖片經過一定的條件融合后作為新的query 記為Q2。對G2 中所有身份ID,將屬于同以攝像頭編號下的樣本圖片進行融合,每次融合圖片數量PN,融合后在只包含屬于同一身份ID 但不屬于同一攝像頭編號的Q2內進行查找。同時為了研究最佳的學習率α,分別計算了不同PN 數量和學習率之間的關系。評價指標為rank1和mAP。
在表1 和表2 中,我們可以看到在匹配人數較少時使用最小鄰近法(NN)和使用KM 算法進行匹配時差距不是很大,但是隨著匹配人數的增多,使用最小鄰近法進行特征匹配的準確率大幅度下降。綜合以上得知,使用KM 算法進行特征匹配從宏觀上對這種錯誤進行一定的修正,即使發生錯誤的ID 判斷,也能從全局考量方面對此進行修正,降低精確率的下降。

表1 Market1501數據集上不同算法準確度指標(percision)結果對比

表2 Duke數據集上不同算法準確度指標(percision)結果對比
在圖3中,當融合次數PN等于0時候表示不使用基于梯度下降的特征中心融合對Q2 檢索集在G2 中進行查找,此時由于Q2 中單個身份在單個攝像頭下僅有一個樣本,所以此時Q2 中構成的特征空間較為稀疏,匹配正確率較低。但在PN=1時,即加入同身份同攝像頭的另外一張樣本,評價分數都有了顯著的提升,并且之后隨著PN數量增加,即融合次數提升,Rank1和mAP都有著穩步的提升。表3中可以得到當學習率alpha在0.3左右學習效果最好。同時學習率設置應該較小,較小的學習率還可以防止干擾項對特征的錯誤修正。

表3 alpha=0.3時融合圖片數量和評價指標關系

圖3 不同alpha和特征融合次在不同數據集上的關系
綜上可知,在對檢索集Q 進行查找時,使用基于梯度下降特征融合方式能顯著提高查找的準確度。即使只進行一次的特征融合也能極大提高查找的準確度。并且隨著融合的樣本數越多,查找的精度精確度會進一步的上升。經過數次融合后rank1的分數甚至超過了使用Q1檢索G1的分數。
行人特征提取的輸入為任意實時視頻流或者視頻文件,演示中文件為一段包含290 幀的視頻錄像,在此視頻中包括13個不同的行人。如圖4。

圖4 行人流視頻
為了效果的可視化,當算法運行時,若是開始跟新特征,則會在跟新特征后,保存當前幀下該行人的圖片并保存到對應身份的文件夾下,以顯示對同一身份的連續識別效果,如圖5。

圖5 提取到同一行人的矩形框
本文設計并開發了基于JetsonTX2平臺的無感行人特征提取算法,該系統能實現對監控區域的行人目標實時的無感自動提取特征,其中利用JetsonTX2 平臺小巧便捷和高性能的特點,結合目標檢測算法MobilenetV2-YOLOV3,和改進的BOT 行人重識別算法獲取單人的行人特征,再利用KM 算法和基于梯度下降的特征中心融合獲得每個ID 的高質量特征上傳到服務器。實驗表明,基于JetsonTX2 平臺的無感行人特征提取算法,具有較好的實時性和擴展性,基于這個系統,對經過特定攝像頭的行人或者人臉進行跨攝像頭識別和追蹤,具有較大應用意義。