馬路寬
(四川大學計算機學院,成都610065)
行人屬性識別(Pedestrian Attribute Recognition,PAR),其目的是在給定的行人物圖像中挖掘目標人物的屬性。與LBP[1]、HOG[2]等低級別像素特征不同,行人屬性是更高級的語義特征,是符合人們?nèi)粘C枋鲆粋€人外貌特征認知思維的詞語。相較于計算機視覺中的其他任務(wù),行人屬性識別中數(shù)據(jù)集包含許多不同層次的標簽。例如,頭發(fā)的長短、上下衣服的顏色、衣服的款式、是否戴帽子、是否戴眼鏡等被看作是特定的細顆粒度屬性,這些屬性的關(guān)鍵位置都在圖像的不同的局部區(qū)域,而有些屬性是全局的概念,如行人的性別、年齡等,并不對應于特定的局部區(qū)域,需要綜合的特征分析,這些屬性被認為高級屬性。
隨著行人屬性識別在計算機視覺領(lǐng)域越來越多的被學者研究,越來越多的數(shù)據(jù)集被公開出來,表1 列舉了目前認可度較高的數(shù)據(jù)集,其中常用的數(shù)據(jù)集有PETA[3]、Market-1501[4]和Duke-MTMC[4]。
行人屬性識別常用的評價標準主要采用平均準確度(mean Accuracy,mA)[3]評價屬性識別算法。對于行人每一個表情屬性,mA 分別計算正樣本和負樣本的分類準確率,然后取其均值作為該屬性的識別結(jié)果。最后,計算所有屬性的平均值得到識別率。公式如下:
其中L為屬性的數(shù)量。TPi和TNi分別為預測正確的正例數(shù)和負例數(shù),Ti和Ni分別為正例數(shù)和負例數(shù)。
表1 行人屬性識別數(shù)據(jù)集
傳統(tǒng)的行人屬性識別方法通常采用手工提取特征,依賴于強大的分類器最終的目的是得到某一圖像的特征表示。常用的分類模型包括HOG[2]、SIFT[9]、條件隨機場模型[10],Layne 等人[12]首先使用支持向量模型(SVM)解決屬性識別問題。Deng 等人[3]利用SVM 和馬爾可夫隨機場進行屬性識別,構(gòu)建了行人屬性數(shù)據(jù)集PETA。然而,這些解決思路對特征的提取都是使用傳統(tǒng)手工的方法,不能有效地表示圖像,忽略了對屬性識別任務(wù)重要的屬性之間的關(guān)系。伴隨著問題規(guī)模的擴大,和場景復雜度的提高,這些算法很難勝任一些苛刻的要求,無法滿足實際應用的要求。而且傳統(tǒng)的算法并沒有很好的利用屬性之間的關(guān)聯(lián)性。
行人屬性識別可以視為一個多標簽分類問題,如果不考慮標簽之間的關(guān)聯(lián)性可以簡單的視為多個單獨的二值分類問題進行處理[13],但是行人的屬性在一定程度上存在關(guān)聯(lián)性,例如穿著紅色衣服并且長頭發(fā)其性別屬性在很大程度上傾向于女性,標定后的標簽排序算法[14],該算法考慮了成對標簽之間的相關(guān)性,將多標簽學習轉(zhuǎn)化為標簽排序問題。
隨機k-Labelsets 算法[15],它將多標簽分類問題轉(zhuǎn)化為多個分類問題的集合,每個集合中的分類任務(wù)是一個多分類器。多類分類器需要學習的類別是所有標簽的子集。
多標簽行人屬性識別的常規(guī)流程如圖1 所示。為了提高輸入圖像的質(zhì)量,矯正變形,減少噪聲干擾,增強圖像特征,提高訓練模型的魯棒性通常都需要對圖像進行預處理操作,常用的預處理方法有歸一化、隨機裁剪、灰化等。首先將預處理之后的行人圖像輸入,提取其特征表示(如HOG、SIFT),然后根據(jù)提取的特征訓練一個分類器來預測相應的屬性。
圖1 多標簽行人屬性識別的常規(guī)流程
(1)基于全局的方法
全局的方法是考慮圖片的所有信息,將整張圖片輸入給神經(jīng)網(wǎng)絡(luò)處理。
Sudow 等人[16]提出一種針對所有屬性聯(lián)合訓練CNN 識別模型的方法,針對所有能夠利用這些依賴關(guān)系的屬性,只考慮圖像作為輸入,而不考慮行人的姿態(tài)、局部信息或環(huán)境信息。并提出了一個真實的戶外視頻序列的數(shù)據(jù)集PARSE-27k,這是一個更大的、排列良好的屬性數(shù)據(jù)集,并使用它來評估檢查模型的性能相關(guān)因素。其中包含27000 個行人,每個行人標注10個屬性。有創(chuàng)意的是由于遮擋、圖像邊界原因而無法確定屬性的被標記為N/A。
Li 等人[17]提出兩個基于深度學習的模型來識別屬性。首先,將每個屬性視為互相獨立的,提出了基于深度學習的單屬性識別模型DeepSAR,單獨地對每個屬性進行識別,為了有效地利用屬性間的相關(guān)性,提出了統(tǒng)一的多屬性聯(lián)合學習框架DeepMAR 來同時識別多屬性。在DeepMAR 中,一個屬性可以用于表示其他屬性。
Abdulnabi 等人[18]提出分類器之間共享統(tǒng)計信息的方法,采樣不足的分類器可以利用來自其他分類器的共享信息來提高其性能。具體的做法是,通過一個多任務(wù)CNN 模型來學習二元語義屬性,每一個CNN 預測一個二值屬性。多任務(wù)學習允許CNN 模型在不同屬性類別之間同時共享視覺知識。每個CNN 都會生成屬性特有的特征表示,然后對特征進行多任務(wù)學習來預測它們的屬性。
基于整體的行人屬性識別算法都是將整個圖像作為輸入,進行多任務(wù)學習,嘗試學習最健壯的特性表征,并且屬性之間的信息可以共享。共享使用特性,端到端的學習,算法的優(yōu)點是較為直觀、復雜度低、效率高,但由于缺乏對局部細粒度屬性識別的考慮,這些學習模型的性能仍然有待提高。
(2)基于局部特征的方法
局部特征更符合人們判斷他人衣著、外表屬性的思維模式。
為確定圖片中行人的屬性常常需要檢測一些不顯眼的對象和特性,Diba 等人[19]提出一種新的卷積神經(jīng)網(wǎng)絡(luò)——Deep Pattern CNN 模型來解決這一問題,該模型可以挖掘中層圖像小塊區(qū)域,能夠有效地利用細微的局部信息。該模型既利用圖片的上下文信息,又通過迭代學習和局部區(qū)域聚類挖掘中層圖像的紋理來進行人的屬性識別。
Li 等人[20]提出PGDM 模型,PGDM 首先估計人的關(guān)鍵點,同時生成局部區(qū)域,然后把這些基于區(qū)域的特征表示綜合起來,用于姿態(tài)引導下的行人屬性識別。由于在現(xiàn)有的行人屬性數(shù)據(jù)集中沒有姿態(tài)標注,對現(xiàn)有的行人屬性數(shù)據(jù)集進行人體姿態(tài)的標注是一件十分耗時和困難的工作。該模型將位姿知識應用和局部區(qū)域信息關(guān)聯(lián)起來,一起應用在屬性識別中,具體的做法是將人體關(guān)鍵點作為先驗,在這些關(guān)鍵點附近找到匹配的局部區(qū)域,然后將所有的關(guān)鍵點相關(guān)區(qū)域綜合起來進行行人屬性識別。
Huang 等人[21]提出在自由環(huán)境下識別人的屬性的方法。選用一個卷積神經(jīng)網(wǎng)絡(luò)(CNN)從所有小波子檢測中選擇最能描述屬性的人體部分,以行人為中心的上下文通過在CNN 中共同學習到的全局場景分類評分來重新為以人為中心的預測打分,從而產(chǎn)生最終的場景感知預測。使用語義組織的上下文從相關(guān)的人體局部和整個圖像的上下文。為了防止全局場景上下文在一些不那么相關(guān)的物體對屬性識別的干擾,只將全局場景特征作為互補信號,并將它們映射到CNN 的場景分類分數(shù)中。
Liu 等人[22]提出一種新的定位引導網(wǎng)絡(luò),可以預先提取的建議和屬性位置之間的關(guān)聯(lián)性,為局部特征分配特定屬性的權(quán)重。該模型可以自動學習每個屬性的局部特征,并通過與全局特征的交互來強調(diào)局部特征。在兩個行人屬性基準PA-100K 和RAP 數(shù)據(jù)集上的實驗結(jié)果證明該模型的識別效果較好。
本小節(jié)算法都結(jié)合了全局和細粒度局部特征。相較于只考慮全局信息的算法,局部信息的使用顯著提高了算法的識別性能。也更符合人類的判斷方法。但基于局部信息的算法同時也存在著一些缺陷,例如,最終的識別結(jié)果很大程度上受局部定位準確度的影響,錯誤的局部特征檢測會導致錯誤的屬性分類等。另外由于考慮到人體部位的信息必然需要更多的訓練時間和代價,在數(shù)據(jù)集上,一些現(xiàn)有的數(shù)據(jù)集并沒有局部信息的標注,需要額外標注局部特征屬性標簽,這無疑進一步增加了人力成本。
(3)基于注意力機制的方法
Liu、Zhao 等人[23]提出一種新的基于注意力的深度神經(jīng)網(wǎng)絡(luò),稱為HydraPlus-Net,它可以多方向地將多層次注意力映射輸入到不同的特征層。該模型能夠從低層次到語義層次捕獲多個關(guān)注,探索了關(guān)注特征的多尺度選擇性,豐富了行人的最終特征表示。對行人細粒度屬性,提出了一種基于多方向性注意模塊的多頭聯(lián)立網(wǎng)絡(luò)(HydraPlus Network,HP-Net)。在此基礎(chǔ)上,并且提出了一種新的大規(guī)模行人屬性數(shù)據(jù)集(PA100K dataset),包括最大數(shù)量的行人圖像和實例。
Sarfraz 等人[24]提出端到端感知視圖屬性預測模型,在端到端學習框架中確定了屬性依賴的關(guān)系,除了依賴于身體部位、圖像中的屬性空間上下文或一般場景上下文的流行觀點之外,粗糙的身體姿態(tài)信息可以是另一個簡單但高度相關(guān)的可靠屬性推斷線索,并提出姿態(tài)視圖敏感屬性推理能夠更好地學習屬性預測。
Sarafianos[25]提出了一種有效的方法來提取和聚合不同尺度的視覺注意力遮罩。通過引入了一個損失函數(shù)來處理類和實例級別上的類不平衡,并進一步證明帶有高預測方差的懲罰注意掩模是導致注意機制的監(jiān)管不力的原因。算法在PETA 和更大屬性數(shù)據(jù)集中使用簡單的注意機制,無需附加上下文或附加信息,就能獲得很好的識別率。
Guo 等人[26]提出使用類激活圖網(wǎng)絡(luò)(CAM)來識別人的屬性,并通過細化注意力熱圖來進一步改進識別,注意力熱圖是CAM 的中間結(jié)果,反映了每個屬性的相關(guān)圖像區(qū)域。該方法不需要身體部位的檢測以及身體部位與屬性之間的先驗對應關(guān)系。定義一個新的指數(shù)損失函數(shù)來度量注意力熱圖的適宜性,根據(jù)原有的分類損失函數(shù)和新的指數(shù)損失函數(shù)對屬性分類器進行進一步的訓練。該方法是在帶有CAM 的端到端CNN 網(wǎng)絡(luò)上開發(fā)的,通過添加一個新的組件來細化注意力熱圖。
雖然有眾多學者研究行人屬性識別領(lǐng)域,并提出很多解決的算法,但是由于問題場景的復雜性,行人屬性識別仍然存在這很大的挑戰(zhàn),在實際的監(jiān)控場景中,由于攝像機的拍攝角度不同會造成同一個人的觀察視角不同,對識別效果產(chǎn)生的影響較大,使人的屬性識別變得更為復雜。另外由于戶外的場景不定性很強,行人軌跡可以看作是隨機的,另外其他車輛、廣告牌等物體可能出現(xiàn)在行人之前,從而遮擋行人,造成行人身體一部分的信息缺失,這顯然增加了屬性識別的難度甚至會導致錯誤的分類結(jié)果。由于行人和監(jiān)控攝像頭的距離都比較遠,所以造成圖像的分辨率較低,給一些細粒度屬性的識別增加了難度,這也是很難采用人臉識別的原因之一。另外,室外光線的強度、數(shù)據(jù)分布不均等因素也給行人屬性識別增加了挑戰(zhàn)。
目前主要的研究還是基于行人圖片的屬性識別,而現(xiàn)實場景主要是視頻幀,考慮單張圖片有遮擋、角度問題,可以考慮視頻幀之間的連續(xù)性,例如遮擋問題,可以進行視頻多幀之間的彌補,視頻作為圖像的高維信息,如何準確、高效地利用這些高維度信息來識別行人的屬性是一個值得研究的問題。
本文介紹了行人屬性識別的概念背景以及評估的方法,另外介紹了部分現(xiàn)有工作,主要闡述了早期基于傳統(tǒng)的識別算法以及深度學習的方法在行人屬性識別領(lǐng)域的應用,包括基于全局的算法和基于局部細粒度屬性的算法并介紹了基于注意力機制的算法,并介紹了行人屬性識別存在的問題難點,對未來的工作做出了展望。