李 珣,李林鵬,南愷愷,王曉華,張 蕾
(西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048)
隨著人工智能技術(shù)的不斷發(fā)展,更多機(jī)器人服務(wù)場景的應(yīng)用落地,人機(jī)交互將成為新時(shí)代的常態(tài)[1]。在未來的智能家居中,人機(jī)交互往往需要對(duì)人的身份進(jìn)行快速響應(yīng),從而執(zhí)行后續(xù)的一系列權(quán)限操作,同時(shí)對(duì)陌生人的身份進(jìn)行判別,在追求準(zhǔn)確率的同時(shí)也要防止產(chǎn)生延遲的滯后感,因此實(shí)時(shí)性的身份識(shí)別尤為重要[2]。而人臉識(shí)別相比其他的生物特征識(shí)別具有非接觸性、不易仿冒、方便采集等特點(diǎn)而被大量應(yīng)用于人物身份識(shí)別[3]。
對(duì)于人臉識(shí)別,文獻(xiàn)[4-5]提出了一種局部二值法來描述圖片的紋理特征,具有灰度尺度不變和光照不變的優(yōu)點(diǎn),但是對(duì)于表情和姿態(tài)表征不夠明顯。之后許多研究人員在LBP算法原有的理論基礎(chǔ)上進(jìn)行了改進(jìn)[5-7]。文獻(xiàn)[8]提出使用稀疏系數(shù)來描述人臉圖像,使用最小殘差來判別是否屬于同一張人臉,該算法在應(yīng)用上具有有效性和魯棒性,但是存在訓(xùn)練時(shí)間過長的問題。文獻(xiàn)[9]提出使用PCA+SRC算法來改善光照因素的影響,文獻(xiàn)[10]使用深度學(xué)習(xí)的方法在國際權(quán)威人臉識(shí)別數(shù)據(jù)庫(labeled faces in the wild,LFW)中識(shí)別準(zhǔn)確率達(dá)到了97.25%。但是在實(shí)際應(yīng)用場景中,基于二維的靜態(tài)數(shù)據(jù)集識(shí)別受到光線等因素的影響會(huì)造成識(shí)別率降低。近年來推出的RGB-D相機(jī)可以有效捕捉物體的三維特征[11],Kinect等相機(jī)的出現(xiàn)推動(dòng)了三維人臉識(shí)別的發(fā)展[12-14]。文獻(xiàn)[15]使用改進(jìn)的RISE算法來計(jì)算RGB圖像和深度圖像的顯著性,但是并沒有充分的利用人臉的深度信息。文獻(xiàn)[16]使用無監(jiān)督方法從數(shù)據(jù)集中提取緊密二值描述子,在正臉和面部變化較小的情況下達(dá)到較好地識(shí)別效果,但是對(duì)于局部遮擋的情況下,信息損失比較嚴(yán)重。當(dāng)前,基于二維和三維的人臉識(shí)別技術(shù)都停留在算法和已有的靜態(tài)數(shù)據(jù)集上,僅是作為一個(gè)孤立的任務(wù),將人臉檢測、人臉識(shí)別、人臉跟蹤與機(jī)器人視覺同步為一個(gè)系統(tǒng)可以提高機(jī)器人感知世界的能力[17]。在實(shí)際應(yīng)用場合,一個(gè)完整的系統(tǒng)還需要考慮許多其他的因素。諸如整個(gè)系統(tǒng)的穩(wěn)健性、視頻采集的時(shí)效性、機(jī)器人檢測運(yùn)動(dòng)目標(biāo)的同步性以及人臉識(shí)別算法的完成效率等。
綜上, 本文針對(duì)智能家居場景中動(dòng)態(tài)人臉識(shí)別技術(shù)有待提高的問題, 提出了一種結(jié)合深度圖像的人臉實(shí)時(shí)識(shí)別跟蹤方案。 不同于傳統(tǒng)人臉識(shí)別技術(shù), 利用深度圖像不同目標(biāo)像素點(diǎn)的梯度值, 快速分離頭部背景。使用 Hungarian 算法與 HMM 算法相結(jié)合進(jìn)行人臉跟蹤。 根據(jù)所提出的方案在 Turtlebot 機(jī)器人的基礎(chǔ)上進(jìn)行物理平臺(tái)改裝,使用局域網(wǎng)連接機(jī)器人端與遠(yuǎn)程 PC 端進(jìn)行訓(xùn)練數(shù)據(jù)實(shí)時(shí)傳輸。 最后, 在工作室等現(xiàn)實(shí)環(huán)境中進(jìn)行數(shù)據(jù)采樣訓(xùn)練以及人臉識(shí)別測試, 實(shí)驗(yàn)結(jié)果表明: 本文提出的方法在實(shí)時(shí)視頻中保持良好的精度, 是一種提高智能家居場景中移動(dòng)機(jī)器人人臉識(shí)別準(zhǔn)確率的有效方法。
機(jī)器人對(duì)室內(nèi)移動(dòng)目標(biāo)進(jìn)行檢測識(shí)別, 必須兼顧時(shí)效性和準(zhǔn)確性。因此, 本文在實(shí)時(shí)運(yùn)動(dòng)目標(biāo)檢測時(shí)引入 Viola-Jones 方法[18], 通過積分圖的形式取代傳統(tǒng)的滑動(dòng)窗口來計(jì)算 Haar 特征,加速計(jì)算過程;進(jìn)而結(jié)合 Fisherface 算法將高維數(shù)據(jù)映射到低維空間, 根據(jù)提取的特征向量投影到面部空間進(jìn)行人臉識(shí)別; 最后采用 Hungarian 算法獲得最優(yōu)匹配[19],結(jié)合隱馬爾可夫模型 (hidden markov model,HMM) 過濾掉相鄰采樣之間的虛假目標(biāo), 獲得最終檢測與識(shí)別結(jié)果, 算法流程如圖1所示。
圖 1 算法流程Fig.1 Algorithmic flow
在動(dòng)態(tài)場景中,二維的人臉檢測存在噪聲及光線等干擾因素。使用RGB-D圖像中的深度信息可以較好地彌補(bǔ)這個(gè)缺陷。因此,借助實(shí)驗(yàn)室Kinect可以獲得受光照影響較小深度信息,快速將頭部從背景中分離出來。深度圖像中的頭部檢測步驟優(yōu)先于RGB圖像中的面部檢測,且在光線較差的情況下依舊可以快速檢測出頭部區(qū)域,檢測過程如圖2所示。
圖 2 人臉檢測流程Fig.2 Face detection process
由于獲得頭部圖像的非統(tǒng)一性,需對(duì)圖像進(jìn)行頭部姿態(tài)校正預(yù)處理,同時(shí)為提高識(shí)別的準(zhǔn)確率,保證面部光照均勻需對(duì)其進(jìn)行直方圖均衡化,使圖像中的灰度值均勻分布,增強(qiáng)圖像的有效特征。在光照不足的條件下,可使用對(duì)數(shù)變換來改變灰度值,令
g(x*,y*)=ln(f(x*,y*)+1)
(1)
式中:f(x*,y*)表示原始圖像;g(x*,y*)表示對(duì)數(shù)圖像。
訓(xùn)練圖像和測試圖像像素位置的偏差會(huì)導(dǎo)致識(shí)別性能的下降。為了建立面部方位之間的對(duì)應(yīng)關(guān)系,本文進(jìn)一步使用Viola-Jones分類器[18],利用積分圖來計(jì)算特征值,定位眼睛、鼻子等面部標(biāo)志物。積分圖的表達(dá)特征為
s(x*,y*)=s(x*,y*-1)+i(x*,y*)
(2)
t(x*,y*)=t(x*-1,y*)+s(x*,y*)
(3)
式中:s(x*,y*)為(x*,y*)方向上原始像素之和;t(x*,y*)為積分圖。
目標(biāo)被定位后,將提取到的特征投影到面部空間,利用Fisherface算法對(duì)目標(biāo)進(jìn)行識(shí)別,計(jì)算屬于各個(gè)標(biāo)簽的概率分布,得到正確的標(biāo)簽,如圖3所示。
圖 3 人臉目標(biāo)識(shí)別基本過程示意圖Fig.3 Sketch of basic process of face target recognition
使用LDA線性判別理論對(duì)原始數(shù)據(jù)進(jìn)行降維分析,期望得到的各類別數(shù)據(jù)投影點(diǎn)更為集中。通過在空間中尋找最佳的投影向量,使得類內(nèi)散射矩陣SW最小,類間散射矩陣SB最大。類別為C的類內(nèi)散射矩陣和類間散射矩陣為
(4)
(5)
式中:μi(i=1,2,…,c)為第i類樣本的均值向量;μ為所有樣本的均值向量;Ni為第i類樣本的個(gè)數(shù);xi為第i類樣本的集合;x為n維向量。
假設(shè)投影的空間維度為d,基向量(w1,w2,…,wd)構(gòu)成的矩陣Wn×d,最終求得的準(zhǔn)則函數(shù)為
(6)
移動(dòng)機(jī)器人技術(shù)結(jié)合人臉識(shí)別技術(shù)的優(yōu)勢在于:利用Kinect提高檢測精度,同時(shí)規(guī)避Kinect的距離限制,脫離了場地限制,并對(duì)需求目標(biāo)進(jìn)行基于圖像跟蹤的物理跟蹤。所以找到快速有效的人臉跟蹤解決方案是本文重點(diǎn)研究內(nèi)容之一。
本文使用Hungarian算法構(gòu)建二分圖之間的最大匹配,匈牙利算法的核心思想就是通過不斷的尋找增廣路進(jìn)行完全匹配[19]。在相鄰的采樣圖像中尋找人臉特征求出最大匹配值。在找到全局最適合的任務(wù)后,用HMM來模擬一段時(shí)間內(nèi)的人臉識(shí)別過程,HMM是從馬爾可夫鏈中衍生出來的。通過對(duì)潛在的隱含狀態(tài)進(jìn)行分析,根據(jù)人體移動(dòng)速度的設(shè)定,自動(dòng)過濾掉目標(biāo)場景中虛假的人臉模型,將標(biāo)簽概率視為權(quán)重,為檢測到的人臉分配唯一正確的標(biāo)簽。
利用Kinect提供的RGB-D視頻流進(jìn)行數(shù)據(jù)采集的優(yōu)勢在于可以進(jìn)行多幀交叉檢測,而不是單獨(dú)的去分析每張圖像,為將相鄰兩次檢測的圖像進(jìn)行匹配需要定義一個(gè)閾值。之前的檢測i和現(xiàn)在的檢測j之間的匹配程度定義為
Hij=L2‖Xi-Xj‖+ω‖Pi-Pj‖a2
i=1,2,…,Ml,j=1,2,…,Mr
(7)
式中:Xi,Xj分別代表相鄰兩次之間被檢測人臉的三維坐標(biāo);Pi,Pj分別表示每個(gè)檢測在所有可能標(biāo)簽上的概率分布;ω是2個(gè)距離之間的加權(quán)因子;a為所定義的時(shí)間間隔。根據(jù)人體移動(dòng)速度的假設(shè),如果2個(gè)檢測在可能的標(biāo)簽范圍內(nèi)具有相似的預(yù)測,則此成本函數(shù)是有效的。本文用二分圖來描述相鄰兩次檢測結(jié)果的匹配問題,在加權(quán)二分圖中尋找最小成本匹配,用Ml表示先前檢測點(diǎn)的集合,Mr表示當(dāng)前檢測的集合。對(duì)Mr,Ml進(jìn)行2個(gè)子集之間的所有邊數(shù)完全匹配。連續(xù)的識(shí)別跟蹤可以保存每個(gè)被檢測人員的識(shí)別結(jié)果,使識(shí)別更加穩(wěn)定,并消除出現(xiàn)的誤檢、漏檢。
根據(jù)所設(shè)計(jì)的人臉識(shí)別方法,搭建了物理實(shí)驗(yàn)平臺(tái)并提出了實(shí)時(shí)信息處理的方案,整個(gè)系統(tǒng)如圖4所示。該系統(tǒng)采用機(jī)器人控制端與遠(yuǎn)程工作站端相結(jié)合的信息處理模式,局域網(wǎng)無線傳輸數(shù)據(jù)來連接機(jī)器人控制端與遠(yuǎn)程工作站端,該結(jié)構(gòu)可以保障系統(tǒng)移動(dòng)端運(yùn)動(dòng)連續(xù)性和續(xù)航能力。機(jī)器人運(yùn)動(dòng)控制端由Kobuki底盤、Kinect深度傳感器以及小型化智能終端等[20]組成,遠(yuǎn)程端使用一臺(tái)PC工作站來提高機(jī)器人的可控性。
圖 4 遠(yuǎn)程在線人臉識(shí)別跟蹤系統(tǒng)實(shí)物圖Fig.4 Physical map of remote online face recognition and tracking system
為了確保本文提出的方案與平臺(tái)在真實(shí)環(huán)境中的實(shí)用價(jià)值,本文的所有實(shí)驗(yàn)都是在實(shí)際環(huán)境直接進(jìn)行,實(shí)驗(yàn)場地為背景復(fù)雜的工作室和光照不均勻的樓道。Kinect提供的視頻為30 f/s,根據(jù)機(jī)器人的運(yùn)動(dòng)特性以及移動(dòng)過程中的角度變化,設(shè)置每隔10 f/s提取一張圖片,同時(shí)遠(yuǎn)程PC端對(duì)提取的圖片進(jìn)行訓(xùn)練。樣本組人員切換不同的方位和角度,保證在訓(xùn)練過程中提取到更加豐富的特征。利用人臉檢測節(jié)點(diǎn)對(duì)視頻中的人臉進(jìn)行檢測時(shí),若未檢測到,返回繼續(xù)采集檢測,將捕捉到的人臉圖像標(biāo)準(zhǔn)化尺寸為92×112的圖片用于訓(xùn)練。
為驗(yàn)證本文方法在真實(shí)場景中的有效性,切換不同的背景、角度和距離對(duì)模型進(jìn)行測試,單目標(biāo)識(shí)別結(jié)果如圖5所示。藍(lán)色框和綠色框分別代表頭部與面部,同時(shí)在遠(yuǎn)程工作站可視化輸出目標(biāo)的識(shí)別效果,在檢測識(shí)別框的下方實(shí)時(shí)顯示被測試人員姓名。
圖 5 單目標(biāo)識(shí)別結(jié)果Fig.5 Single target recognition results
本文算法可以完成多目標(biāo)聯(lián)合檢測,采用相同的設(shè)置對(duì)多目標(biāo)進(jìn)行檢測識(shí)別實(shí)驗(yàn)驗(yàn)證,可視化結(jié)果如圖6示例所示。當(dāng)相機(jī)檢測新的目標(biāo)的進(jìn)入視界范圍內(nèi),系統(tǒng)能夠快速對(duì)新進(jìn)入目標(biāo)進(jìn)行鎖定,并將識(shí)別結(jié)果可視化輸出到PC端。
圖 6 多目標(biāo)識(shí)別結(jié)果Fig.6 Multi-target recognition results
為了驗(yàn)證本文算法在物理平臺(tái)的識(shí)別效率,并統(tǒng)計(jì)檢測、識(shí)別算法的實(shí)用性,本文以30名人員作為訓(xùn)練樣本集,隨機(jī)選取6名成員進(jìn)行150次驗(yàn)證測試統(tǒng)計(jì)機(jī)器人在移動(dòng)過程中的人臉識(shí)別時(shí)間及識(shí)別準(zhǔn)確率,統(tǒng)計(jì)結(jié)果分別如表1和表2所示。
表 1 人臉識(shí)別時(shí)間測試表Table 1 Face recognition timetable
訓(xùn)練完成后,需要對(duì)機(jī)器人平臺(tái)進(jìn)行人臉識(shí)別測試來得到頭部定位的時(shí)間。首先遮擋攝像頭,測試人員完全進(jìn)入視野范圍后移開擋板,從表1可知,平均定位時(shí)間為76 ms,識(shí)別時(shí)間平均維持在751.17 ms。在新的目標(biāo)進(jìn)入相機(jī)視野,頭部進(jìn)入檢測范圍有一個(gè)動(dòng)態(tài)的過程,受到距離以及不同環(huán)境的影響檢測時(shí)間會(huì)發(fā)生波動(dòng),面部進(jìn)入視頻后識(shí)別時(shí)間維持在1 s左右,基本滿足實(shí)用需求。
表 2 人臉識(shí)別率統(tǒng)計(jì)表Table 2 Statistical table of face recognition rate
測試結(jié)果顯示出不同目標(biāo)的識(shí)別結(jié)果存在波動(dòng)現(xiàn)象。分析其原因,本文選取的實(shí)驗(yàn)環(huán)境是在背景復(fù)雜的工作室和光照差異較大的樓道,實(shí)驗(yàn)結(jié)果會(huì)受到環(huán)境因素以及測試人員面部表情和距離Kinect相機(jī)的遠(yuǎn)近等因素影響,從表2可知,平均識(shí)別率達(dá)到了94.3%,可以滿足移動(dòng)機(jī)器人在室內(nèi)環(huán)境中的需求。
為了滿足智能家居機(jī)器人實(shí)時(shí)人臉識(shí)別需要,提出了一種基于移動(dòng)機(jī)器人平臺(tái)的動(dòng)態(tài)人臉識(shí)別跟蹤方法。算法部分利用深度圖像的光照不變性快速定位頭部位置,保證動(dòng)態(tài)視頻中面部識(shí)別匹配的魯棒性,提出Hungarian和HMM算法相結(jié)合的目標(biāo)跟蹤模式。將算法移植到Turtlebot移動(dòng)機(jī)器人搭建物理平臺(tái),遠(yuǎn)程PC端加速數(shù)據(jù)處理過程。最后在現(xiàn)實(shí)環(huán)境中采集視頻進(jìn)行實(shí)驗(yàn),動(dòng)態(tài)環(huán)境中平均識(shí)別率達(dá)到了94.3%。在接下來的工作中,將研究深度信息和彩色信息的融合方案,在保持系統(tǒng)時(shí)效性的同時(shí)進(jìn)一步提高識(shí)別準(zhǔn)確率。