999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于深度學(xué)習(xí)的人臉識別系統(tǒng)

2023-10-08 13:15:16林平榮吳梓華施曉權(quán)
軟件工程 2023年10期
關(guān)鍵詞:人臉識別檢測模型

林平榮, 吳梓華, 陳 鑫, 施曉權(quán)

(1.廣州軟件學(xué)院軟件研究所, 廣東 廣州 510990;2.華南理工大學(xué)廣州學(xué)院計算機工程學(xué)院, 廣東 廣州 510800;3.廣東機電職業(yè)技術(shù)學(xué)院人工智能學(xué)院, 廣東 廣州 510550)

0 引言(Introduction)

基于深度學(xué)習(xí)的人臉識別技術(shù)是目前人工智能領(lǐng)域被廣泛研究的主題之一。人臉識別技術(shù)相比傳統(tǒng)的身份認(rèn)證技術(shù),具有顯著的可區(qū)分特征,并且不用與驗證設(shè)備進行接觸式交互,方便快捷,是人工智能領(lǐng)域一種重要的無接觸式身份識別技術(shù)[1]。隨著人臉識別技術(shù)的不斷更新和發(fā)展,其識別準(zhǔn)確度大幅提升,實際使用場景也越來越廣泛?;谌斯ぴO(shè)計的特征和傳統(tǒng)機器學(xué)習(xí)技術(shù)的傳統(tǒng)人臉識別方法,已被基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)方法所取代[2]。本文主要論述基于深度學(xué)習(xí)的人臉識別系統(tǒng),闡述其人臉檢測和人臉識別算法的選型思路,最后進行驗證測試。

1 深度卷積神經(jīng)網(wǎng)絡(luò)(Deep convolutional neural networks)

卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是深度學(xué)習(xí)的代表算法之一,相比傳統(tǒng)機器學(xué)習(xí)方法,它含有更復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)和更強大的特征學(xué)習(xí)與特征表達(dá)能力,能夠?qū)崿F(xiàn)非常高的準(zhǔn)確度[3]。該算法被廣泛應(yīng)用于圖像分類[4]、物體檢測[5]、人臉識別[6]、語音識別[7]等多個計算機應(yīng)用領(lǐng)域。截至目前,已經(jīng)有許多優(yōu)秀的CNN網(wǎng)絡(luò)被提出,例如LeNet、AlexNet、GoogleNet、ResNet等,將這些網(wǎng)絡(luò)應(yīng)用到各種檢測和識別任務(wù)中,實現(xiàn)較高的檢測和識別的精度,甚至可以超越人類的感官[8]。

2 基于深度學(xué)習(xí)的人臉識別系統(tǒng)(Face recognition system based on deep learning)

人臉識別系統(tǒng)由人臉圖像采集及檢測、人臉圖像預(yù)處理、人臉圖像表征和人臉匹配與識別四個部分構(gòu)成,其結(jié)構(gòu)如圖1所示。

圖1 人臉識別系統(tǒng)結(jié)構(gòu)Fig.1 Face recognition system structure

系統(tǒng)完成人臉識別任務(wù)的流程如下。

(1)攝像頭視頻流解析:通過攝像頭硬件獲取視頻流并對其進行解析,完成人臉圖像采集,輸出預(yù)設(shè)條件的人臉圖像。

(2)人臉檢測:對采集到的人臉圖像使用人臉檢測算法尋找圖像中人臉的位置和大小,包含人臉的邊界框坐標(biāo)等信息,以便后續(xù)進行人臉圖像預(yù)處理操作。

(3)圖片預(yù)處理:使用人臉對齊、裁剪、歸一化等方法對已檢測到的部分人臉圖片進行圖像預(yù)處理,以便更好地進行人臉特征提取。

(4)人臉特征提取:利用訓(xùn)練好的人臉識別模型對“步驟(2)”和“步驟(3)”中已檢測和預(yù)處理后的人臉圖像進行人臉圖像表征,以獲得可判別的特征向量。

