任國印,呂曉琪,3*,李宇豪
(1. 內(nèi)蒙古科技大學 機械工程學院,內(nèi)蒙古 包頭 014010;2. 內(nèi)蒙古科技大學 信息工程學院,內(nèi)蒙古 包頭 014010;3. 內(nèi)蒙古工業(yè)大學,內(nèi)蒙古 呼和浩特 010051)
目前,從監(jiān)控攝像機上獲取目標嫌疑人人臉圖像是公安民警的重要技術(shù)手段之一。幾乎所有街道都安裝了高清攝像頭,并且攝像機的覆蓋范圍很廣。高清監(jiān)控攝像機每天不停地采集視頻數(shù)據(jù),每天都會產(chǎn)生大量的離線視頻。以高清攝像機為例,每秒50~60幀,24 h能夠產(chǎn)生500萬幀左右的視頻錄制圖片,這樣一臺攝像機錄一個月的視頻數(shù)據(jù)非常龐大。如果將一個區(qū)域的所有攝像機數(shù)據(jù)加起來,就會更加龐大。對于刑偵部門來說,一幀一幀地對可疑視頻進行人工過濾,顯然是低效和痛苦的。
人臉識別一直是圖像識別中的一個重要問題。首先,人臉識別的任務比圖像分類要復雜得多。在人臉識別技術(shù)中,最重要的工作是人臉圖片的特征提取[1-3]。直到2013年,人臉識別還處于手工特征提取階段,主要依靠圖像處理專家對人臉進行仔細分析,最終得到人臉的特征,也就是構(gòu)建人臉局部描述符。目前,基于深度學習的人臉識別已逐漸取代傳統(tǒng)的人工人臉特征識別方法,傳統(tǒng)借助人眼來識別人臉的方法已經(jīng)不能滿足刑偵部門的需要。
研究和發(fā)展圖像檢索技術(shù)已經(jīng)進行了近20年[4-6]。但是目前基于內(nèi)容的人臉圖像檢索系統(tǒng)還很少,主要的瓶頸是檢索精度低和存在語義鴻溝。人臉檢索是人臉識別和基于內(nèi)容的圖像檢索的結(jié)合,它通過匹配人臉特征來搜索現(xiàn)有的人臉照片數(shù)據(jù)庫[7-10]?;谏疃葘W習的圖像識別和檢索技術(shù)逐漸取代現(xiàn)有方法。為了找到一組與被偵查人面部最為相似的照片,進而縮小刑事偵查范圍,協(xié)助刑事偵查人員確定犯罪嫌疑人的身份。目前基于深度學習的跨多攝像機檢索技術(shù)的研究還很少,所以基于深度學習的跨多攝像機的人臉檢索技術(shù)也越來越迫切[11-14]。
M. Zhang、Y. Zhao和M. Sardogan等人提出了基于CNN的圖像分類方法,它和傳統(tǒng)圖像分類方法相比明顯提高了分類精度[15-17]。特別地,W.Ge等人使用孿生網(wǎng)絡輸入同一人臉圖像對(正樣本對)或不同人臉對(負樣本對),每對訓練圖像都有一個標簽。以上兩個樣本對完成訓練,通過最小化相似度損失函數(shù),使同一類人臉之間的距離最小,不同類人臉之間的距離最大。盡管這些數(shù)據(jù)集預處理方法比以往常用的PaSC、LFW、PubFig、FERET、AR和YaleB等基準數(shù)據(jù)集有了顯著的改進,但更多的研究者試圖通過改進損失函數(shù)和孿生網(wǎng)絡的網(wǎng)絡結(jié)構(gòu)來探索改進的可能性。例如Triplet loss是一種廣泛使用的學習損失度量函數(shù),它通過添加多個網(wǎng)絡分支來提高孿生網(wǎng)絡的性能[18-19]。三分支孿生網(wǎng)絡Triplet訓練使用Triplet loss,這需要3個圖像作為輸入。與對比度損失不同的是,Triplet loss輸入三元組由一對正采樣對和一對負采樣對組成。這3幅圖像分別被命名為錨樣本(anchor)、正樣本(positive)和負樣本(negative)。人臉a和人臉p是一對正樣本對,人臉a和人臉n是一對負樣本對。三元組可以縮短正樣本對之間的距離,擴大負樣本對之間的距離。最后,在特征空間中對相同的人臉圖像進行聚類。通過類比,Triplet loss只考慮正負樣本對之間的相對距離,而不考慮正樣本對之間的絕對距離。W. Chen等人使用四分支孿生網(wǎng)絡Quadruplet Network和一個新的損失函數(shù)來訓練局部圖像描述符學習模型,該模型可應用于孿生網(wǎng)絡Siamese和三分支孿生網(wǎng)絡Triplet[20]。四分支孿生網(wǎng)絡Quadruplet損失函數(shù)產(chǎn)生一個特征向量,該特征向量使屬于同一類的正圖像之間的距離方差最小化,使屬于同一類的樣本圖像之間的平均距離最小化,并使不同類的圖像之間的平均距離最大化。四分支孿生網(wǎng)絡損失函數(shù)增加負樣本的絕對距離,以確保四分支孿生網(wǎng)絡不僅在特征空間中擴大正樣本和負樣本,而且使正樣本或負樣本彼此靠近。
Trihard loss是Triplet loss的一個改進版本。傳統(tǒng)的Triplet loss隨機抽取訓練數(shù)據(jù)中的3幅圖像作為訓練輸入。該方法簡單,但大多數(shù)樣本是易于識別的簡單樣本對。如果大量的訓練樣本對都是簡單的樣本對,則不利于網(wǎng)絡學習更好的表征。大量的研究發(fā)現(xiàn),使用更難的樣本對網(wǎng)絡進行訓練可以提高網(wǎng)絡的泛化能力,對更難的樣本對進行訓練的方法有很多種。用一種基于訓練批Batch的在線困難樣本抽樣方法,稱為難樣本損失法,即Trihard loss[20]。
Trihard loss通常比傳統(tǒng)的Triplet loss更有效。邊界樣本挖掘損失(Boundary sample mining loss, MSML)是一種度量學習方法,它引入了難樣本采樣的思想[21]。Triplet loss只考慮正負樣本對之間的相對距離??傊琓rihard loss為Batch中的每個圖像選擇一個正負樣本,而MSML損失函數(shù)僅選擇最困難的正樣本對和最困難的負樣本對來計算損失。因此,MSML比Trihard更難采樣,可以看作是正樣本對之間距離的上界和負樣本對之間距離的下界。MSML是將正負樣本對的邊界分開,因此稱為邊界樣本挖掘損失。一般來說,MSML是一種同時考慮相對距離和絕對距離的度量學習方法,MSML引入了困難樣本抽樣的思想。
MSML是一種度量學習方法,它引入了困難樣本抽樣的思想。
Triplet loss只考慮正負樣本對之間的相對距離。為了引入正負樣本對之間的絕對距離,MSML加上了負樣本對比較,形成三元數(shù)模型。MSML損失函數(shù)可定義為公式(1):
Lq=(da,p-da,n1+α)++
(da,p-dn1,n2+β)+,
(1)
如果忽略參數(shù)的影響,可以用更通用的形式公式(2)來表示MSML損失:
Lq=(da,p-dm,n+α)+,
(2)
其中m和n是一對負樣本對,m和a是一對正負樣本對。然后介紹了三孿生損失的難樣本挖掘思想,公式(3)中引入了MSML損失函數(shù):
(3)
其中:a、p、m、n是輸入的所有圖片,a、p是該Batch中最不相似的正樣本對,m、n是該Batch中與a最相似的負樣本對??傊?,Trihard loss[22]為網(wǎng)絡選擇一個三元難樣本輸入,而MSML loss[23]僅選擇一個難四元組,即最困難的正樣本對和困難的負樣本對來計算損失。所以MSML loss比Trihard loss更難取樣。
在介紹網(wǎng)絡模型設計之前,說明模型的輸入是一項必要的工作。首先模型有4個樣本作為輸入,分別是anchor、positive、negative1、negative2,具體說明如下:
anchor:anchor是錨定樣本也就是基準圖像,一個隨機樣本是正樣本還是負樣本取決于隨機樣本的分類是否和該錨定樣本同屬一類,如果屬于一類就是正樣本,如果不同類就是負樣本。
positive:該樣本和錨定樣本同屬一類的樣本,因此稱之為正樣本。
negative: negative1和negative2樣本和錨定樣本不屬于一類樣本,由于本模型需要輸入兩個負樣本,因此稱之為negative1和negative2。
而樣本對泛指兩個樣本,正負樣本是指樣本對中一個為正樣本和一個負樣本,正樣本對是指樣本對由兩個正樣本構(gòu)成,而負樣本對是指樣本對由兩個負樣本構(gòu)成。
按照樣本對的難度可以進一步細劃分為難正樣本對、難負樣本對、難正負樣本對。這里的難度是相對Siamese、Triplet和Trihard輸入樣本的復雜度而言的。Siamese是隨機抽取兩個樣本,Triplet是隨機抽取兩個正樣本和一個負樣本,Trihard是將兩個最不像的正樣本和一個與正樣本最像的負樣本構(gòu)成一個三元組。本模型需要輸入4個樣本,這4個樣本可構(gòu)成3組樣本對,即難正樣本對、難負樣本對、難正負樣本對,具體說明如下:
難正樣本對是同屬錨定樣本類的人臉樣本中差別較大的兩張人臉圖片,雖然來自一個人但看上去卻像不同人的人臉。
難負樣本對是不屬錨定樣本類的人臉樣本中差別較大的兩張人臉圖片,雖然來自一個人但看上去卻像不同人的人臉。
難正負樣本對是錨定樣本類的人臉樣本和非錨定樣本類的人臉樣本構(gòu)成的樣本對,這兩個樣本的差別較小,雖然樣本不是一個人,但這兩張圖片看上去卻像同一個人的人臉。
本文所述方法基于MSML。為了改進MSML損失函數(shù)輸入的復雜度,從樣本輸入難度上本文模型輸入的難度比以上提到的所有損失函數(shù)的輸入都要大,因此本文模型可以更加充分拉近同類模型間距離而拉遠不同類別間的距離。
圖1 改進的MSML模型結(jié)構(gòu)圖Fig.1 Improved MSML model structure diagram
(1) 網(wǎng)絡結(jié)構(gòu):本文使用的網(wǎng)絡如圖1所示。圖像輸入仍然是anchor, positive, negative1, negative2四種樣本,其中positive和anchor是正樣本,negative1和negative2是負樣本。通過兩個卷積層提取圖像特征,形成3對難樣本。采用3層VGG16網(wǎng)絡對困難樣本進行訓練,完成樣本分類。因此,前3層(1~3層)構(gòu)成兩個正樣本和一個負樣本面對三分支孿生網(wǎng)絡T1,后3層(2~4層)構(gòu)成兩個負樣本和一個正樣本面對三分支孿生網(wǎng)絡T2,即兩個平行互相傳遞參數(shù)的三分支孿生網(wǎng)絡,如圖2所示。
圖2 將改進的MSML模型看作雙三重網(wǎng)絡(DTN)Fig.2 Improved MSML model regarded as the double triple networks (DTN)
(2) MSML改進:從圖2可以看出,四分支孿生網(wǎng)絡可以看作是兩個并行的三分支孿生網(wǎng)絡,紅色虛線部分是三分支孿生網(wǎng)絡,藍色虛線部分也是三分支孿生網(wǎng)絡。本文的創(chuàng)新之處之一是從這一角度對MSML的損失函數(shù)進行改進,同時增加輸入四元組樣本對難度,輸入最不相似的正樣本對和最相似的正負樣本對,同時負樣本對之間挑選同一類別中距離最大的負樣本對作為樣本輸入。
MSML在第一層和第二層輸入難正樣本對(兩個最不相似的正樣本對),在第3層和第4層輸入難負樣本對(同一個人的兩個最不相似的負樣本對)。正負樣本對使用了不同人群最相似的兩張臉。該方法考慮了正樣本距離的上界和負樣本距離的下界,同時考慮了相對距離和絕對距離。
在雙三重網(wǎng)絡(DTN)中,每個三重實現(xiàn)不同的目標,而T1和T2通過Trihard loss計算正采樣距離和負采樣距離。這樣可以防止同一張人臉被誤認為其他人的臉。T1和T2的功能是計算具有最難Trihard loss距離,即最不相似的正樣本之間的距離,并擴大具有最近Trihard loss距離,即最可能的負樣本之間的距離。這將使負樣本與正樣本完全分離。這相當于同時使用Triphard兩次。這樣做使得正負樣本的模糊邊緣變得逐漸清晰,如圖3所示。
圖3 從邊緣模糊樣本向難樣本和簡單樣本轉(zhuǎn)換Fig.3 Conversion from margin blurred sample to hard sample and simple sample
雙三分支孿生網(wǎng)絡(DTN)實現(xiàn)了不同的目標,即紅圈區(qū)域變大,綠色區(qū)域也變大,黃色區(qū)域逐漸縮小直到黃圈區(qū)域消失,如圖3所示。
子空間聚類的計算過程定義為公式(4)和公式(5):
(4)
(5)
Y. Sun等人[23]認為只選擇兩對樣本來形成四元組Batch是不合適的,并提出用OHNM通過聚類來優(yōu)化Batch。因為這個正負Batch也是從整個樣本中選擇的,所以當有太多的人臉樣本時,很難匹配兩個相似的人臉。這也大幅降低了獲取難樣本的成功率。一個簡單的做法是把同一個人的人臉聚在一起。最后,在每個聚類空間中發(fā)現(xiàn)難以區(qū)分或非常相似的樣本。雖然特征提取和聚類比較耗時,但在聚類空間中的搜索速度得到了很大的提高,因此提升了整體系統(tǒng)的實時性。
聚類子空間的個數(shù)決定了困難樣本提取的成功率。如果子空間的數(shù)目太少,那么子空間的劃分將與批處理方法非常相似,大量不相似的人臉被聚類成一類;如果子空間數(shù)目太多,會將同一個人的人臉圖片劃分到多個子空間中,這樣挖掘的難度就會加大。
采用子空間聚類方法對所有人臉樣本進行聚類,將相似的人臉分為一組。在這些聚類空間中形成一個四元數(shù)輸入比較容易,挖掘效率較高,如圖4所示。
圖4 聚類子空間中負樣本和正樣本的選擇Fig.4 Selection of negative and positive samples from cluster subspace
圖5 通過焦損平衡難陰性正樣品和難負樣品Fig.5 Balance of hard negative samples and hard positive samples by focal loss
聚焦損失(Focal loss)用來解決正樣本和負樣本比例之間的嚴重不平衡問題。Focal loss降低了訓練中大量簡單負樣本的權(quán)重,這也可以理解為挖掘難樣本,如圖5所示。
Focal loss[24]是交叉熵損失函數(shù)的改進,從二分類交叉損失來看,其表達如公式(6)所示:
(6)
y′是激活函數(shù)的輸出,所以它介于0和1之間。對于正樣本,輸出概率越大,損失越小;對于負樣本,輸出概率越小,損失越小。當y′減小時,交叉熵損失函數(shù)越小,正樣本的收斂速度越慢,不適合選擇難樣本,損失函數(shù)沒有參數(shù)控制正負樣本的比例。
(7)
Focal loss通過增加困難樣本控制參數(shù)和正負樣本平衡控制參數(shù),改進了交叉熵損失函數(shù),并用公式(7)計算了Lfl。
如果α是常數(shù),其中γ>0,則對于正樣本,如果γ接近1,則所選樣本是簡單樣本,因此-α(1-y′)γ的值將很小,然后損失函數(shù)的值將較小。如果γ接近0,則采樣困難,損失較大,收斂速度較快。對于負樣本來說,它將選擇最難的樣本,即如果y′接近0。
如果γ為常數(shù),其中α>0,對于正負樣本,平衡控制參數(shù)α是用來平衡正負樣本比例,讓正負樣本本身更加均勻,正樣本比例α越大,負樣本越少。相反,α越小,正樣本比越小,負樣本越多。
在現(xiàn)實中,人臉目標可能會出現(xiàn)在幾個監(jiān)視區(qū)域。如果要從這些區(qū)域的監(jiān)控視頻中檢索出所有的相似人臉幀,就需要建立一個具有數(shù)據(jù)交換功能的監(jiān)控網(wǎng)絡。
因此,有必要實現(xiàn)多攝像機信息互聯(lián)和數(shù)據(jù)共享。多攝像機協(xié)作不僅可以擴大監(jiān)控范圍,而且可以從不同角度捕捉人臉信息。如果在攝像機與服務器之間連接多個數(shù)據(jù)通道來同步人臉特征信息,智能視頻監(jiān)控(IVS)就有可能完成特征交換。在攝像機之間進行人臉特征交換,利用DTN神經(jīng)網(wǎng)絡對攝像機之間的人臉特征相似度進行匹配,就可以完成局域網(wǎng)中的多攝像機人臉識別和相似人臉檢索。
為了更清楚地描述上述多攝像頭特征同步方法的原理,這里設置了一個2.5D虛擬智慧城市場景,如圖6所示。虛擬場景中有10個主要建筑物,假設4個建筑物監(jiān)控范圍內(nèi)有行人經(jīng)過,所以一個特征中心和4個建筑物組成一個特征交換監(jiān)控網(wǎng)絡。在理想的情況下,我們假設特征中心沒有安裝攝像頭,其他4棟普通建筑都有監(jiān)控攝像頭。從圖6可以看出,每臺監(jiān)控攝像機都給出了自己的編號和定位標志,分別是A、B、C、D??梢钥吹?,在每棟樓的攝像機視野范圍內(nèi),只有一名行人經(jīng)過,被拍攝的4名行人也給出了自己的編號和定位標志。其中,A攝像機拍攝行人1,B攝像機拍攝行人2,C攝像機拍攝行人3,D攝像機拍攝行人4。當攝像頭A捕捉到行人1的面部特征時,首先通過PUSH將其同步到特征中心。同樣,在第一時間,B、C和D攝像機分別將行人2、3和4的面部特征通過PUSH推送到特征中心。特征中心從不同的攝像頭接收到這些面部特征后,首先要做的是打包這些面部特征,并在第一時間將它們發(fā)送到每個攝像頭,以完成SHARE共享同步。在從特征中心接收到SHARE完成的命令后,每個相機將開始PULL同步,即將其他攝像機的人臉特征拉到本地,并將其存儲在自己的本地特征庫中。完成PUSH、SHARE和PULL的同步操作后,每個攝像頭的特征庫將保持一致。局部特征庫中的特征用于匹配捕獲的人臉特征。因此,當行人1通過B、C和D攝像機的視野時,每個區(qū)域的監(jiān)控攝像機都可以識別和檢索行人1。類似地,每個攝像機也可以識別和檢索行人2、3和4。
圖6 智慧城市數(shù)據(jù)通道特征共享立體圖Fig.6 Stereogram of data channel feature sharing in smart city
4.2.1 訓練DTN
(1)人臉訓練數(shù)據(jù)集LFW
戶外標記人臉(Wild LFW)是人臉識別中常用的一種測試集,它提供了生活中自然場景下的人臉圖像,因此識別起來會比較困難,特別是由于多姿態(tài)、光線、表情、年齡、遮擋等因素的影響,甚至同一個人的照片也有很大的不同。而且有些照片可能有多張人臉,對于這些多人臉圖像只能選擇圖片中心坐標的人臉作為目標,其他區(qū)域作為背景干擾。目前,LFW數(shù)據(jù)庫的性能評價已成為人臉識別算法的一個重要指標。
(2)圖片預處理
采用子空間聚類方法對LFW數(shù)據(jù)集的所有樣本進行聚類,將相似的人臉都聚類到一個子空間中。在局部聚類空間中選擇訓練的Batch樣本對將更容易、更有效。
在每個相似的人臉子空間中包含了簡單樣本和難樣本。所有包含簡單樣本的子空間都應該被剔除。本文采用Focal loss難樣本篩選的方法,剔除簡單樣本,留下難樣本子空間,從中選取本文網(wǎng)絡輸入的四元組輸入。這個四元數(shù)輸入包含3個難樣本對,一個是難正樣本,另一個是難負樣本,還有一個難正負樣本對。系數(shù)參見公式(4)所示。
樣本方程可以在同一子空間中選取正樣本對anchor和positive,負樣本對negative1和negative2,F(xiàn)ocal loss可以平衡正樣本和負樣本,解決了正樣本和負樣本的不平衡問題。
4.2.2 使用改進的MSML訓練DTN
子空間聚類和Focal loss可以解決以下問題。子空間聚類方法能更有效地將相似人臉的樣本聚類到一個子空間中。對于一個子空間中的所有Batch,預測錯誤的Batch交叉熵損失不會減少。對于得分好的樣本,交叉熵損失將大為減小,而Focal loss使得分好的難樣本的損失增大。同時,該模型將更加注重優(yōu)化樣本數(shù)較少的損失,訓練權(quán)重將更加準確。測試分類結(jié)果DTN加載訓練好的權(quán)值,通過樣本預處理將每個視頻的視頻幀輸入DTN,對所有人臉進行分類。
4.2.3 聯(lián)合人臉圖像檢索
每個視頻監(jiān)控區(qū)域?qū)⒁獧z索的圖像轉(zhuǎn)換為圖像的深層特征,用于圖像特征匹配,將特征交換和存儲層的人臉特征共享給其他視頻監(jiān)控區(qū)域后,完成聯(lián)合人臉檢索。
LFW數(shù)據(jù)集主要測試人臉識別的準確性。數(shù)據(jù)庫隨機抽取6 000對人臉組成人臉識別對,其中3 000對屬于同一個人,3 000對屬于不同的人。LFW給出一對照片,詢問測試中的2張照片是否是同一個人,然后DTN神經(jīng)網(wǎng)絡給出是或否的答案。將6 000對人臉測試結(jié)果的系統(tǒng)答案與真實答案進行比較,可以得到人臉識別的準確率。
DTN在人臉識別方面有很大的優(yōu)勢。在LFW人臉數(shù)據(jù)庫中,人臉識別的準確率為99.51%。雖然在精確度上沒有超越功能強大的Facenet網(wǎng)絡,但DTN也有很好的表現(xiàn)。DTN除了網(wǎng)絡結(jié)構(gòu)的設計外,最重要的是損失函數(shù)的選擇。
本文采用20種損失函數(shù)對Siamese、Triplet和Quadruplet、DTN網(wǎng)絡進行訓練,比較了哪種網(wǎng)絡模型的損失函數(shù)性能最好。本文的方法1~12從文獻[25]訓練精度數(shù)據(jù)中參考,在此基礎(chǔ)上加入各種DTN損失函數(shù),然后從多個角度分析訓練的最優(yōu)結(jié)果。從表1中的20種方法的準確度可以看出,acc(Siamese) (1)通過方法1和方法2的橫向?qū)Ρ瓤梢园l(fā)現(xiàn),隨著網(wǎng)絡分支的增加,人臉識別的準確率有了很大的提高。 (2)從方法3到7,可以看到使用難樣本作為輸入提高了Triplet訓練精度。然而,當用子空間聚類代替Batch OHNM時,其精度不如softmax。這主要是因為softmax降低了訓練難度,使得多分類問題更加收斂。Softmax鼓勵增多在實際目標類別中的特征種類。Softmax鼓勵在類別之間分離特征,但不鼓勵太多的特征分離。然而,通過難Trihard在OHNM上預先使用子空間聚類,可以大幅提高收斂速度和精度。如果從方法8~11中添加softmax,子空間可以更有效地分離。 (3)在使用OHNM和子空間聚類的訓練方法5、6、7的過程中,過大子空間會增加負樣本干擾,過小子空間會分離出相似的人臉圖像,搜索效率會下降。因此,選擇合適的子空間數(shù)目更為重要。 (4)方法15~17與方法5~7比較,方法8與方法13比較,發(fā)現(xiàn)DTN比Triphard更準確。 (5)方法9~11和方法8~20表明,在排序方面,F(xiàn)ocal loss優(yōu)于softmax。通過分析,得出DTN、Batch OHNM、子空間聚類和Focal loss相結(jié)合的分類方法是最佳的分類方法,人臉識別效果最為準確。 本文從不同角度對表1中的20種損失函數(shù)進行了比較。將20種方法中最具代表性的3組作為判斷依據(jù),每組中有6種方法。各組分別建立真陽性率(TPR)和假陽性率(FPR)的ROC曲線。每個模型都有相似閾值的調(diào)整。曲線越靠近左上方,分類器就越好。如圖7~9所示,每組ROC曲線由6條ROC曲線組成。在FPR都取0.1的情況下,每個ROC曲線中的red分類器產(chǎn)生更高的TPR。這表明ROC越高,分類器越好。 表1 LFW數(shù)據(jù)集上多種損失函數(shù)訓練精度對比Tab.1 Comparison of training accuracy of various loss functions on LFW data sets 圖7 不同子空間數(shù)DTN的ROC曲線圖Fig.7 ROC for DTN of different subspace numbers 圖7中使用了兩種方法:DTN+MSML+Batch OHNM + Subspace和DTN+MSML+ Batch OHNM+Subspace+Focal loss。為3個子空間繪制ROC曲線,子空間數(shù)分別為5,10,20。如圖所示,為訓練添加焦點損失函數(shù)可以提高分類精度。同時,子空間個數(shù)的選擇是關(guān)鍵,子空間不能太多或太少。太多的子空間會使相似的人臉分開;子空間數(shù)目太少,許多不相似的人臉被劃分到相似的人臉子空間中,降低了遍歷效率。 圖8 3種不同子空間數(shù)的ROC曲線圖Fig.8 ROC for Triple of different subspace numbers 圖8使用兩種類型的方法:Triple+Batch OHNM+ Subspace和Triple+Batch OHNM+Subspace+Softmax。為3種子空間編號中的每一種繪制ROC曲線,分別設置子空間數(shù)為5,10,20。從圖中可以看出,利用Softmax函數(shù)進行訓練可以提高Triple的分類精度。此外,子空間數(shù)目的選擇也很關(guān)鍵,子空間不能太多或太少。太多的子空間會使相似的人臉分開;子空間數(shù)目太少,許多不相似的人臉被劃分到相似的人臉子空間中,降低了遍歷效率。 圖9 不同網(wǎng)絡與FaceNet的ROC曲線比較Fig.9 ROC comparison between different networks and FaceNet 圖9將不同網(wǎng)絡與Facenet在性能上進行了比較,結(jié)果表明,雖然DTN的精度比Facenet低,但與其他模型相比,DTN的訓練效果有了明顯提高。 本文選取表1中5、6、7、9、10、11、15、16、17、18、19、20的方法在PaSC、LFW、PubFig、FERET、AR and YaleB數(shù)據(jù)集上完成訓練和測試。 在數(shù)據(jù)集PASC、LFW、PubFig、FERET、AR和YaleB中,本文利用這些方法計算了平均搜索精度ARP的性能評價。 采用平均檢索查準率對人臉檢索結(jié)果進行評價。每個數(shù)據(jù)庫中的每幅圖像都作為一個查詢圖像來檢索所有剩余的圖像,以記錄相應網(wǎng)絡的檢索性能。對數(shù)據(jù)庫中所有數(shù)據(jù)的檢索精度和檢索率進行平均,得到平均檢索精度(ARP)。 采用Triplet+Batch OHNM+Subspace、Triplet + Batch OHNM + Subspace + Softmax和DTN MSML + OHNM + Batch + Subspace + Focal loss三種訓練模式對PaSC、LFW、PubFig、FERET、AR和YaleB數(shù)據(jù)集的ARP進行測試。 表2使用上述3種訓練模式計算了上述6個數(shù)據(jù)庫中平均檢索精度最高的最佳匹配人臉。從表2中可以看出,這3類子空間的ARP在LFW上最高,在YaleB上最低。這是因為擴展的YaleB增加了很多干擾因素,如光照、姿態(tài)等,在這3種方法中,DTN-MSML+Batch-OHNM+Subspace+Focal方法的性能最好。同樣地,選擇子空間數(shù)為10可以提高訓練精度。 表2 最頂層匹配的平均檢索精度(ARP)Tab.2 Average retrieval precision (ARP) for topmost match (%) 通過以上對比實驗,發(fā)現(xiàn)模型損失函數(shù)的最佳組合為:DTN(MSML)+Batch OHNM+subspace-10+Focal loss。在本節(jié)中,我們將建立該模型的消融實驗[26]。消融實驗的目的是從一個單獨角度探討每個變量的作用。這里以DTN(MSML)為基本模型,控制變量主要包括Batch OHNM、Subspace和Focal loss。我們一次只減少一個變量來觀察檢索精度、實時性、魯棒性的變化。 5.4.1 控制變量Batch OHNM 從DTN+Batch OHNM+Subspace-10+Focal loss的組合中去除Batch OHNM,選擇隨機樣本配對。從表3可以看出,正樣本對和負樣本對沒有難樣本配對機制,使得DTN模型失去了拉開正樣本和負樣本之間相對距離的意義,導致檢索率大幅降低。通過Batch OHNM機制,可以在DTN模型中加入兩個不同模式的樣本,使得模型具有異構(gòu)性,大幅提高了檢索精度。然而,由于樣本選擇的困難,預處理時間比隨機樣本時間長,因此嚴重影響了實時性。 表3 在PaSC、LFW、PubFig、FERET、AR和YaleB上使用DTN+ Subspace-10 + Focal Loss的10個檢索圖像的ARP。Batch OHNM對檢索精度和樣品預處理時間的影響 5.4.2 控制變量Subspace 從DTN+Batch OHNM+Subspace-10+Focal loss組合中去除子空間(Subspace),不生成聚類子空間。從表4可以看出,沒有子空間聚類的DTN模型檢索精度大幅降低,焦點丟失無法找到模糊樣本集,進而無法平衡困難樣本對的比例。同時,由于沒有子空間聚類,使得困難樣本的配對效率低下,導致預處理速度慢。加入子空間聚類機制后,可以快速發(fā)現(xiàn)相似樣本,包括相似正樣本和相似負樣本。但是從表4來看,太少的聚類子空間劃分會減慢搜索速度,如子空間為5,而太多的聚類子空間劃分會丟失出許多相似的樣本對,如子空間為20,子空間為40,這也破壞了樣本的內(nèi)部關(guān)系。因此,選擇合適的聚類子空間數(shù)目是非常重要的。從實驗中可以看出,子空間為10是最好的子空間劃分,而且每個數(shù)據(jù)集的檢索精度最高,而隨著子空間數(shù)目的增加從更小的范圍內(nèi)搜尋目標樣本的時間明顯降低,因此實時性會有所提高。 表4 10個使用DTN+批次OHNM+在PaSC、LFW、PUBPIG、FERET、AR和YaleB上使用DTN+批次OHNM+焦耗檢索的圖像的ARP。聚類子空間的數(shù)目對檢索精度和實時性的影響 5.4.3 控制變量Focal loss 從DTN+Batch OHNM+Subspace-10+Focal loss組合中消除Focal loss,這樣做的后果是正、負樣本既不均衡,也不利于難樣本篩選。從表5可以看出,DTN模型輸入端缺乏難樣本篩選,在很大程度上是從簡單樣本聚類子空間中選擇樣本對,不能充分發(fā)揮模型的相對優(yōu)勢。同時,正樣本與負樣本之間不平衡,導致正負樣本混淆,進而導致模型訓練中的過擬合問題,大幅降低了檢索精度。Focal loss的增加使得難樣本進行過濾成為可能,也可以分離模糊樣本帶來的過擬合問題。通過調(diào)整Focal loss函數(shù)參數(shù),發(fā)現(xiàn)當α=0.5時,即正負樣本均衡,訓練精度隨樣本難度的增加而提高。然而,當樣本數(shù)相等時,訓練精度提高,即樣本難度最大時,訓練精度提高γ=0.9。樣本不平衡引起的過擬合問題使得檢索精度降低(例如,當α=0.1和α=0.9時),從實時性角度未做樣本均衡的輸入會增加正負樣本的搜索時間,影響實時性表現(xiàn),而樣本均衡設置的不好的情況(例如,當α=0.1和α=0.9時)也會使幀頻降低,實時性表現(xiàn)不好,只有正負樣本均衡的情況實時性才表現(xiàn)最佳。 以上消融實驗結(jié)果表明,各變量的作用是不可或缺的。同時,每個變量都有參數(shù)調(diào)整狀態(tài),以達到最優(yōu)解。從表3、表4和表5中可以得到最佳參數(shù),最佳參數(shù)如下:①選擇批量OHNM預處理;②子空間為10是子空間聚類的最佳聚類數(shù);③α=0.5,γ=0.9是焦損的最佳參數(shù)。因此在最佳參數(shù)設置下,本文選擇DTN(MSML)+Batch OHNM+Subspace-10+Focal loss的最佳組合,共同配合提高了檢索精度,且實時性可達28 PFS左右。 表5 10個使用DTN+批次OHNM+在PaSC、LFW、PUBPIG、FERET、AR和YaleB上使用DTN+批次OHNM+焦耗檢索的圖像的ARP。Focal loss對檢索精度和實時性的影響 為了驗證系統(tǒng)的魯棒性,應用Silktest測試工具建立測試,將系統(tǒng)監(jiān)控數(shù)目和魯棒性之間建立內(nèi)部關(guān)聯(lián)項,在最優(yōu)化組合、消除變量Batch OHNM、消除變量Subspace、消除變量Focal loss屬性上評估系統(tǒng)魯棒性。從圖10測試結(jié)果中可以看出,隨著監(jiān)控壓力逐漸加大,最優(yōu)解組合的魯棒性表現(xiàn)最優(yōu),而其他每個變量都將對魯棒性造成嚴重影響,其中Focal loss是對系統(tǒng)魯棒性影響最大的變量。 圖10 系統(tǒng)魯棒性分析圖Fig.10 Robust analysis of the system 本文提出了一種新型網(wǎng)絡結(jié)構(gòu)DTN。通過對Siamese,Triplet和Quadruplet的比較,我們發(fā)現(xiàn)網(wǎng)絡結(jié)構(gòu)與網(wǎng)絡分支的通道數(shù)有關(guān)。在分支數(shù)相同的情況下,最重要的是如何設計有效損失函數(shù)。本文對DTN網(wǎng)絡進行了改進。網(wǎng)絡結(jié)構(gòu)是一種雙三分支孿生結(jié)構(gòu),以兩個樣本對為輸入,可以拓寬正負樣本之間的距離,使正負樣本完全分離。本文設計的損失函數(shù)是幾種損失函數(shù)的結(jié)合。為了提高搜索速度,選擇了子空間聚類方法。在DTN網(wǎng)絡的樣本預處理階段,為了解決增加訓練難度和均衡樣本的問題,在訓練階段采用了Focal loss函數(shù)?;贛SML,比較了20種方法的網(wǎng)絡損失。實驗結(jié)果表明,DTN + OHNM + Batch+Subspace+Focal loss具有較高的ARP、ARR和F-score值。因此,該方法的平均檢索精度(ARP)為98.74%,模型訓練精度為99.54%,幀率為28 FPS,能夠滿足人臉檢索的實際應用,并且系統(tǒng)考慮了遠程視頻檢索在刑偵部門遠程通緝嫌疑人目標人臉應用中的實際困難。設計了一個多攝像機人臉聯(lián)合檢索系統(tǒng),解決了多攝像機特征共享和特征聯(lián)合的問題,實現(xiàn)了多局域網(wǎng)多攝像機人臉聯(lián)合檢索。5.2 損失函數(shù)受試對象工作特征曲線(ROC)綜合比較
5.3 聯(lián)合人臉檢索的有效性分析
5.4 消融實驗
5.5 系統(tǒng)魯棒性測試
6 結(jié) 論