廖周宇 王鈺婷 陳科良
(河池學(xué)院計(jì)算機(jī)與信息工程學(xué)院 廣西壯族自治區(qū)河池市 546300)
人臉識(shí)別[1]是基于人的臉部特征信息進(jìn)行身份識(shí)別的一種生物特征識(shí)別技術(shù),簡(jiǎn)單來(lái)說(shuō)就是用電子設(shè)備(如:相機(jī)、攝像頭)收集到人臉圖片或視頻,從收集到的人臉圖片或視頻中查找人臉,如果找到就定位人臉的位置,然后根據(jù)位置截取人臉并對(duì)人臉進(jìn)行特征提取,再把提取到的特征與特征數(shù)據(jù)庫(kù)進(jìn)行驗(yàn)證識(shí)別的一門技術(shù)。在國(guó)家公共安全、商業(yè)安全及社會(huì)安全等眾多領(lǐng)域也有很多應(yīng)用,其中之一就是部分高校用于門禁管理和教學(xué)點(diǎn)名系統(tǒng)[2]。但現(xiàn)實(shí)識(shí)別場(chǎng)景的多樣性和背景的復(fù)雜性,需要研究出更高效、更精確的人臉檢測(cè)和識(shí)別算法來(lái)滿足未來(lái)更多的應(yīng)用場(chǎng)景。文獻(xiàn)[3]提出了在人臉圖像預(yù)處理階段采用了灰度直方圖均衡化的技術(shù),在構(gòu)建特征臉的階段選取了光照錐法進(jìn)行光照補(bǔ)償,以便于削弱系統(tǒng)中的光照影響。文獻(xiàn)[4]研究了將人臉識(shí)別技術(shù)應(yīng)用于移動(dòng)端平臺(tái),通過(guò)Haar特征訓(xùn)練人臉圖像,利用Open CV 與LBPH 算法相結(jié)合完成人臉識(shí)別。本文研究了特征臉(Eigenfaces)識(shí)別算法,對(duì)其原理和技術(shù)實(shí)現(xiàn)進(jìn)行詳細(xì)分析,并基于Open CV 對(duì)其進(jìn)行改進(jìn)和代碼實(shí)現(xiàn),經(jīng)在多姿態(tài)人臉圖像數(shù)據(jù)上驗(yàn)證,取得了較好的檢測(cè)和識(shí)別效率和效果。
人臉檢測(cè)是指對(duì)電子設(shè)備采集到的圖像進(jìn)行搜索,找到所有可能是人臉的位置,并返回人臉位置和大小的過(guò)程。人臉識(shí)別流程主要可分為訓(xùn)練部分和搜索部分,其中搜索部分是基于人臉檢測(cè)所檢測(cè)的人臉在人臉庫(kù)進(jìn)行搜索,所以人臉檢測(cè)是人臉識(shí)別的關(guān)鍵環(huán)節(jié)之一,檢測(cè)效果的好壞直接影響到人臉識(shí)別的效率。而OpenCV 庫(kù)中的級(jí)聯(lián)檢測(cè)器只能直接檢測(cè)正臉和左側(cè)臉,對(duì)于其他姿態(tài)(如:遮擋臉,仰頭臉)人臉檢測(cè)效果差,檢測(cè)耗時(shí)較長(zhǎng)。因此,本人從三方面對(duì)人臉檢測(cè)算法進(jìn)行了改進(jìn),第一,檢測(cè)范圍方面,在OpenCV 庫(kù)的環(huán)境上,基于HAAR 級(jí)聯(lián)分類器實(shí)現(xiàn)了對(duì)正臉、左側(cè)臉、右側(cè)臉的檢測(cè),并結(jié)合鼻子和嘴巴實(shí)現(xiàn)了對(duì)五官臉的檢測(cè),使改進(jìn)之后的人臉檢測(cè)算法對(duì)于正臉、側(cè)臉、仰臉、垂頭臉、遮擋臉等不同姿態(tài)的人臉都有較好的檢測(cè)效果;第二,檢測(cè)結(jié)果方面,設(shè)置篩選算法過(guò)濾掉人臉結(jié)果中的重復(fù)人臉和非人臉;第三,檢測(cè)時(shí)間方面,本人在確保對(duì)檢測(cè)效果影響較小的前提下,通過(guò)圖像縮放犧牲一定的圖片質(zhì)量來(lái)縮短檢測(cè)時(shí)間。通過(guò)這三方面對(duì)人臉檢測(cè)算法進(jìn)行改進(jìn),使得人臉檢測(cè)算法的效率得到很大的提升,改進(jìn)之后的人臉檢測(cè)的流程如圖1所示。
圖1:人臉檢測(cè)流程圖
圖2:檢測(cè)效果圖
根據(jù)上圖進(jìn)行代碼實(shí)現(xiàn),并用分別包含正臉、側(cè)臉、仰臉、垂頭臉、遮擋臉等不同姿態(tài)人臉的圖像進(jìn)行檢測(cè)測(cè)試,檢測(cè)測(cè)試的效果如圖2所示。
隨著市場(chǎng)的發(fā)展,人臉識(shí)別應(yīng)用的領(lǐng)域越來(lái)越多,所需要面臨和適應(yīng)的環(huán)境也會(huì)越來(lái)越多、越來(lái)越復(fù)雜,對(duì)人臉識(shí)別應(yīng)用的要求也越來(lái)越多。所以按領(lǐng)域和要求主要可分為兩大類,第一類應(yīng)用的領(lǐng)域是國(guó)家安全、社會(huì)安全、經(jīng)濟(jì)安全...等重要領(lǐng)域,這一類對(duì)人臉識(shí)別技術(shù)要求是更快速、更高效、更精確、更有針對(duì)性;第二類應(yīng)用的領(lǐng)域是高校、家庭等民用領(lǐng)域,這一類對(duì)人臉識(shí)別技術(shù)的要求是通用性更強(qiáng)、適用性更廣、可操作性難度更低。
本文是往第二類應(yīng)用領(lǐng)域研究,研究人臉識(shí)別算法的具體實(shí)現(xiàn),并結(jié)合改進(jìn)之后的人臉檢測(cè)算法進(jìn)行實(shí)現(xiàn)和使用。人臉識(shí)別主要是指在人臉庫(kù)中搜索待識(shí)別人臉并給出搜索驗(yàn)證結(jié)果的過(guò)程,人臉識(shí)別流程主要包含以下兩個(gè)部分。
(1)訓(xùn)練部分,其是指用人臉識(shí)別算法對(duì)人臉庫(kù)中的人臉進(jìn)行特征提取,把提取到的特征保存成特征庫(kù)的過(guò)程,訓(xùn)練所用的人臉庫(kù)所準(zhǔn)備的人臉越多越充分,所能提取到的特征就會(huì)越多,訓(xùn)練出來(lái)的特征庫(kù)用于識(shí)別時(shí)的效果就會(huì)越好。
(2)搜索部分,這一部分是指用人臉檢測(cè)提取待識(shí)別圖像中的人臉,接著用人臉識(shí)別算法提取檢測(cè)人臉的特征,把提取到的特征在特征庫(kù)中搜索匹配是否存在相同特征,最終給出搜索驗(yàn)證結(jié)果的過(guò)程。
從人臉識(shí)別的流程可以看出,一個(gè)能滿足需求的人臉識(shí)別效果主要受到三個(gè)因素的影響。第一個(gè)因素是人臉庫(kù)因素,人臉識(shí)別流程中的搜索部分是把提取到的特征在特征庫(kù)中搜索匹配,因此訓(xùn)練用的人臉庫(kù)中包含的樣本越多越充分,其訓(xùn)練得到的特征庫(kù)對(duì)于人臉的識(shí)別效果就會(huì)越精確。第二個(gè)因素是人臉識(shí)別算法因素,人臉識(shí)別在推廣的過(guò)程中,遇到了很多問(wèn)題,比如光照、人臉尺寸、人臉姿態(tài)、噪點(diǎn)等諸多因素干擾識(shí)別效果[5],針對(duì)不同的問(wèn)題衍生出了不同的人臉識(shí)別算法。第三個(gè)因素是人臉檢測(cè)算法因素,人臉識(shí)別流程中的搜索部分是在人臉檢測(cè)所檢測(cè)到的人臉上進(jìn)行操作,所以人臉檢測(cè)效果的好壞直接影響到人臉識(shí)別的效果。
Eigenfaces(特征臉)是指用于機(jī)器視覺(jué)領(lǐng)域中的人臉識(shí)別問(wèn)題的一組特征向量,基于特征臉的人臉識(shí)別可分為以下兩個(gè)部分:
圖3:基于特征臉的人臉識(shí)別流程圖
圖4:矩陣轉(zhuǎn)換圖
(1)訓(xùn)練部分,這一過(guò)程主要是把人臉庫(kù)中所有人臉轉(zhuǎn)換變成一個(gè)特征向量集,即把所有人臉的協(xié)方差矩陣進(jìn)行特征值分解,得到對(duì)應(yīng)的特征向量,每個(gè)特征向量是對(duì)人臉之間的一種特征的描述。因此,特征向量集里面特征向量的線性組合可以表示每一個(gè)人的人臉。
圖5:特征臉識(shí)別效果圖
(2)搜索部分,也稱識(shí)別過(guò)程,其是通過(guò)改進(jìn)之后的人臉檢測(cè)算法快速、高效地檢測(cè)出待識(shí)別圖像所包含的人臉,把檢測(cè)到的人臉投影到特征臉子空間,在這個(gè)子空間中同一個(gè)人的人臉離得會(huì)更近,不同人的人臉會(huì)離得較遠(yuǎn);因此可以通過(guò)待識(shí)別人臉在子空間的投影點(diǎn)位置和投影線的長(zhǎng)度來(lái)進(jìn)行識(shí)別判斷。
基于上述分析討論,現(xiàn)有的相關(guān)研究與實(shí)踐在圖書(shū)館服務(wù)和推動(dòng)“一帶一路”建設(shè)方面已取得一定成果,但仍缺乏戰(zhàn)略性思維和高度。本文將在數(shù)字人文、文化遺產(chǎn)、信息素養(yǎng)及知識(shí)扶貧等方面,進(jìn)一步論述“一帶一路”背景下圖書(shū)館的發(fā)展策略,作為對(duì)現(xiàn)有研究的補(bǔ)充。
特征臉本質(zhì)是一種基于PCA 降維的人臉識(shí)別方法。從上述流程可以看出,特征臉需要把人臉庫(kù)中所有人臉的協(xié)方差矩陣分解成特征向量,而當(dāng)人臉的尺寸較大時(shí),如一個(gè)尺寸是200*200 大小的人臉圖像,其人臉的特征維度就是40000;整個(gè)人臉庫(kù)求解過(guò)程中的運(yùn)算量就會(huì)非常大。所以特征臉還使用了PCA 降維技術(shù),大大降低了運(yùn)算量?;谌四槞z測(cè)優(yōu)化的特征臉人臉識(shí)別流程如圖3所示。
Eigenfaces(特征臉)識(shí)別算法是一種使用PCA 進(jìn)行降維的算法[6],其主要的實(shí)現(xiàn)具體可分為以下步驟:
(1)讀取訓(xùn)練數(shù)據(jù)和進(jìn)行維度轉(zhuǎn)換。這一步是先從人臉庫(kù)讀入人臉數(shù)據(jù),讀入的每一張人臉數(shù)據(jù)一般是一個(gè)N*N 的矩陣;接著把每一張人臉數(shù)據(jù)從N*N 的矩陣轉(zhuǎn)為N2的矩陣,如圖4所示。
(2)計(jì)算平均臉。假設(shè)有人臉庫(kù)包含M 張人臉圖像,則經(jīng)過(guò)步驟1 后,M 張人臉數(shù)據(jù)變成了N2行M 列的矩陣數(shù)據(jù)Q,即一列表示一張人臉的數(shù)據(jù)。接著把所有人臉在對(duì)應(yīng)維度加起來(lái),即把每一行的數(shù)據(jù)加起來(lái),然后求平均得到N2行1 列的平均臉數(shù)據(jù)P,計(jì)算公式如下:
(3)將每個(gè)人臉圖像的數(shù)據(jù)減去平均臉矩陣數(shù)據(jù)得到差值矩陣W,計(jì)算公式如下:
(5)計(jì)算特征值和特征向量。因?yàn)閰f(xié)方差矩陣C 的數(shù)據(jù)量會(huì)是維度的4 次方,如對(duì)于一個(gè)120*120 維的人臉,其協(xié)方差矩陣大小為14400*14400;所以當(dāng)人臉維數(shù)較大時(shí),直接求解數(shù)據(jù)量如此巨大的協(xié)方差矩陣C 的特征值和特征向量需要花費(fèi)巨大的計(jì)算量以及較長(zhǎng)的計(jì)算時(shí)間。因此,計(jì)算特征值和特征向量主要有兩種方法,第一種是當(dāng)M ≥N2,即訓(xùn)練人臉個(gè)數(shù)比人臉維數(shù)大時(shí),直接通過(guò)協(xié)方差矩陣C 求解。第二種是當(dāng)M ①第一種 ②第二種 (6)PCA 降維。找到最大的前K 個(gè)特征值所對(duì)應(yīng)的特征向量,并組成K 維的矩陣H。將差值矩陣W 投影到矩陣H 構(gòu)成的新空間,即差值矩陣W 乘以K 維矩陣,實(shí)現(xiàn)降維。計(jì)算公式如下: (7)以K 維矩陣H 構(gòu)造特征空間。 (8)讀入待識(shí)別圖像,按照第2 小節(jié)改進(jìn)之后的人臉檢測(cè)算法進(jìn)行人臉檢測(cè)。 (9)把檢測(cè)得到的人臉數(shù)據(jù),按步驟1 方式進(jìn)行維度轉(zhuǎn)換得到矩陣S。 (10)投影。待識(shí)別人臉數(shù)據(jù)與平均臉數(shù)據(jù)(參照步驟2)的差值矩陣在特征空間的投影O,計(jì)算公式如下: (11)計(jì)算閾值,計(jì)算公式如下: (12)計(jì)算O 與Ω 中每個(gè)人臉特征向量的歐式距離,計(jì)算公式如下: (13)識(shí)別。如果εi<θ,則待識(shí)別人臉是第i 個(gè)人臉,否則人臉庫(kù)中不存在該人臉。 綜上所述,對(duì)基于人臉檢測(cè)優(yōu)化的特征臉識(shí)別結(jié)合實(shí)際情況進(jìn)行了代碼實(shí)現(xiàn),識(shí)別效果如圖5所示。 人臉檢測(cè)是人臉識(shí)別的關(guān)鍵步驟之一,其檢測(cè)效果的好壞直接影響到人臉識(shí)別的效率。因此,本文通過(guò)對(duì)檢測(cè)范圍、檢測(cè)時(shí)間、檢測(cè)結(jié)果進(jìn)行改進(jìn)優(yōu)化,使得人臉檢測(cè)算法的耗時(shí)更短、檢測(cè)結(jié)果更準(zhǔn)確、檢測(cè)范圍更廣。圖2 實(shí)驗(yàn)結(jié)果表明,改進(jìn)之后的人臉檢測(cè)算法性能有一定的提升,對(duì)正臉、側(cè)臉、低頭臉、仰頭臉、遮擋臉等不同姿態(tài)的人臉都能在較短時(shí)間能檢測(cè)到。圖5 的實(shí)驗(yàn)結(jié)果表明,結(jié)合改進(jìn)之后的人臉檢測(cè)算法和特征臉?biāo)惴ㄋO(shè)計(jì)和實(shí)現(xiàn)的人臉識(shí)別具有更高的效率,在識(shí)別時(shí)間和識(shí)別范圍均有一定程度的性能提升。但是本文實(shí)驗(yàn)中用來(lái)測(cè)試的人臉圖像數(shù)據(jù)量相對(duì)較少,下一步將針對(duì)含有豐富姿態(tài)、大數(shù)據(jù)量人臉圖像進(jìn)行研究,進(jìn)一步提高其效率。3.3 基于人臉檢測(cè)優(yōu)化的Eigenfaces識(shí)別效果
4 結(jié)論