(5)人臉特征比對:將“步驟(4)”中的人臉特征與數(shù)據(jù)庫中的已知人臉特征進行相似度判斷,最后輸出判斷結(jié)果。

人臉檢測及識別對系統(tǒng)的實時性要求較高,因此系統(tǒng)的性能表現(xiàn)是一個很重要的指標(biāo)。依據(jù)軟件性能測試中的“響應(yīng)時間2-5-8原則”(用戶在2 s內(nèi)得到響應(yīng)時,感覺系統(tǒng)響應(yīng)速度比較快;在2~5 s得到響應(yīng)時,感覺系統(tǒng)響應(yīng)速度還可以;在5~8 s響應(yīng)時,感覺系統(tǒng)響應(yīng)速度比較慢;超過8 s,則感覺系統(tǒng)響應(yīng)速度很慢),系統(tǒng)在進行人臉識別的過程中響應(yīng)時間應(yīng)該控制在2 s內(nèi),以達(dá)到實時識別效果及提升用戶體驗感。

2.1 視頻流在線識別模塊設(shè)計

人臉識別過程需要在頁面實時顯示流式視頻。通過Flask+Python+OpenCV搭建流媒體服務(wù)器,使用流式響應(yīng)提供從Motion-JPEG格式的攝像機捕獲的視頻幀流,將本地圖像轉(zhuǎn)為網(wǎng)絡(luò)URL地址,輸出帶識別框的圖像[9]。Motion-JPEG格式具有易于生成且延遲低的優(yōu)點,適用于任何瀏覽器,對瀏覽器的版本也沒有特殊要求[10]。通過模擬的相機驅(qū)動程序,使用OpenCV調(diào)用本地攝像機獲取圖像,并且可以傳輸由相機獲取的一系列jpeg圖像,主要通過camera_opencv類和base_camera類實現(xiàn)。瀏覽器實時視頻流效果圖如圖2所示。

圖2 瀏覽器實時視頻流效果Fig.2 Real-time video streaming effect of the browser

camera_opencv類通過get()函數(shù)進行一個循環(huán),通過OpenCV連接攝像機硬件并從中獲取實時視頻幀流,并將它從攝像機獲得的連續(xù)返回幀作為響應(yīng)塊。在Html頁面中相應(yīng)圖像標(biāo)記的src屬性指向此后臺中的路由,最終實現(xiàn)瀏覽器的流式實時視頻傳輸。流式傳輸是讓每個塊替換頁面中的前一塊,這使得流可以在瀏覽器窗口中“播放”,讓視頻流中的每個塊都成為一個圖像,并提供瀏覽器中運行的實時視頻源。

2.2 人臉檢測模塊設(shè)計

人臉檢測是識別數(shù)字圖像中人臉的計算機技術(shù),它在不同的人臉識別方法中都是關(guān)鍵且基礎(chǔ)的一步。能不能從給定的圖像中通過算法搜索圖像、判斷圖像是否存在人臉以及提取的人臉是否符合后期處理標(biāo)準(zhǔn)等,都將直接影響系統(tǒng)后續(xù)的識別率。對于人臉檢測而言,每個人的表情、相貌都是有區(qū)別的,即使同一個人也時刻會產(chǎn)生不同的變化,而且檢測過程中可能會受到遮擋物、光照和角度等因素的影響,因此人臉檢測算法對環(huán)境變化干擾應(yīng)具有較好的魯棒性。

本文選擇的人臉檢測算法為MTCNN(Multi-Task Cascaded Convolutional Networks),并使用人臉數(shù)據(jù)集對模型進行訓(xùn)練。MTCNN是由ZHANG等[11]于2016年提出的一種多任務(wù)人臉檢測模型。MTCNN由三個神經(jīng)網(wǎng)絡(luò)級聯(lián)組成,即P-Net、R-Net和O-Net,具體對應(yīng)的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。MTCNN可以同時完成人臉檢測和對準(zhǔn)任務(wù),與傳統(tǒng)方法相比,MTCNN具有更好的性能,可以準(zhǔn)確定位人臉且速度更快,此外MTCNN可以實時檢測,對自然環(huán)境中的光線、角度和面部表情變化都有更好的魯棒性,可以很好地滿足人臉檢測的實時性要求。

