霍婷婷,金 星,趙欣怡,王令旗,張程悅
(牡丹江師范學(xué)院,黑龍江 牡丹江 157000)
人臉識別是一種基于人臉特征信息的生物特征識別,也是應(yīng)用廣泛的身份認證識別技術(shù)。該技術(shù)主要使用攝像設(shè)備采集包含人臉的圖像或視頻流,并自動檢測和跟蹤圖像中的人臉,從而識別檢測到人臉,主要包括檢測人臉、定位與提取人臉特征以及對人臉進行分類3個過程。該技術(shù)的一般流程如圖1所示,首先輸入一張待測人臉圖像,其次提取圖像的人臉特征,包括全局特征、人眼特征、鼻子特征、嘴部特征等,接下來與對比庫中的N個人臉圖像特征進行比對,找到相似度最高的特征并與預(yù)設(shè)的閾值進行比較,最后輸出特征對應(yīng)的身份 信息。
圖1 人臉識別一般過程
關(guān)于人臉識別技術(shù)的研究開始于1966年,BLEDSOE W W首次提出建立半自動的人臉識別系統(tǒng),該系統(tǒng)主要以人臉特征點的間距和比率等參數(shù)為特征,從而確立了早期人臉識別領(lǐng)域的研發(fā)方向——基于人臉的幾何特性的識別以及基于計算模板和圖像灰度的自相關(guān)性來實現(xiàn)識別的模板匹配方法[1]。但自1990年開始,統(tǒng)計方式作為最主要的人臉識別技術(shù)取代了模板匹配方法,該類方法主要有基于隱馬爾可夫過程的識別[2]、基于人臉等密度線分析的識別技術(shù)[3]、基于彈性圖匹配的識別[4]、基于最優(yōu)判別規(guī)則的圖像識別代數(shù)特征提取算法[5]以及神經(jīng)網(wǎng)絡(luò)算法[6]等。以上的這類識別算法都相對直觀有效,在特定條件下也達到了良好的效果,但是當人臉圖片涉及人臉表情、光源、視角、遮擋等不確定因素時,對這些距離度量就失去了最初的識別能力,從而導(dǎo)致結(jié)果不正確。因此文獻[7]提出將人臉識別問題轉(zhuǎn)化為多元線性回歸模型的分類問題,利用稀疏表示分類器進行人臉識別,使得識別率有了大幅度的提升,同時該算法也具有較強的魯棒性。此后研究人員提出了一系列采用壓縮感知領(lǐng)域所使用的多種分類器[8],包括加權(quán)混合范數(shù)正則化方法[9]、加權(quán)稀疏表示分類器[10]、基于卷積神經(jīng)網(wǎng)絡(luò)的稀疏表示分類器[11]等。雖然上述方法都有很好的魯棒性,但這些算法的復(fù)雜度極高,很大程度上限制了此類算法在實際工程中的應(yīng)用,同時由于缺少生物信息的隱私保護,存在著很大的信息泄露風(fēng)險。
針對上述存在的問題,本文提出了基于超分辨率卷積神經(jīng)網(wǎng)絡(luò)(Super-Resolution Convolutional Neural Network,SRCNN)的QR二維碼-人臉重構(gòu)算法(SRCNN_QR_Face)。該算法將獲取到的人臉特征信息轉(zhuǎn)化為QR二維碼,并生成QR二維碼圖片,然后將存儲的QR二維碼圖片與人臉特征信息對比,當比對結(jié)果達到一定閾值,實現(xiàn)人臉識別。該算法實現(xiàn)了QR二維碼與人臉信息的重構(gòu),保證了人臉生物信息的準確、快速傳遞,也提高了人臉識別的效率,此外也為生物信息的安全性和隱私保護提供了一種有效途徑。
最早使用深度學(xué)習(xí)進行超分辨率重建的算法是超分辨率卷積神經(jīng)網(wǎng)絡(luò)算法(SRCNN)[12]。
SRCNN的原理是:首先使用雙立方插值將輸入的低分辨率圖像放大到目標尺寸,其次用3層卷積神經(jīng)網(wǎng)絡(luò)來擬合低分辨率圖像和高分辨率圖像之間的非線性映射,最后得到網(wǎng)絡(luò)的輸出,即為重建的高分辨率圖像。雖然它的原理簡單,但依托深度學(xué)習(xí)模型和大樣本數(shù)據(jù)的學(xué)習(xí),其性能超越了傳統(tǒng)的圖像處理算法,開啟了深度學(xué)習(xí)在超分辨率領(lǐng)域的研究之旅。SRCNN的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,其中f1,f2,f3分別是1、2、3卷積層對應(yīng)的核大小。
圖2 SRCNN的網(wǎng)絡(luò)結(jié)構(gòu)
SRCNN是一種在圖像超分辨率領(lǐng)域應(yīng)用較為突出的的神經(jīng)網(wǎng)絡(luò)算法,它進行超分辨率重建的基本流程如圖3所示,具體步驟如下。
圖3 SRCNN重構(gòu)基本流程
(1)在實際工程應(yīng)用中收集大量圖像樣本。
(2)對收集到的樣本進行下采樣以降低圖像分辨率。根據(jù)采樣次數(shù)的不同,該過程可劃分為2次下采樣、3次下采樣、4次下采樣等。若圖像經(jīng)過2次下采樣,它的長度和寬度將變?yōu)樵瓉淼囊话?,此時未采樣的圖像為高分辨率圖像H,經(jīng)過采樣后的圖像則為低分辨率圖像L,從而L和H形成有效的圖像對,供后續(xù)模型訓(xùn)練使用。
(3)在訓(xùn)練模型時,先把低分辨率圖像L通過放大恢復(fù)為原高分辨率圖像H′,然后再和原高分辨率圖形H加以對比。H′與H的差值用于調(diào)整模型的參數(shù),通過迭代訓(xùn)練將差值最小化。在實踐中,已經(jīng)提出了很多損失函數(shù)來定義這種差異,不同的定義方法會直接影響最終的重構(gòu)效果。
(4)訓(xùn)練后的模型可用于重建新的低分辨率圖像并獲得高分辨率圖像。
從實用的角度來看,基于SRCNN的超分辨率重建可以分為兩個步驟:圖像放大和恢復(fù)。所謂放大是指,SRCNN采用插值上采樣將圖像放大到指定倍數(shù),然后根據(jù)圖像恢復(fù)的原理將放大后的圖像映射到目標圖像中。超分辨率重建不僅可以放大圖像尺寸,而且在某種意義上還可以起到圖像還原的作用。它可以在一定程度上減弱圖像中的噪點和模糊。因此,許多超分辨率重建的算法也被轉(zhuǎn)移到圖像恢復(fù)領(lǐng)域,完成圖像的壓縮、去模糊、去噪聲等任務(wù)。
隨著大數(shù)據(jù)時代的到來和QR二維碼智能掃描應(yīng)用需求的快速增長,QR二維碼給人們的生活帶來便捷的同時,其潛在風(fēng)險也越來越大。一方面,利用QR二維碼技術(shù)進行手機病毒的傳播、木馬程序的植入等違法操作在日漸增多,另一方面,因為目前QR二維碼技術(shù)已比較成熟,所以一般用戶也可以借助簡單的QR二維碼轉(zhuǎn)換軟件隨時合成需要的QR二維碼,此外,由于其結(jié)構(gòu)特點,用戶無法從外觀上判斷該二維碼的安全性。因此如何提高QR二維碼的安全性,是目前亟待解決的問題。針對以上問題,本文提出了基于SRCNN的QR二維碼-人臉重構(gòu)算法,以達到提高QR二維碼的安全性的目的。
基于SRCNN的QR二維碼-人臉重構(gòu)算法的基本流程是:首先利用線性判別分析提取人臉特征并對其進行降維處理,將降維后的特征數(shù)據(jù)進行QR編碼以形成人臉二維碼,其次調(diào)用QR二維碼解碼應(yīng)用程序?qū)⑷四樁S碼解碼,最后結(jié)合特征數(shù)據(jù)利用SRCNN網(wǎng)絡(luò)進行人臉重構(gòu),進而實現(xiàn)基于SRCNN的QR二維碼-人臉重構(gòu)。該算法的完整流程如圖4所示。
圖4 SRCNN重構(gòu)基本流程
線性判別分析(Linear Discriminant Analysis,LDA)是一種經(jīng)典的線性學(xué)習(xí)算法,這種方法通過找到兩類物體或事件的特征的一個線性組合來特征化或區(qū)分它們,并且得到的線性組合可以用作線性分類器或用于后續(xù)分類的降維處理器,它被廣泛應(yīng)用于涉及處理高維數(shù)據(jù)的眾多領(lǐng)域,如人臉識別和圖像處理。線性判別分析是滿足類內(nèi)類間距最大準則條件下將原始特征X從Rm空間變換到Rn空間(m>n),即利用式(1)求取變換矩陣P:
式中:Sb為類間散度矩陣,Sw為類內(nèi)散度矩陣,計算方法如式(2)和式(3)所示。
式中:N是總樣本點數(shù),Ni是第i類的樣本點數(shù),I是類別數(shù),μi是第i類中樣本的均值向量,μ0是所有樣本的均值向量。
P是m×n矩陣,它的解是的特征值λ1,λ2,…,λm按大小降序排列λ1≥λ2≥…≥λm,前n個特征值對應(yīng)的特征向量為[χ1,χ2,…,χn]。
根據(jù)人臉結(jié)構(gòu)的相似性以及LDA的降維能力,本文利用LDA算法對人臉結(jié)構(gòu)進行降維,并將降維后得到的低維子空間稱為“人臉空間”。該過程的主要思想是利用LDA算法的線性組合能力來尋找“人臉空間”的基向量集合,然后利用該集合盡可能完備地刻畫人臉圖像在低維空間中的分布情況。
假設(shè)人臉圖像的維數(shù)為m×n矩陣,人臉空間的基向量長度為m×n矩陣,則該基向量可以由原始人臉圖像的線性組合來獲得。因此,對一組維數(shù)為m×n矩陣的人臉數(shù)字矩陣,采用每一列相連的方法可以構(gòu)造一組大小為D=m×n維的列向量,把D記為人臉的維數(shù),即人臉空間的維數(shù)。將訓(xùn)練樣本映射到“人臉的特征空間”,就可以獲得一組投影矢量Ω,以此可建立人面識別的數(shù)據(jù)庫系統(tǒng)。進行人臉識別時,先把一張待識別的人臉照片映射到“人臉的特征空間”,獲得投影系數(shù)向量。再使用分類器來對比其與人臉庫中的樣本的位置,以便確定該圖像是不是在人臉庫中,如果不是,則返回未知信息;否則,判斷并返回該人臉對應(yīng)的身份信息。
本算法所涉及的人臉樣本均取自英國劍橋大學(xué)的ORL(Olivetti Research Laboratory)人臉庫,該庫中的人臉圖像采集于不同時間、光線輕微變化的環(huán)境條件,不同圖像可能存在包括姿態(tài)、光照及表情上的差別。其中部分圖像如圖5所示。
圖5 ORL人臉數(shù)據(jù)庫的圖像示例
降維處理后,將通過LDA降維處理得到的存儲人臉信息的向量采用二維碼生成算法,將其轉(zhuǎn)化為二維碼,并生成QR二維碼圖片,如圖6所示。其中圖6(a)是原始圖像信息,經(jīng)過QR編碼后生成如圖6(b)所示的QR二維碼。
圖6 原始圖像生成QR二維碼
最后對QR二維碼進行緩存,并調(diào)用解碼器對其進行解碼,解碼結(jié)果如圖7所示。將解碼后的數(shù)據(jù)利用SRCNN重構(gòu),符合度若達到設(shè)定閾值,即可實現(xiàn)人臉識別,如圖8所示。實驗表明,該算法有效地實現(xiàn)了QR二維碼與人臉的重構(gòu)。
圖7 原始圖像的QR二維碼解碼結(jié)果
圖8 SRCNN重構(gòu)結(jié)果
隨著移動互聯(lián)網(wǎng)技術(shù)的發(fā)展,作為一項頗有實用性的編碼方式,QR二維碼的普及成為一種趨勢。然而,QR二維碼帶來的信息安全威脅也是目前亟待解決的問題。為了提高二維碼的安全系數(shù)、防止信息泄露,本文提出了基于SRCNN的QR二維碼-人臉重構(gòu)算法。該算法將QR二維碼與人臉信息有機結(jié)合到一起,保證了人臉生物信息的準確、快速傳遞,也提高了人臉識別率,為生物信息的安全性和隱私保護提供了一種有效途徑。