陳 斌
(麗江文化旅游學(xué)院,云南麗江 674100)
隨著信息技術(shù)的飛速發(fā)展,人臉識別技術(shù)已經(jīng)在眾多領(lǐng)域內(nèi)充分應(yīng)用,使得場景變得更加智能化。運用人臉識別技術(shù),能夠快速明確企業(yè)運營的數(shù)字化發(fā)展方向,提升企業(yè)的管理效率,保障信息的安全性與實時性〔1〕。通過人臉識別算法開發(fā)高性能識別軟件,可對人體行為特征和面部表情進(jìn)行識別,并應(yīng)用于身份認(rèn)證、監(jiān)控、訪問控制等方面。云計算、大數(shù)據(jù)技術(shù)快速發(fā)展,將識別數(shù)據(jù)通過云端進(jìn)行儲存,使得識別效果更加精準(zhǔn)。然而,不同特征對應(yīng)著不同的圖像或幀,不同幀之間的相似性計算隨著數(shù)據(jù)集增大,問題也隨之而來,諸如復(fù)雜度增加、內(nèi)存消耗增大、計算效率降低,而且還存在擴(kuò)容問題。加之面對光照強度、表情與姿態(tài)等因素使得人臉?biāo)惴o法正確識別〔2〕。對于如何正確識別人臉情緒,如何建立超大規(guī)模人臉數(shù)據(jù)庫集進(jìn)行識別的問題,還沒有得到有效解決。因此,本研究以人體異常情緒識別算法為研究對象,研究此算法在不同規(guī)模測試數(shù)據(jù)集下的魯棒性及時效性。
1.1 人臉面部表情及身體動作特征圖像預(yù)處理對人臉面部表情及身體動作特征進(jìn)行檢測,完成對于圖像的預(yù)處理。建立包含100 個樣本的訓(xùn)練表情樣本庫和測試人臉庫,得到100 種訓(xùn)練和測試樣本庫進(jìn)行命名并保存〔3〕。通過A/D 轉(zhuǎn)換得到圖像的數(shù)組形式,在RGB 空間中,使用一個二維數(shù)組進(jìn)行表示,將不同數(shù)據(jù)的元素定義為一個三維坐標(biāo)點,通過RGB 分別表示不同分量的大小。由于組合形式的不同,通過顏色進(jìn)行區(qū)分,得到的種類可以表示為255×255×255。由于像素值不同,對噪聲數(shù)據(jù)進(jìn)行濾波處理。運用高斯濾波器平滑圖像,將初始數(shù)據(jù)與高斯平滑模板進(jìn)行卷積,獲得的圖像與初始圖像進(jìn)行比較。高斯平滑函數(shù)的公式為:
同時,將初始圖像表示為f(x,y),出現(xiàn)之后的濾波圖像為:
圖像中的邊緣可能會指向不同方向,將初始圖像和不同mask 的卷積存儲起來。對于每個點都標(biāo)識在這個點上的最大值和生成的邊緣方向,這樣就從原始圖像生成了圖像中每個點的亮度梯度圖以及亮度梯度的方向。將一階差分卷積模板表示為沿著每個點的最大值和生成邊緣方向:H1 =,其中的梯度公式表示為:
其中H1、H2 表示垂直與水平梯度中的卷積;Ψ 為垂直梯度中的圖像;Ψ(m,n)為幅值〔4〕。運用梯度方向,設(shè)定不同扇區(qū),并依次標(biāo)號,獲得4×4 的鄰域,得到g=0。構(gòu)建人臉表情及身體動作特征的對象梯度直方圖,提供對應(yīng)局部圖像的編碼。保證訓(xùn)練模板與測試模板的表情姿勢相同。將初始圖像進(jìn)行劃分,同時假定每一個模塊的面積為6×7。將不同模塊中不同像素的梯度信息進(jìn)行統(tǒng)計。為了得到目標(biāo)的分類向量,把初始樣本的圖像進(jìn)行劃分,生成不同像素的細(xì)胞單元L。設(shè)定容器P 的數(shù)值為n,將梯度的方向在360°中劃分為相同大小的n 個部分,每個部分的度數(shù)范圍對應(yīng)不同的梯度方向。為得到一個n 維的特征向量,在不同P 的方向區(qū)間上進(jìn)行直方圖的統(tǒng)計〔5〕。模塊m 的面積為3×3,每個L 包含了m 個L。計算不同塊的特征向量是k 維,把k 個L 的維特征向量串聯(lián)生成n 維的特征向量。在掃描圖像的時候,以塊為單位,掃描步長為每次塊所移動的像素個數(shù)。將像素個數(shù)進(jìn)行統(tǒng)計設(shè)定為一個細(xì)胞單元。掃描完成后,獲得掃描塊的特征向量,得到目標(biāo)圖像對應(yīng)的分類特征。
1.2 深度學(xué)習(xí)算法提取表情和動作特征深度學(xué)習(xí)提取人臉特征,運用MLP 分層架構(gòu),自動學(xué)習(xí)完成特征提取,將信息從MLP 的輸入層“前向傳播”后通過隱藏層進(jìn)行傳送〔6〕。將層與層之間的感知系數(shù)進(jìn)行組合分割,獲得感知器的數(shù)學(xué)模型。設(shè)置權(quán)值的初始值為s,將權(quán)重中的不同分量設(shè)置為隨機自然數(shù),并表示為s(0),s1(0),…,sn(0)。其中sn(0)為對應(yīng)時刻的閾值。將樣本進(jìn)行輸入,得到期望值為h。同時根據(jù)公式得到數(shù)據(jù)輸出值與初始值的誤差g 為:
當(dāng)?shù)谝粋€樣本的輸出值與期望輸出值h 相等時,開始對第二個樣本進(jìn)行上述操作,直到所有樣本都穩(wěn)定輸出。全連接層用來感知網(wǎng)絡(luò)的全局信息,在卷積神經(jīng)網(wǎng)絡(luò)層中〔7〕,但是采用非線性分類效果緩慢,所以需要設(shè)計新的算法來優(yōu)化結(jié)果。將通過深度學(xué)習(xí)提取人臉面部表情和身體動作特征及卷積神經(jīng)網(wǎng)絡(luò)提取全局特征,作為MLP 的輸入層,再將尺寸歸一化的圖像輸入到net 結(jié)構(gòu)中,建立卷積神經(jīng)網(wǎng)絡(luò)。先對網(wǎng)絡(luò)中第一個塊的卷積層進(jìn)行卷積,然后完成偏置處理,再使用RELU 激活函數(shù)對得到的特征進(jìn)行映射處理,將特征傳送到處理層,利用采集的參照樣本中的值進(jìn)行計算,獲取平均值,完成抽樣處理。再將從第一個塊的處理層中提取到的特征向量傳輸?shù)降诙€塊中,不斷重復(fù)此過程。通過3 次重復(fù)操作,得到的高清圖像變成低清圖像。最后再將卷積神經(jīng)網(wǎng)絡(luò)特征向量提取到MLP 結(jié)構(gòu)中,通過運用BP 神經(jīng)網(wǎng)絡(luò)反向進(jìn)行傳輸,在輸入特征信息后經(jīng)過不同網(wǎng)絡(luò)層之間的計算獲得實際輸出值,其公式為:
將網(wǎng)絡(luò)誤差作為權(quán)重的依據(jù)反向輸出回去,并不斷更新不同網(wǎng)絡(luò)層之間的權(quán)值。將網(wǎng)絡(luò)誤差值不斷重復(fù)操作,獲得最終的神經(jīng)網(wǎng)絡(luò)權(quán)值,實現(xiàn)訓(xùn)練分類目的。將量化過的人體表情及動作圖像數(shù)據(jù)進(jìn)行歸一化處理,并在卷積神經(jīng)網(wǎng)絡(luò)中進(jìn)行參數(shù)設(shè)置,設(shè)定對應(yīng)的學(xué)習(xí)率和迭代次數(shù)〔8〕。讀取表情圖像文件,獲得對應(yīng)圖像的二維訓(xùn)練數(shù)據(jù)集,截圖視頻中的有效圖片尺寸歸一化為100×100。同時將輸入數(shù)據(jù)輸入卷積層,使用卷積核進(jìn)行加權(quán)處理,隨機選取d 個輸入樣本及對應(yīng)期望進(jìn)行輸出:
其中,g 為最大學(xué)習(xí)次數(shù)。計算隱藏層的神經(jīng)元輸入與輸出,獲得實際值與期望值的差值,將其做對應(yīng)偏導(dǎo)處理,直到計算出不同層的誤差值為止。
1.3 分類識別人體情緒選擇一個人臉表情特征對應(yīng)樣本進(jìn)行分類,不斷進(jìn)行遞歸。在樣本中對信息熵進(jìn)行度量,熵的值越大,說明純度越低,理想狀態(tài)下,所有數(shù)據(jù)的類別相同,熵為0。熵的表達(dá)式為:
為降低復(fù)雜性,通過二分類人臉表情識別的特征進(jìn)行選擇〔9〕。設(shè)定異常情緒為目標(biāo)情感,其他為干擾情緒。選擇FRP 為評估分類的分類性能。設(shè)定所有樣本數(shù)為Y,識別的目標(biāo)樣本為X,得到的FRP公式為:
在一定程度上,F(xiàn)RP 的值越小,分類識別的效果越好。深度卷積神經(jīng)網(wǎng)絡(luò)DNET(dense NET)將每兩層之間進(jìn)行直接連接。在網(wǎng)絡(luò)中,每一層使用前面所有層特征的映射作為輸入,使其自身特征的映射作為所有后續(xù)層的輸入。設(shè)定網(wǎng)絡(luò)層數(shù)為n,連接數(shù)為。DNET 連接模型見圖1。
圖1 網(wǎng)絡(luò)DNET 模型
DNET 通過連接不同層的特征圖實現(xiàn)特征傳遞,使得特征得到有效識別。與此同時,DNET 將所有層進(jìn)行連接,即相當(dāng)于每一層將輸入與損失直接連接,減少梯度消失現(xiàn)象。同時建立DNET 預(yù)訓(xùn)練,利用DNET 進(jìn)行空間特征提取。在分類識別過程中,DNET 峰值速度大于50 r,迅速將網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行識別,對人體情緒進(jìn)行特征提取。設(shè)定模型的分類層數(shù),前兩層提取淺層特征,比如人體表情、圖像邊緣信息〔10〕。由于容易受到不同干擾環(huán)境因素影響,噪聲比較多,所以最后兩層提取抽象特征圖,用以增加網(wǎng)絡(luò)的計算量,解決存在的特征圖尺寸問題。再將不同模塊進(jìn)行融合,通過特征值進(jìn)行加權(quán)分配,設(shè)定輸入值為x,沿著水平與垂直的坐標(biāo)命名不同通路,得到的輸出公式為:
其中,c 為第c 條通路;h 為長度,w 為寬度。通過計算生成特征圖,并結(jié)合1×1 卷積轉(zhuǎn)換函數(shù)進(jìn)行特征融合,獲得輸出圖像的尺寸,將特征圖輸送到網(wǎng)絡(luò)連接層進(jìn)行降維,得到時空特征并輸入到分類設(shè)備中,完成對視頻中人體異常情緒的分類識別。
2.1 搭建實驗環(huán)境收集目標(biāo)識別數(shù)據(jù)集并進(jìn)行識別。圖片由單攝像機,固定鏡頭進(jìn)行拍攝。數(shù)據(jù)集中每個場景的鏡頭位置不同,光照情況不同,能夠保證模型的充分訓(xùn)練。結(jié)合視頻幀大小,Batch size為64,迭代次數(shù)為100 次。采用預(yù)先訓(xùn)練好的DNET 網(wǎng)絡(luò)提取特征,輸出層設(shè)置為860、640、514,隱藏層單元參數(shù)設(shè)置為660。分類設(shè)備為SMAX。實驗所用到的軟硬件平臺環(huán)境及參數(shù)見表1。
表1 實驗軟硬件平臺
建立檢測樣本,使得人臉表情的分類信息足夠多,圖像盡量變得更小,可以節(jié)約一定的計算量。同時需要將圖像區(qū)域邊界標(biāo)注明顯,使得計算機能夠快速對圖像完成提取,在訓(xùn)練完人臉樣本后,建立人臉樣本庫和測試人臉樣本集合,集合中也包括100 個異常情緒人臉樣本。
2.2 實驗結(jié)果與分析將實驗采集的不同情緒數(shù)據(jù)進(jìn)行歸一化處理,同時在卷積層后附加一個池化層。通過設(shè)定卷積核為5×5 來實現(xiàn)細(xì)節(jié)特征的提取。激活非線性函數(shù),將卷積結(jié)果進(jìn)行映射,得到函數(shù)為f(x)=max(0,x)。網(wǎng)絡(luò)中加入SMAX 函數(shù)解決多分類問題,將n 維向量中的元素設(shè)定為樣本的識別失誤率p=p(y=i|x),其中SMAX 函數(shù)公式為:
圖2 人體異常情緒識別失誤率隨迭代次數(shù)變化曲線
由結(jié)果可知,采用卷積神經(jīng)網(wǎng)絡(luò)識別人體異常情緒的過程中,對照1 組和對照2 組的識別失誤率相對較高。在迭代次數(shù)為200 次時,對照2 組出現(xiàn)最高識別失誤率,識別失誤率為15%。而實驗組的識別失誤率最低,在迭代次數(shù)增加時,識別失誤率也均在5%以下。
為驗證數(shù)據(jù)的容錯性,在訓(xùn)練集中加入噪聲因素,如高斯噪聲、泊松噪聲。對比本研究神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型與傳統(tǒng)訓(xùn)練模型在加噪后,測試集中數(shù)據(jù)的測試情況,見圖3。
圖3 信噪比識別結(jié)果
由結(jié)果可知,實驗組的識別失誤率為3 組中最低,卷積神經(jīng)網(wǎng)絡(luò)對加噪后的測試集識別效果顯著,在信噪比不斷升高的條件下,識別失誤率呈下降趨勢。說明該模型具有良好的抗噪性能,能準(zhǔn)確且有效地提取圖像特征,使得整體的識別效果達(dá)到了預(yù)期的目標(biāo)。增加噪聲前后圖像的效果對比見圖4。
圖4 加入噪聲前后圖像的效果對比
由圖4 可知,實驗組和兩個對照組加入噪聲前的圖像更加清晰,細(xì)節(jié)更加豐富,顏色更加鮮艷。而加入噪聲之后,圖像出現(xiàn)模糊、失真、色彩不真實甚至部分像素點混淆等問題,影響圖像質(zhì)量。相比兩個對照組,實驗組的圖像識別結(jié)果更加清晰。
本研究從人體異常情緒識別入手,結(jié)合圖像視頻與深度學(xué)習(xí)方法,探究了基于視頻圖像的人體異常情緒識別算法。通過卷積神經(jīng)網(wǎng)絡(luò)對模型的訓(xùn)練重建,有效提高識別的準(zhǔn)確率,使得在人體異常情緒識別與表情分析中能夠有極大突破,完成對整體人體圖像的匹配,獲得準(zhǔn)確情緒信息,滿足算法對于特征定位的需求。通過算法不斷優(yōu)化,在識別目標(biāo)時,應(yīng)用圖像視頻深度學(xué)習(xí)技術(shù),實現(xiàn)了對人體異常情緒更有效、更準(zhǔn)確的識別。但方法中還存在一些不足之處,例如像素點識別精度問題、損失函數(shù)的驗證問題、識別率優(yōu)化問題等需要進(jìn)一步繼續(xù)研究。