給定一個圖像,MTCNN算法在進入三個級聯(lián)網(wǎng)絡(luò)前,會先將原始圖片調(diào)整為不同的尺寸,以構(gòu)建圖像金字塔。然后將不同尺寸的圖片送到3個級聯(lián)網(wǎng)絡(luò)進行訓(xùn)練,讓網(wǎng)絡(luò)可以檢測到不同大小的人臉而進行多尺度檢測。生成圖像進入第一個網(wǎng)絡(luò)層P-Net,它是一個淺層的卷積網(wǎng)絡(luò),采用非最大抑制(NMS)合并高度重疊的候選窗口,主要用于生成候選窗口和邊界回歸向量。接下來,P-Net輸出的候選窗口的人臉區(qū)域會進入第二個網(wǎng)絡(luò)層,即R-Net進行處理。R-Net結(jié)構(gòu)與P-Net非常相似,只是多了一層全連接層,因此對臉部特征和窗口的篩選更加嚴(yán)格,它將過濾掉大多數(shù)錯誤窗口(非人臉候選窗口),并將可信度較高的人臉區(qū)域輸送到下一層網(wǎng)絡(luò),即O-Net網(wǎng)絡(luò)。O-Net比R-Net多了一層卷積層,擁有更加復(fù)雜的網(wǎng)絡(luò)架構(gòu),但也因此獲得了更好的性能。O-Net對輸入圖像進行人臉判別和特征點定位后,將輸出人臉區(qū)域的5個特征點位置。

通過Tensorflow深度學(xué)習(xí)框架結(jié)合MCTNN人臉檢測算法搭建檢測模型。搭建好檢測模型之后,基于公開人臉數(shù)據(jù)集WIDER FACE對模型進行迭代訓(xùn)練。根據(jù)參與任務(wù)的不同,將訓(xùn)練數(shù)據(jù)分為四類:人臉正樣本(Positive)、非人臉負(fù)樣本(Negative)、部分臉(Part faces)、關(guān)鍵點(Landmark)。由于系統(tǒng)主要是進行人臉識別任務(wù),MTCNN模型主要用于檢測人臉并返回邊界框,所以只需要將數(shù)據(jù)集分成Negative、Positive、Part faces三個部分即可,即不對人臉關(guān)鍵點進行訓(xùn)練。三部分?jǐn)?shù)據(jù)的比例為1∶1∶3,在標(biāo)注好的人臉圖片上進行隨機人臉剪裁,根據(jù)切割到的邊框和真實人臉框進行交并比(Intersection over Union,IoU)計算,其中最大IoU值為正樣本(Positive)數(shù)據(jù),IoU大于0.4的為部分臉(Part faces)數(shù)據(jù),IoU小于0.3的為負(fù)樣本(Negative)數(shù)據(jù)。將三種12×12的圖像作為P-Net的輸入并進行模型訓(xùn)練,通過P-Net得到了是否有人臉的概率[batch,2],人臉框的偏移量[batch,4],以及關(guān)鍵點的偏移量[batch,10]。訓(xùn)練過程中的一部分訓(xùn)練數(shù)據(jù)圖像如圖4所示。

圖4 部分訓(xùn)練數(shù)據(jù)圖像Fig.4 Partial training data image

對訓(xùn)練好的模型進行測試,測試結(jié)果如表1所示,人臉檢測效果如圖5所示。由表1可見,訓(xùn)練好的模型在不同視覺角度及遮擋情況下對人臉檢測的識別率都有較好的表現(xiàn),具有較好的魯棒性。

