• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

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

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

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

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

      0 引言(Introduction)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      對訓(xùn)練好的模型進(jìn)行測試,測試結(jié)果如表1所示,人臉檢測效果如圖5所示。由表1可見,訓(xùn)練好的模型在不同視覺角度及遮擋情況下對人臉檢測的識(shí)別率都有較好的表現(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í)別算法設(shè)計(jì)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      3.3 測試分析

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

      4 結(jié)論(Conclusion)

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

      猜你喜歡
      人臉識(shí)別人臉測試
      人臉識(shí)別 等
      有特點(diǎn)的人臉
      幽默大測試
      幽默大師(2020年11期)2020-11-26 06:12:12
      揭開人臉識(shí)別的神秘面紗
      “攝問”測試
      “攝問”測試
      “攝問”測試
      三國漫——人臉解鎖
      基于類獨(dú)立核稀疏表示的魯棒人臉識(shí)別
      馬面部與人臉相似度驚人
      翼城县| 霍城县| 靖安县| 迁安市| 巢湖市| 赣榆县| 常熟市| 习水县| 涡阳县| 广水市| 泗水县| 崇阳县| 浦江县| 双柏县| 绿春县| 定结县| 临朐县| 大邑县| 名山县| 西丰县| 曲水县| 尼木县| 湟源县| 余庆县| 嘉定区| 宝山区| 茌平县| 当涂县| 财经| 惠安县| 新龙县| 招远市| 宾阳县| 新丰县| 视频| 金阳县| 平陆县| 抚顺县| 绥芬河市| 阳新县| 安顺市|