亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進(jìn)的ResNet網(wǎng)絡(luò)的人臉表情識別

        2022-02-22 12:20:24馬明棟
        關(guān)鍵詞:特征

        周 婕,馬明棟

        (1.南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003;2.南京郵電大學(xué) 地理與生物信息學(xué)院,江蘇 南京 210003)

        0 引 言

        眾所周知,人臉表情作為非語言交際的一種形式,包含著豐富的情感信息,同時(shí)傳達(dá)出一些有關(guān)人的認(rèn)知行為、性格和心理情緒,雖然顯示出的信息是比較隱晦的,但更能實(shí)時(shí)地、真實(shí)地反映出人的內(nèi)心活動(dòng),真實(shí)性更高,且這種信息表達(dá)方式不能被其他方式所替代,因此人臉表情在人們的日常交流中占據(jù)著重要地位。隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,人們對人工智能的研究更加深入,希望通過計(jì)算機(jī)能模擬人類行為,提高人類的生活質(zhì)量,造福人類。因此人臉表情識別技術(shù)作為通過計(jì)算機(jī)來預(yù)測人類心理狀態(tài)的一種方式具有廣闊的應(yīng)用前景,比如在教育、醫(yī)學(xué)、心理學(xué)、商業(yè)、安全駕駛等各大領(lǐng)域都有對此技術(shù)的研究。

        人臉表情識別的關(guān)鍵就在于人臉不同表情特征點(diǎn)的提取,然而傳統(tǒng)的特征提取算法,如尺度不變特征變換(SIFT)、局部二值模式(LBP)等,不僅設(shè)計(jì)方法比較困難,而且特征點(diǎn)提取不完全,從而導(dǎo)致效率低下。因此,研究人員將卷積神經(jīng)網(wǎng)絡(luò)如AlexNet、VGGNet、GoogleNet等用于人臉表情識別。卷積神經(jīng)網(wǎng)絡(luò)以其能夠共享卷積核,對高維數(shù)據(jù)處理無壓力且特征分類效果好的獨(dú)特優(yōu)勢,在圖像、語音處理方面得到廣泛的應(yīng)用。但隨著網(wǎng)絡(luò)深度的加深,學(xué)習(xí)能力的加強(qiáng),反而造成了梯度爆炸和梯度消失,從而出現(xiàn)了所謂的“退化”問題,即優(yōu)化效果越來越差,測試數(shù)據(jù)和訓(xùn)練數(shù)據(jù)的準(zhǔn)確率也越來越低?;谶@樣的背景,He Kaiming等人提出了ResNet網(wǎng)絡(luò)模型,與其他網(wǎng)絡(luò)最主要的區(qū)別就是在卷積神經(jīng)網(wǎng)絡(luò)中引入了殘差的思想,主要是通過添加shortcut連接,把通過跳層連接的梯度更新成一樣,解決了網(wǎng)絡(luò)變深之后,前面層次的網(wǎng)絡(luò)權(quán)值得不到更新,從而導(dǎo)致梯度消失的問題。

        為了更加高效且準(zhǔn)確地識別出人臉表情,該文提出了基于改進(jìn)的ResNet卷積神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)的參數(shù)量和運(yùn)算量更少,能夠更快更好地提取人臉表情特征,且保存了“最有辨識力”的信息。同時(shí)為了能夠?qū)崟r(shí)識別人臉表情,直接利用OpenCV中的基于Haar特征的人臉檢測分類器,實(shí)現(xiàn)了從視頻中抓取人臉,并加載訓(xùn)練好的模型,最終實(shí)現(xiàn)對視頻人臉表情的實(shí)時(shí)識別系統(tǒng)。

        1 相關(guān)技術(shù)

        1.1 OpenCV

        OpenCV是開源的計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,可以運(yùn)行在不同的操作系統(tǒng)上。它主要由C函數(shù)和C++類組成,但也提供了其他語言接口。OpenCV在圖像處理方面提供了很多通用算法,因此大大提高了圖像處理的效率。該文主要使用到它的視頻處理模塊和人臉檢測分類器。

        視頻處理模塊主要是從視頻序列讀取幀,因此只需創(chuàng)建一個(gè)cv::VideoCapture類的實(shí)例,然后在一個(gè)循環(huán)中提取并顯示視頻的每幀就可以讀取數(shù)據(jù)進(jìn)行處理了。

        人臉檢測分類器主要是檢測并分割出人臉,本系統(tǒng)選用的是Haar特征加上Adaboost級聯(lián)分類器的組合。Haar特征是一種反映圖像灰度變化,像素分模塊求差值的特征,主要利用黑色和白色這兩種矩形組成特征模板,再用兩種矩形像素和的差值作為該特征模板的特征值。通常,人臉的眼睛要比臉頰顏色要深,鼻梁兩側(cè)比鼻梁顏色要深,嘴巴比周圍顏色要深等,因此,人臉的一些特征就可以由Haar特征來簡單描述。然而如果對一幅圖像采用全部的特征去檢測,效率必定非常低,因此Haar特征一般結(jié)合Adaboost級聯(lián)分類器,將全部特征分為各個(gè)階段,并且每個(gè)階段的特征是逐漸增加的,使得人臉檢測效率大大地提高了。

        1.2 經(jīng)典的ResNet網(wǎng)絡(luò)

        1.2.1 ResNet網(wǎng)絡(luò)的提出

        深度卷積神經(jīng)網(wǎng)絡(luò)起源于AlexNet網(wǎng)絡(luò),后來針對此網(wǎng)絡(luò)的不足,研究人員又提出了VGGNet、GoogleNet等網(wǎng)絡(luò),不難看出隨著網(wǎng)絡(luò)深度的增加,網(wǎng)絡(luò)的表達(dá)能力越來越強(qiáng)大,識別的速度和準(zhǔn)確率也不斷上升,這是因?yàn)榫W(wǎng)絡(luò)越深,所能獲取的信息越多,提取的特征也越豐富。然而實(shí)驗(yàn)表明不斷加深的網(wǎng)絡(luò)深度并沒有得到人們預(yù)期的識別結(jié)果,反而出現(xiàn)了“退化”現(xiàn)象,優(yōu)化效果變差,測試數(shù)據(jù)和訓(xùn)練數(shù)據(jù)的準(zhǔn)確率也降低了,這是因?yàn)榫W(wǎng)絡(luò)的加深會造成梯度爆炸和梯度消失的問題。針對這個(gè)現(xiàn)象,對輸入數(shù)據(jù)和中間層的數(shù)據(jù)進(jìn)行歸一化操作,這種方法可以保證網(wǎng)絡(luò)在反向傳播中采用隨機(jī)梯度下降(SGD),從而讓網(wǎng)絡(luò)達(dá)到收斂。但是歸一化操作只能解決深度為幾十層的網(wǎng)絡(luò)的梯度消失問題,如果網(wǎng)絡(luò)深度再加深的話,這種方法就無效了。

        為了讓更深的網(wǎng)絡(luò)也能訓(xùn)練出好的效果,He Kaiming等人提出了新的網(wǎng)絡(luò)結(jié)構(gòu)—ResNet,通過使用Residual Unit成功訓(xùn)練了深度為152層的卷積神經(jīng)網(wǎng)絡(luò),并在ILSVRC 2015比賽中獲得了冠軍。ResNet網(wǎng)絡(luò)在獲得低誤差率,需要較小的參數(shù)量和計(jì)算量的同時(shí),也加快了模型訓(xùn)練的速度,使得訓(xùn)練模型的效果非常突出。

        ResNet較之于其他網(wǎng)絡(luò),最主要的區(qū)別就是在卷積神經(jīng)網(wǎng)絡(luò)中引入了殘差函數(shù)。ResNet網(wǎng)絡(luò)在內(nèi)部的殘差塊使用了跳躍連接,這樣做的好處是緩解了在卷積神經(jīng)網(wǎng)絡(luò)中增加深度帶來的梯度消失的問題,使得ResNet網(wǎng)絡(luò)容易優(yōu)化,即能夠通過增加網(wǎng)絡(luò)的深度來提高準(zhǔn)確率。

        1.2.2 ResNet網(wǎng)絡(luò)結(jié)構(gòu)

        ResNet網(wǎng)絡(luò)見圖1,主要由輸入部分、卷積部分以及輸出部分組成,其中卷積部分又分為四個(gè)階段。

        圖1 ResNet網(wǎng)絡(luò)結(jié)構(gòu)

        由圖1可知,ResNet網(wǎng)絡(luò)的輸入部分主要由大卷積核和最大池化這兩個(gè)部分組成,這一步的目的是為了將大像素的輸入圖像變成小像素的特征圖像,在盡量保留含有信息的特征點(diǎn)的同時(shí),也減少了存儲所需的大小。

        中間卷積部分是此網(wǎng)絡(luò)結(jié)構(gòu)的核心,引入的殘差塊將輸入數(shù)據(jù)分成兩條路,如圖2,一條路經(jīng)過2個(gè)卷積核為3*3的卷積層,另一條路則直接短接(shortcut),通過shortcut將輸入和輸出進(jìn)行一個(gè)element-wise的加疊,這個(gè)簡單的加法不僅不會為網(wǎng)絡(luò)增加額外的參數(shù)和計(jì)算量,而且還可以加快模型的訓(xùn)練速度,提高模型的訓(xùn)練效果,這樣做可以有效地解決梯度爆炸和梯度消失的問題。最終兩條路相加并經(jīng)過ReLU激活函數(shù)處理后輸出。這一步的目的是為了實(shí)現(xiàn)特征信息的提取。

        圖2 ResNet殘差塊

        最后的輸出部分先是通過全局自適應(yīng)平滑池化,然后接全連接層輸出,這樣做的好處是首先通過GAP減少了參數(shù)的數(shù)量,降低過擬合的發(fā)生幾率,再連接FC就是高度提純的特征,方便交給最后的分類器。

        1.3 改進(jìn)的ResNet網(wǎng)絡(luò)

        1.3.1 殘差塊的優(yōu)化

        Basicblock結(jié)構(gòu)如圖2,將輸入數(shù)據(jù)分成兩條路,一條路經(jīng)過卷積層,另一條路則直接短接(shortcut),最終兩條路相加并經(jīng)過relu激活函數(shù)處理后輸出。Bottleneck結(jié)構(gòu)如圖3,對殘差塊做了計(jì)算優(yōu)化,即將兩個(gè)3*3的卷積層替換為兩個(gè)1*1的卷積層加上一個(gè)3*3的卷積層,雖然在原來的結(jié)構(gòu)上增加了一個(gè)卷積層,但是通過第一個(gè)1*1卷積層的降維處理后又在最后一個(gè)1*1卷積層下進(jìn)行了還原處理,這樣做既保持了精度又減少了計(jì)算量。直接計(jì)算來計(jì)較一下兩個(gè)結(jié)構(gòu)的計(jì)算量,比如說,對于256維的輸入特征,Bottleneck結(jié)構(gòu)的參數(shù)數(shù)目為1×1×256×64+3×3×64×64+1×1×64×256=69 632,Basicblock結(jié)構(gòu)的參數(shù)數(shù)目為(3×3×256×256)×2=1 179 648,計(jì)算量簡化了約6%。

        圖3 ResNet殘差塊的優(yōu)化

        1.3.2 下采樣部分的改進(jìn)

        原本的下采樣是在每個(gè)階段的第一個(gè)卷積下去做的,這樣做的后果就是輸入數(shù)據(jù)會通過一個(gè)stride=2的1*1卷積,直接使得特征圖的尺寸縮小了一半,大量的特征信息丟失,使訓(xùn)練的模型不夠精確,從而導(dǎo)致識別率降低。因此,該文將下采樣這一步驟轉(zhuǎn)移到3*3的卷積里面,這樣做的好處就是避免大量的信息流失,使特征信息的提取更加完整。

        1.3.3 激活函數(shù)的改進(jìn)

        ResNet網(wǎng)絡(luò)是在每個(gè)卷積之后都加入了ReLU激活函數(shù),主要目的是為了引入非線性因素,將神經(jīng)網(wǎng)絡(luò)可以應(yīng)用到非線性模型中,提高神經(jīng)網(wǎng)絡(luò)對模型的表達(dá)能力。

        ReLU的函數(shù)公式是

        f

        (

        x

        )=max(0,

        x

        ),函數(shù)圖像如圖4所示。

        圖4 ReLU激活函數(shù)圖像

        ReLU函數(shù)能夠加快計(jì)算與收斂速度,而且在一定程度上緩解梯度消失的問題,但是從ReLU的函數(shù)圖像中可以看出如果輸入小于0的話,經(jīng)ReLU函數(shù)激活后輸出為0,這相當(dāng)于完全沒有激活,這個(gè)函數(shù)也是“死掉的”,即產(chǎn)生所謂的“dying relu”問題,導(dǎo)致后面的權(quán)值不再更新,影響到網(wǎng)絡(luò)的表達(dá)能力。因此嘗試用PReLU激活函數(shù)替代ReLU函數(shù)。

        PReLU的函數(shù)公式是

        f

        (

        x

        )=max(

        a

        ×

        x

        ,

        x

        ),函數(shù)圖像如圖5所示。

        圖5 PReLU激活函數(shù)圖像

        從圖中可以看出在負(fù)數(shù)區(qū)域內(nèi),PReLU有一個(gè)很小的斜率,這樣既保留了ReLU函數(shù)的優(yōu)點(diǎn),同時(shí)又能避免“dying relu”問題。同時(shí)調(diào)整PReLU的位置,將相加后的激活函數(shù)移入殘差塊內(nèi)部,加強(qiáng)模型的表達(dá)能力。

        2 系統(tǒng)整體流程設(shè)計(jì)

        基于改進(jìn)的ResNet網(wǎng)絡(luò)的人臉表情識別系統(tǒng)的整體流程設(shè)計(jì)如圖6所示。該系統(tǒng)主要由三個(gè)部分組成,分別是視頻數(shù)據(jù)的讀取、人臉檢測與人臉圖像提取、人臉表情的預(yù)測及結(jié)果輸出。

        圖6 系統(tǒng)流程

        視頻數(shù)據(jù)的讀?。河捎谝曨l或攝像頭的實(shí)時(shí)畫面是由一幀一幀的圖像組成,因此動(dòng)態(tài)的數(shù)據(jù)讀取本質(zhì)上是圖像的讀取。該文使用OpenCV的VideoCapture 函數(shù)讀取攝像頭數(shù)據(jù)也就是當(dāng)前幀圖像,將獲取的實(shí)時(shí)畫面數(shù)據(jù)存放在定義的Mat數(shù)據(jù)容器(frame)中,并判斷frame是否為空,若不為空則使用窗口顯示讀取到的圖像。

        人臉檢測與人臉圖像提?。哼@步的作用主要是定位到人臉圖像并截取出來,為之后的人臉表情識別做準(zhǔn)備。本系統(tǒng)利用OpenCV自帶的Haar特征人臉檢測器。Haar特征主要是根據(jù)人臉的立體感造成的灰度變化而通過像素分模塊求差值,這樣,人臉的一些特征就可以由Haar特征來簡單描述,再結(jié)合Adaboost級聯(lián)分類器,將全部特征分為各個(gè)階段,提高人臉檢測效率。OpenCV已經(jīng)包含許多用于臉部、眼睛、嘴巴等的預(yù)先分類器,這些XML文件存儲在opencv/data/haarcascades/文件夾中。首先加載所需的XML分類器,XML中存放的是訓(xùn)練后的特征池,其中特征大小是根據(jù)訓(xùn)練時(shí)的參數(shù)而定,然后以灰度模式加載輸入圖像(或視頻),最后就可以在圖像中定位人臉位置,如果找到人臉的話,它會以坐標(biāo)形式返回檢測到的臉部的位置從而提取出人臉圖像。整個(gè)人臉檢測過程的原理是將存放在XML中的每個(gè)固定大小的特征與輸入圖像同樣大小的區(qū)域進(jìn)行對比,如果相符則記錄此矩形區(qū)域的位置,然后滑動(dòng)窗口,重復(fù)以上步驟檢測圖像的其他區(qū)域。

        人臉表情預(yù)測及結(jié)果輸出:以Tensorflow2.0深度學(xué)習(xí)框架為基礎(chǔ)實(shí)現(xiàn)改進(jìn)后的卷積神經(jīng)網(wǎng)絡(luò)來訓(xùn)練模型,再利用訓(xùn)練好的模型完成對人臉表情的預(yù)測,并判斷抓取的人臉表情屬于哪個(gè)標(biāo)簽,最后輸出識別結(jié)果。

        3 實(shí) 驗(yàn)

        3.1 數(shù)據(jù)集選取

        該文選取Fer2013數(shù)據(jù)集作為人臉表情識別研究的數(shù)據(jù)集,雖然該數(shù)據(jù)集的測試集存在許多標(biāo)簽的錯(cuò)誤,導(dǎo)致測試精度不是很高,但本身已劃分了訓(xùn)練集、驗(yàn)證集和測試集,因此選用該數(shù)據(jù)集,有利于在相同條件下將文中方法與其他相關(guān)方法進(jìn)行比較。

        Fer2013人臉表情數(shù)據(jù)集由35 886張人臉表情圖片組成,其中,訓(xùn)練圖(Training)28 708張,公共驗(yàn)證圖(PublicTest)和私有驗(yàn)證圖(PrivateTest)各3 589張,每張圖片是由大小固定為48*48的灰度圖像組成,共有7種表情,分別對應(yīng)于數(shù)字標(biāo)簽0~6,具體表情對應(yīng)的標(biāo)簽和中英文如下:0 anger 生氣;1 disgust 厭惡;2 fear 恐懼;3 happy 開心;4 sad 傷心;5 surprised 驚訝;6 normal 中性。

        數(shù)據(jù)集并沒有直接給出圖片,而是將表情、圖片數(shù)據(jù)、用途的數(shù)據(jù)保存到csv文件中,第一列表示表情標(biāo)簽,第二列為原始圖片數(shù)據(jù),最后一列為用途。這樣處理數(shù)據(jù)的目的是為了方便訓(xùn)練時(shí)讀取數(shù)據(jù)。

        3.2 數(shù)據(jù)增強(qiáng)

        一般來說,訓(xùn)練的數(shù)據(jù)量越大,系統(tǒng)的識別率也越精確,因此,為了得到一個(gè)比較成功的神經(jīng)網(wǎng)絡(luò),就需要大量的參數(shù)。然而,實(shí)際情況中,并沒有這么多的數(shù)據(jù)可以用于訓(xùn)練,因此,在將數(shù)據(jù)提供給模型之前進(jìn)行擴(kuò)充即增強(qiáng)數(shù)據(jù)。數(shù)據(jù)集增強(qiáng)主要是為了加大訓(xùn)練的數(shù)據(jù)量,提高模型的泛化能力及模型的魯棒性,減少網(wǎng)絡(luò)的過擬合現(xiàn)象。該文通過對訓(xùn)練圖片進(jìn)行如隨機(jī)縮放、翻轉(zhuǎn)、平移、旋轉(zhuǎn)等變換操作來增強(qiáng)數(shù)據(jù),使數(shù)據(jù)集的數(shù)據(jù)量增加了數(shù)十倍。

        3.3 實(shí)驗(yàn)結(jié)果及分析

        將增強(qiáng)后的Fer2013數(shù)據(jù)集分別放入ResNet和改進(jìn)后的ResNet網(wǎng)絡(luò)中進(jìn)行訓(xùn)練和測試,可以得到如表1所示的準(zhǔn)確率。ResNet在Fer2013數(shù)據(jù)集上的準(zhǔn)確率為70.3%,改進(jìn)后的ResNet在相同數(shù)據(jù)集上的準(zhǔn)確率為73.2%,準(zhǔn)確率提高了將近3%,說明改進(jìn)后的ResNet網(wǎng)絡(luò)確實(shí)能夠提高人臉表情的識別率。

        表1 不同模型在數(shù)據(jù)集上的準(zhǔn)確率對比

        得到訓(xùn)練模型后,加載OpenCV自帶的Haar特征的人臉檢測器和訓(xùn)練好的模型,先是通過攝像頭按幀讀取圖像,然后從圖像中檢測出并截取出人臉,利用訓(xùn)練好的模型完成對人臉表情的預(yù)測,判斷抓取的人臉表情屬于哪個(gè)標(biāo)簽,最后輸出識別結(jié)果。改進(jìn)方法的效果如圖7所示,結(jié)果可以接受。

        圖7 識別結(jié)果

        4 結(jié)束語

        本系統(tǒng)實(shí)現(xiàn)了結(jié)合深度學(xué)習(xí)來進(jìn)行人臉表情識別的輸出,主要是基于傳統(tǒng)ResNet網(wǎng)絡(luò)的基本結(jié)構(gòu),并對其進(jìn)行了優(yōu)化。輸入和輸出部分仍保持原來的結(jié)構(gòu),主要是對中間的卷積部分進(jìn)行了改進(jìn):將中間卷積部分改為前后各一個(gè)卷積核為1*1的卷積層,中間是卷積核大小為3*3的卷積層,這樣做既可以減少計(jì)算量又可以保持精確度不下降;將下采樣移到后面的3*3卷積里面去做,目的是為了減少信息的流失,最大程度地保證有信息量的特征點(diǎn)保留下來;用PReLU替代ReLU函數(shù),同時(shí)調(diào)整激活函數(shù)的位置,可以在提高神經(jīng)網(wǎng)絡(luò)對模型表達(dá)能力的同時(shí)避免出現(xiàn)“dying relu”的問題。最后的實(shí)驗(yàn)結(jié)果表明,與傳統(tǒng)ResNet模型相比,改進(jìn)的網(wǎng)絡(luò)結(jié)構(gòu)減少了計(jì)算量,提高了識別速度以及識別率。

        猜你喜歡
        特征
        抓住特征巧觀察
        離散型隨機(jī)變量的分布列與數(shù)字特征
        具有兩個(gè)P’維非線性不可約特征標(biāo)的非可解群
        月震特征及與地震的對比
        如何表達(dá)“特征”
        被k(2≤k≤16)整除的正整數(shù)的特征
        不忠誠的四個(gè)特征
        詈語的文化蘊(yùn)含與現(xiàn)代特征
        新聞傳播(2018年11期)2018-08-29 08:15:24
        抓住特征巧觀察
        基于特征篩選的模型選擇
        久久香蕉免费国产天天看| 婷婷综合久久中文字幕蜜桃三电影 | 国产精品高潮呻吟av久久黄| 视频一区二区三区中文字幕狠狠| 牛牛本精品99久久精品88m| 老师露出两个奶球让我吃奶头| 国产一区二区三区在线大屁股| 少妇av免费在线播放| 男人扒开女人双腿猛进女人机机里 | 日本午夜艺术一区二区| 国产精品不卡无码AV在线播放 | 国产精品女同一区二区软件| 亚洲色图视频在线播放| 91久久青青草原免费| 亚洲国产精品综合久久网各 | 亚洲av无码偷拍在线观看| 日产一区一区三区区别| 亚洲欧美国产精品久久久| 久久精品国产亚洲av瑜伽| 人妻丰满熟妇av无码区不卡| 不卡的av网站在线观看| 国产影院一区二区在线| 国产精品不卡无码AV在线播放| 亚洲无毛片| 精品一区二区久久久久久久网站| 国产人妻熟女高跟丝袜图片| 亚洲一区二区三区乱码在线中国| 久久99国产精品久久99密桃| 亚洲一区精品中文字幕| 97色噜噜| 精品国产v无码大片在线观看 | 三级国产高清在线观看| 国产91熟女高潮一曲区| 亚洲欧美日韩在线中文一| 91精品国产综合成人| 亚洲av无码1区2区久久| 国产在线 | 中文| 国产精品无码人妻在线| 最新中文字幕一区二区| 精品亚洲国产日韩av一二三四区 | 国产亚洲日韩欧美久久一区二区 |