表1 模型測試結(jié)果Tab.1 Model test result

(a)側(cè)臉

(b)俯角

(c)仰角

(d)遮擋圖5 人臉檢測效果圖Fig.5 Diagram of face detection effect

2.3 人臉識別算法設(shè)計

人臉相關(guān)任務(wù)分為兩個部分:人臉檢測和人臉識別。輸入一張人臉圖像,判斷其屬于人臉數(shù)據(jù)庫的具體哪一個人,這是人臉識別過程中的重要一環(huán)。近年來,隨著深度卷積神經(jīng)網(wǎng)絡(luò)的引入,人臉識別準(zhǔn)確率不斷提升。許多經(jīng)典的基于深度學(xué)習(xí)的人臉識別模型被提出,如DeepFace、DeepID、VGGFace和FaceNet等,其中的代表算法是FaceNet。表2列舉了近幾年比較成功的人臉識別模型及在公開數(shù)據(jù)集LFW上的測試情況,FaceNet獲得了最高99.63%的平均分類精度,是目前最先進的人臉識別算法。基于此,本文提出融合KNN分類的FaceNet人臉識別方法。

表2 幾種經(jīng)典人臉識別模型在LFW數(shù)據(jù)集上的測試結(jié)果[12]Tab.2 The test results of several classic face recognition models on the LFW dataset[12]

FaceNet是一種用于人臉識別和聚類的統(tǒng)一嵌入技術(shù),其本質(zhì)是通過深度卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)從人臉圖像到歐幾里得空間的映射,將人臉圖像映射為128維的特征向量,使用特征向量之間的距離表征人臉圖像之間的相似度。兩個人臉圖像越相似,其特征向量之間的距離就越小,反之亦然。需要指出的是,FaceNet人臉識別算法不是直接進行分類,而是計算出待測人臉和目標(biāo)人臉特征向量間的歐式距離后,再與預(yù)先設(shè)定的一個閾值進行比較,它的問題是算法模型訓(xùn)練好后,閾值是人為設(shè)定的一個單一的數(shù)值,人臉識別在具體應(yīng)用時是固定的,因此可能會出現(xiàn)一直把某兩個人誤識別的情況。理論上,可以把更多的人臉圖片放到訓(xùn)練集中重新訓(xùn)練,以學(xué)習(xí)到更多的特征,從而泛化到訓(xùn)練集中未曾出現(xiàn)過的主體;也可以通過調(diào)整閾值提高或降低敏感度和特異性,但頻繁重新訓(xùn)練這么大而深的網(wǎng)絡(luò)不現(xiàn)實,調(diào)整閾值也可能會造成其他的問題,所以賦予后期模型調(diào)整的能力很重要[13]。融合了KNN分類的FaceNet人臉識別方法,利用FaceNet進行人臉表征,基于KNN實現(xiàn)人臉分類。在實際使用過程中,當(dāng)類內(nèi)差異更多時,可以增加相關(guān)類別訓(xùn)練樣本,只需訓(xùn)練KNN分類模型即可,而不需要調(diào)整FaceNet網(wǎng)絡(luò)參數(shù),從而賦予模型后期調(diào)整優(yōu)化的能力。

KNN分類器的訓(xùn)練通過Scikit-learn庫實現(xiàn)。選取本文第二作者的人臉樣本(10張以上)以及從LFW人臉數(shù)據(jù)集中隨機選取的10個人的人臉樣本(每個人的樣本數(shù)在10張以上)作為訓(xùn)練與測試數(shù)據(jù)集,每個人為1類,總共11個類別。每個類中70%的人臉圖片用于訓(xùn)練,其余用于測試。實際應(yīng)用時,FaceNet對MTCNN檢測到的人臉進行數(shù)據(jù)表征,提取出128維的特征向量,再通過已經(jīng)訓(xùn)練好的KNN分類器對特征向量分類后實現(xiàn)身份識別。

3 系統(tǒng)測試與分析(System testing and analysis)

分別在正常環(huán)境和復(fù)雜干擾環(huán)境下對本文設(shè)計的人臉識別系統(tǒng)進行測試,測試說明如下。

(1)使用MacBook Pro 筆記本的攝像頭作為圖像采集設(shè)備,對人臉圖像進行實時采集,攝像頭像素為 130萬,主屏分辨率為 2 560×1 600。操作系統(tǒng)為macOS系統(tǒng),版本為10.14.1。

(2)筆記本的攝像頭距離人臉大約30 cm,保證整個人臉圖像能出現(xiàn)在人臉識別系統(tǒng)的驗證區(qū)域。

(3)測試之前,通過自建的人臉數(shù)據(jù)集選取每個人的3張照片作為已知人臉進行人臉特征訓(xùn)練,并將其錄入人臉數(shù)據(jù)庫。

3.1 正常環(huán)境測試

在正常環(huán)境下,通過錄入4個人的人臉圖片進行人臉特征提取,并在錄入后進行每人100次,共400次的在線測試,測試結(jié)果如表3所示。

表3 識別率測試結(jié)果Tab.3 Results of recognition rate test

為了測試系統(tǒng)的性能,采用離線測試和在線測試兩種測試方法對系統(tǒng)的響應(yīng)時間進行測試。

離線測試:主要測試在離線環(huán)境下正確輸入和錯誤輸入的系統(tǒng)響應(yīng)時間。對不同的3人分別離線采集100張人臉圖像,其中兩人提取人臉特征錄入該系統(tǒng)作為正確輸入,剩余1人不錄入系統(tǒng)作為錯誤輸入。將采集的300張圖像隨機輸入該系統(tǒng)進行人臉識別,統(tǒng)計每張圖像的系統(tǒng)響應(yīng)時間。測試結(jié)果如表4所示。

表4 離線測試結(jié)果Tab.4 Results of offline test

在線測試:直接在線使用人臉識別系統(tǒng)進行實時人臉識別。將已錄入人臉信息的測試人員保持人臉無遮擋,并置于人臉識別系統(tǒng)的驗證區(qū)域持續(xù)2 min,并在此過程中進行小幅度的轉(zhuǎn)動,統(tǒng)計人臉識別的次數(shù),從而得出人臉識別過程中的系統(tǒng)平均響應(yīng)時間,測試結(jié)果如表5所示。

表5 在線測試結(jié)果Tab.5 Results of online test

3.2 復(fù)雜環(huán)境干擾測試

系統(tǒng)測試分別在不同的光照、背景、遮擋等干擾環(huán)境下進行,測試結(jié)果如表6所示。

表6 不同光照和背景環(huán)境下測試結(jié)果Tab.6 Test results under environments of different light and background

對人臉各部位進行不同比例的遮擋,測試結(jié)果如表7所示。

表7 遮擋干擾測試結(jié)果Tab.7 Results of occlusion interference test

3.3 測試分析

分析上述測試結(jié)果,本文設(shè)計的人臉識別系統(tǒng)在正常環(huán)境中達(dá)到98%左右的識別率,對于表情不夸張、臉部傾斜角度不大或有一些俯視角度,也能達(dá)到93%左右的識別率。在性能測試方面,離線測試和在線測試的單次識別平均響應(yīng)時間比較快,最快正確輸入為0.63 s,最慢正確輸入為0.69 s,在線測試平均響應(yīng)時間為0.67 s,響應(yīng)時間均在1 s以內(nèi),在用戶體驗感良好的時間范圍內(nèi),系統(tǒng)具備較好的性能,達(dá)到了實時性要求。在復(fù)雜環(huán)境干擾測試中,針對不同的光照、背景,依然有不錯的識別成功率,即使在人臉部位遮擋比例達(dá)到50%的環(huán)境下,平均識別率約為72%,實現(xiàn)了60%以上的識別率,證明算法具有較好的魯棒性。

4 結(jié)論(Conclusion)

本文介紹了基于深度學(xué)習(xí)的人臉識別系統(tǒng)。首先,分析系統(tǒng)完成人臉識別任務(wù)的基本流程,闡述視頻流在線識別模塊、人臉檢測模塊、人臉識別模塊的設(shè)計,尤其是人臉檢測和人臉識別算法的選型。由于人臉檢測具有較高的檢測率及實時性要求,因此選用MTCNN作為檢測模型的算法,均衡了精度和性能。其次,以提升后期模型調(diào)整優(yōu)化能力為出發(fā)點,提出融合KNN分類的FaceNet人臉識別方法,利用FaceNet進行人臉表征、KNN進行人臉特征分類。最后,對系統(tǒng)進行了測試,結(jié)果證明人臉識別系統(tǒng)具備較高的準(zhǔn)確率,響應(yīng)時間比較快,在一些復(fù)雜環(huán)境場景下也有不錯的表現(xiàn)。因此,本文所設(shè)計的基于深度學(xué)習(xí)的人臉識別系統(tǒng)具有推廣的意義。

猜你喜歡
人臉識別檢測模型
一半模型
人臉識別 等
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
揭開人臉識別的神秘面紗
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應(yīng)用
主站蜘蛛池模板: 91蝌蚪视频在线观看| 在线播放国产一区| 99精品伊人久久久大香线蕉| 91精品国产综合久久香蕉922 | 二级特黄绝大片免费视频大片| 亚洲日韩久久综合中文字幕| 高清久久精品亚洲日韩Av| 免费不卡视频| 日韩中文无码av超清| 91精品国产91久久久久久三级| 欧美成人亚洲综合精品欧美激情 | 不卡无码h在线观看| 日本黄色a视频| 欧美日韩一区二区三| 精品视频福利| 久久青草视频| 香蕉99国内自产自拍视频| 国产午夜无码专区喷水| 色视频久久| 福利一区三区| 在线观看av永久| 亚洲二区视频| 国产国语一级毛片| 国产欧美视频综合二区| 91成人精品视频| 亚洲码一区二区三区| 亚洲欧洲日产国产无码AV| 国产真实乱了在线播放| 亚洲an第二区国产精品| 波多野结衣久久精品| 99久久精品国产麻豆婷婷| 亚洲无码高清一区| 香蕉eeww99国产在线观看| 色成人综合| 久久国产拍爱| 日日拍夜夜嗷嗷叫国产| 免费观看三级毛片| 婷婷综合亚洲| 亚洲精品第五页| 国产福利在线观看精品| 欧美一级视频免费| 欧美日韩一区二区在线免费观看| 欧美国产综合色视频| 国产综合亚洲欧洲区精品无码| 亚洲国产系列| 五月综合色婷婷| 日本成人福利视频| 久久动漫精品| 99re热精品视频中文字幕不卡| 亚洲欧美日韩另类| 在线观看国产精品第一区免费| 日韩成人高清无码| 天天摸天天操免费播放小视频| 2021最新国产精品网站| 天堂成人在线视频| 亚洲福利片无码最新在线播放| 午夜精品福利影院| 亚洲人成电影在线播放| 中文字幕亚洲无线码一区女同| 在线观看免费国产| 亚洲三级网站| 国产精品嫩草影院视频| 国产一区二区三区在线观看视频 | www.youjizz.com久久| 亚洲国产av无码综合原创国产| 久热re国产手机在线观看| 97在线国产视频| 亚洲欧美在线综合图区| 午夜福利亚洲精品| 久久国产黑丝袜视频| 日日拍夜夜操| 久久96热在精品国产高清| 日韩毛片免费| 欧美有码在线| 国产网站免费观看| 亚洲成在人线av品善网好看| 国产成人精品在线1区| 手机成人午夜在线视频| 亚洲一区二区三区在线视频| 亚洲第七页| 国产精品成人免费综合| 老色鬼久久亚洲AV综合|