陳 奇,章東平,楊 力
(中國計量大學 信息工程學院, 浙江 杭州 310018)
在視頻監(jiān)控的應用場景下,我們先會對圖像中的人臉進行檢測定位,檢測到的屬于同一個人的圖像可能是一張,也有可能是多張. 如果同一個人總共只檢測到了一張人臉,那么這張圖像不管圖像質(zhì)量的好壞,都應被用于人臉識別. 但大多數(shù)時候,監(jiān)控都會采集到多張清晰度各異的人臉圖像. 因此有選擇性地選取一些較清晰的圖片用于人臉識別可以有效地提升識別率. 如何丟棄抓取的模糊人臉圖像,只保留清晰的人臉圖,這也是工業(yè)界和學術界一直重點研究的問題之一.
針對圖像的清晰度評價的研究也在近年來得到了越來越多的學者的關注,研究方法主要可以分為以下幾類:
基于圖像邊緣信息的方法. 比如Feichtenhofer[1]等人通過引出邊緣斜率的概念,優(yōu)化特征的合并方法,提出了基于邊緣梯度的感知清晰度(PSI)方法. 張?zhí)祆蟍2]等人利用sobel算子得到圖片水平和垂直梯度,然后求得圖像的強邊緣并建立強邊緣直方圖,最后通過加權(quán)得出清晰度評價值. 這類方法實現(xiàn)簡單,但準確性不高. 其次是基于空間域而不涉及邊緣信息的方法. 這類方法[3]主要是從空間域的角度去考慮問題,不容易實現(xiàn),效率低下. 還有就是基于變換域的方法. 有研究人員通過結(jié)合變換預域的方式提高了一定的準確度,比如Marichal[4]等人利用離散余弦變換評價圖像清晰度,但魯棒性較差.
本研究將深度學習應用于人臉清晰度評價,利用卷積神經(jīng)網(wǎng)絡建立自己的清晰度評估模型. 同時又通過改變傳統(tǒng)的卷積結(jié)構(gòu)的方法來解決計算復雜度高及難以實時計算的問題.
卷積神經(jīng)網(wǎng)絡是一種被證明在計算機視覺領域特別有效的神經(jīng)網(wǎng)絡. 主要原因在于它的權(quán)值共享特性可以大大地降低模型的復雜度,同時又減少了權(quán)值的數(shù)量. 這是一個很重要的優(yōu)點,尤其是當輸入的圖像是多維情況下,圖像能夠直接用于網(wǎng)絡的輸入. 這么做就避免了傳統(tǒng)識別算法中繁瑣的特征提取與數(shù)據(jù)重建過程.
一般來說,卷積層就是專門用于做特征提取的網(wǎng)絡層,如圖1所示卷積層中每個神經(jīng)元通過一組濾波器的權(quán)值連接到上一層的特征圖中的小塊. 我們將人為設定這些濾波矩陣的長和寬,不過通常設置為3×3或5×5. 卷積層試圖將神經(jīng)網(wǎng)絡中的每一小塊進行更加深入地分析從而得到抽象程度更高的特征.
圖2是兩種連接方式的對比圖,對于全連接來說,b1和b2必須與所有的4個輸入元素a1,a2,a3,a4都連接. 而對于卷積層的局部連接來說,a1只與b1進行連接,而沒有和b2相連,a4只與b2連接,而沒有和b1連接. 這種局部感知的特點使得網(wǎng)絡上的參數(shù)能夠巨幅減少,從而極大地提升訓練速率.
圖2 兩種連接結(jié)構(gòu)示意圖Figure 2 Diagram of two connection structures
下采樣層將計算每一張?zhí)卣鲌D或者幾張?zhí)卣鲌D的局部小塊最大值或平均值. 如圖3所示,每4個小塊的平均值被提取出,這樣可以降低表示維度,同時可以忽略目標的傾斜、旋轉(zhuǎn)之類的相對位置的變化.
這么做可以提高精度,并且一定程度上減輕了過擬合. 為了便于理解,下采樣操作也可以認為將一張分辨率較高的圖片轉(zhuǎn)換為分辨率較低的圖片.
圖3 均值下采樣示意圖Figure 3 Diagram of mean value down-sampling
經(jīng)過幾輪卷積層和下采樣層的處理之后,可以理解為圖像中的信息已經(jīng)被抽象成了那些具有更多信息量的特征.
全連接層的作用是連接所有的特征,將輸出值送給分類器(如Softmax分類器). Softmax分類器[5]的表達式如下:
(1)
因為本文的研究背景為監(jiān)控視頻下的人臉清晰度評價,因此對實時性有一定要求.傳統(tǒng)的卷積運算量大,下面的方法對卷積的運算方式進行改進.
本文使用了可分離卷積[6]這種改進型的卷積操作. 標準的卷積操作分解為逐通道卷積和1×1的卷積兩模塊進行. 可以理解為將原來的一個卷積層分解為兩個卷積層,前一個逐通道卷積的每個卷積核都只和輸入的每個通道進行卷積,接著后面的1×1卷積負責將上一層計算的結(jié)果合并.
圖4是標準的卷積層和改進后的卷積層上進行卷積時的對比圖,X是輸入特征圖的數(shù)量,Y就是本層卷積核的數(shù)量,可以理解為輸出的通道個數(shù). 對于一個傳統(tǒng)的卷積操作,例如圖4中的第一行,我們假定輸入為X個K×K大小的特征圖,然后與Y個尺寸是W×W×X的卷積核做卷積運算,輸出是Y個H×H的特征圖.那么總共會產(chǎn)生的計算量為W×W×X×Y×H×H.
圖4 兩種不同卷積結(jié)構(gòu)示意圖Figure 4 Diagram of two different convolution structures
圖4中的第二行,表示的是分解后的第一層卷積,同樣的輸入,不同的是這里先用X個尺寸為W×W×1的卷積核和輸入的X個特征圖做相對應的卷積運算. 這樣可以得到X個運算結(jié)果,但是不將這X個結(jié)果相互之間累加. 那么這第一層輸出的是H×H×X,這一層的運算量為H×H×W×W×X.
在圖4的第三行,上一層輸出的X個H×H大小的特征圖作為輸入,然后與Y個尺寸為1×1×X的卷積核去做卷積. 這種標準1×1卷積可以有效地進行通道數(shù)的升維和降維,實現(xiàn)跨通道的交互和信息整合,是這幾年一些出色的網(wǎng)絡結(jié)構(gòu)中常用的卷積核類型. 最后輸出的是Y個H×H的特征圖. 那么這一層的總運算量為X×Y×1×1×H×H.
我們用下面的公式來求得兩種卷積結(jié)構(gòu)的計算量之比CR:
(2)
式(2)中分子表示分離卷積操作后的計算量,分母表示普通卷積的運算量,那么用3×3大小的卷積核做卷積時,理論上卷積的運算時間能減少為原來的1/9左右.
在網(wǎng)絡結(jié)構(gòu)中我們會先將56×56大小的人臉圖像塊作為輸入,最后經(jīng)過一系列計算得到4個節(jié)點的輸出. 如表1.
表1 人臉清晰度評價網(wǎng)絡結(jié)構(gòu)
輸入的人臉圖會不斷進行卷積操作提取局部特征,同時經(jīng)過處理的圖片的維數(shù)也在不斷的增加,最后經(jīng)過全連接層提取全局特征,然后用softmax進行分類,這里的四個輸出節(jié)點代表清晰度的四個評價等級對應的概率.
我們沒有對該網(wǎng)絡結(jié)構(gòu)中的首個卷積層做分解,另外最后還添加有一個均值下采樣層. 與之前一些經(jīng)典網(wǎng)絡結(jié)構(gòu)習慣在最后放上1到2個全連接層來給出最后的分類結(jié)果有所不同,本文的網(wǎng)絡結(jié)構(gòu)對一整幅特征圖做全局平均值下采樣. 這種操作可以省去不少參數(shù),縮小網(wǎng)絡大小. 表1中的dw就表示逐通道.
網(wǎng)絡訓練所需要的數(shù)據(jù)來自于實際監(jiān)控下的人臉抓拍數(shù)據(jù)集, 圖片主要通過人工標注. 我們將它們根據(jù)圖片的清晰程度分成清晰、較清晰、較模糊、模糊四部分,每張圖片都有幾個人投票通過打分然后選取票數(shù)最多的類別決定標注的清晰程度. 表2為我們標注時的參考準則. 總共收集到的監(jiān)控人臉清晰度標注圖片大約有3000張,其中挑選出各200張的4類圖片總共800張人臉作為我們的測試數(shù)據(jù)集,剩余的2200張人臉用于訓練.
表2 人臉清晰度標注準則
為了增加相應的訓練數(shù)據(jù),我們不直接將整個人臉作為模型的輸入,而是在這些人臉圖上截取56×56的小圖像塊,接著人工給每個小圖像塊等級得分作為標簽. 當我們測試模型的效果時,在某一張人臉上,我們?nèi)∷锌梢缘玫降牟恢丿B小圖像塊進行打分并求平均值作為這張人臉的清晰度評價值.
人臉清晰度的評測主要依賴于主觀人工評價的標準分和客觀上訓練模型給出的得分,然后利用PLCC和SROCC這兩個公式分別計算兩組得分的一致性. 其中,PLCC主要用于計算準確率, SROCC主要用于求得單調(diào)性.
評估準確率主要通過皮爾遜線性相關系數(shù)(PLCC),PLCC的定義如下:
(3)
貯藏過程中,隨著時間的延長,肉的顏色隨肌紅蛋白的氧化、汁液流失及微生物的作用逐漸加深乃至褐變,影響了感官品質(zhì)和銷售價格。肉的色澤作為最直觀、最易辨別的感官評價指標,也是貯藏效果的重要評價指標。本研究每隔2d對氣調(diào)冷鮮羊肉表面肉色進行觀察,結(jié)果見圖2。
(4)
公式里Xi和Yi的含義是兩組評分值xi和yi以相同順序(從大到小或從小到大)排序后在各自序列中的順序號,xi為我們對第i個人臉圖像給出的主觀評價值,yi為我們的訓練模型給出的客觀評價值,其中n為總共用于進行測試的人臉數(shù).
SROCC是從單調(diào)性上判斷兩對結(jié)果的相關程度. 從公式的表達來看,PLCC和SROCC的值越趨近于1,說明客觀模型的評價效果越好.
由于主觀得分和客觀得分的評測量級可能不同,需要在計算PLCC和SROCC之前先將客觀評價得分進行回歸運算. 相應的回歸函數(shù)如下[7]:
(5)
式(5)中,Q是模型客觀的評價值,β1,β2,β3,β4,β5這五個參數(shù)的具體設置見參考文獻[7].
本文前三個實驗其他比較方法為基于最小可覺模糊[8](JNB),基于模糊探測累積概率[9](CBPD),基于局部感知清晰度[10](S3),基于局部相位相干性[11](LPC),基于最大局部變化[12](MLV). 為了證明本文算法對高質(zhì)量人臉和低質(zhì)量人臉都有效,我們選擇將測試集中圖像質(zhì)量較好的清晰和較清晰這兩部分400張人臉放在第一組實驗中進行測試. 然后將模糊和較模糊的兩部分質(zhì)量較差的人臉數(shù)據(jù)集放在第二組實驗進行測試.
第一個實驗先進行清晰和較清晰數(shù)據(jù)集的測試.下面的圖5為我們清晰集和較清晰集的兩個實例.
圖5 清晰和較清晰人臉實例圖Figure 5 Examples of clear face and relatively clear face
表3為我們的實驗結(jié)果數(shù)據(jù),6種比較方法,以及每種方法對應的精度.
表3 六種方法的比較結(jié)果(清晰和較清晰)
下面進行模糊和較模糊數(shù)據(jù)集的測試.這部分的數(shù)據(jù)集圖片質(zhì)量差,主要是相機的焦距沒調(diào)好產(chǎn)生的離焦模糊,人的臉部與攝像頭之間產(chǎn)生了相對運動的運動模糊. 圖6為模糊人臉和較模糊人臉的實例圖片.
圖6 模糊和較模糊人臉實例圖Figure 6 Example of blur face and relatively blur face
表4為我們的實驗結(jié)果,也同樣是6種方法的比較.
表4 六種方法的比較結(jié)果(模糊和較模糊)
接著一組實驗將我們模型和其他方法的運行速度進行測試. 實驗均在Visual Studio 2013環(huán)境下進行,電腦配置為Intel Core i5-6500 CPU 3.20GHz,內(nèi)存為8.00GB. GPU的型號為NVIDIA GeForce GTX 960,測試速度的指標為每秒幀數(shù)fps,測試結(jié)果如表5.
表5 六種方法運行速度對比
最后一組比對實驗將與幾種經(jīng)典的網(wǎng)絡結(jié)構(gòu)進行比較,包括AlexNet[13]和GoogLeNet[14],并將測試平臺放到arm板上. 測試的數(shù)據(jù)集使用清晰和較清晰數(shù)據(jù)集,而評估指標采用PLCC系數(shù),同時記錄他們的運行時間用來計算fps,如表6.
表6 3種方法在ARM平臺上的比較結(jié)果
比較表3和表4的結(jié)果可以看出,在后面四種方法中,對清晰和較清晰人臉的評價效果與對模糊和較模糊人臉的評價效果變化不大. JNB的效果相對后面的幾種方法明顯差很多,而CPBD作為JNB的一種改進方法,效果有了不少提升,但比后面四種方法還有一些差距. JNB和CPBD這兩種經(jīng)典方法屬于典型的利用邊緣的寬度去計算清晰度的方法,當圖像嚴重模糊時,很難檢測到邊緣,使得在模糊和較模糊數(shù)據(jù)集上準確率會相對其他的方法下降更快. S3方法結(jié)合考慮了空間域和頻率域,效果比單獨考慮空間域更好. LPC基于轉(zhuǎn)換域來計算圖像清晰度,這種方法效果也還不錯,性能比較穩(wěn)定,在幾組實驗中的結(jié)果都略微差于我們的結(jié)果. MLV方法是一種又快又好的方法,既具有相當可觀的運行效率,同時在效果上也只是稍差于我們的算法. 我們的算法跟其他的清晰度評價算法相比,在PLCC和SROCC上我們的指標是最高的,說明我們的評價算法要優(yōu)于前面幾種.
表5的結(jié)果顯示了MLV方法具有最快的運行速度,而S3方法的運行速度是最慢的. 本文雖然已經(jīng)在速度方面有了不少優(yōu)化但仍與MLV這個最快的方法在CPU運算速度上有所較大的差距,但超過了前面4種方法,也基本能達到實時的處理效果,尤其是在GPU上的處理速度甚至接近了MLV方法. 這主要是因為GPU比CPU更擅長處理這種高度并行化的任務(比如卷積操作),能夠更好地發(fā)揮浮點運算的性能.
最后一個實驗我們選用清晰和較清晰數(shù)據(jù)集進行實驗,如表6. 選用ARM這種嵌入式平臺能更好地驗證網(wǎng)絡的效率. 從結(jié)果上看,GoogLeNet的PLCC系數(shù)要略高于我們0.8%,我們的方法又比AlexNet有0.3%的提高. AlexNet的處理速度是這三個網(wǎng)絡中最慢的,僅為5.9 fps. 而我們的網(wǎng)絡處理速度可以達到11.5 fps,幾乎是AlexNet的兩倍. GoogLeNet的處理速度比AlexNet快1.3倍,可以達到7.6 fps,但仍只有我們的0.66倍. 因此在準確度幾乎相同的情況下,我們的算法在速度上還是具有優(yōu)勢的.
本文提出了利用卷積神經(jīng)網(wǎng)絡來替代傳統(tǒng)方法來進行人臉清晰度評價. 并在實驗中證明了準確度上相比傳統(tǒng)清晰度評價方法取得了更加不錯的效果. 同時,利用可分離卷積的方法大大減少了運算量,提升了處理速度. 與其他的幾種經(jīng)典的卷積神經(jīng)網(wǎng)絡相比,在準確度幾乎相等的情況下,計算速度上快了不少.
[1] FEICHTENHOFER C, FASSOLD H, SCHALLAUER P. A perceptual image sharpness metric based on local edge gradient analysis[J].IEEESignalProcessingLetters, 2013, 20(4):379-382.
[2] 張?zhí)祆? 馮華君, 徐之海, 等. 基于強邊緣寬度直方圖的圖像清晰度指標[J]. 浙江大學學報(工學版), 2014(2):312-320.
ZHANG T Y, FENG H J, XU Z H, et al. Sharpness metric based on histogram strong edge width[J].JournalofZhejiangUniversity(EngineeringScience),2014(2): 312-320.
[3] WEE C Y, PARAMESRAN R. Image sharpness measure using eigenvalues[C]//IEEEInternationalConferenceonSignalProcessing.Beijing:IEEE, 2008:840-843.
[4] MARICHAL X, MA W Y, ZHANG H J. Blur determination in the compressed domain using DCT information[C]//IEEEInternationalConferenceonImageProcessing. Kobe: IEEE, 1999:386-390.
[5] WANG C, BLEI D, LI F F. Simultaneous image classification and annotation[C]//ComputerVisionandPatternRecognition. Miami: IEEE, 2009:1903-1910.
[6] SIFRE L.Rigid-MotionScatteringforImageClassification[D]. Palaiseau:Ecole Polytechnique, 2014.
[7] SHEIKH H R, SABIR M F, BOVIK A C. A statistical evaluation of recent full reference image quality assessment algorithms[J].IEEETransactionsonImageProcessing, 2006, 15(11):3440-3451.
[8] FERZLI R, KARAM L J. A no-reference objective image sharpness metric based on the notion of just noticeable blur (JNB)[J].IEEETransactionsonImageProcessing, 2009, 18(4):717-728.
[9] NARVEKAR N D, KARAM L J. A no-reference image blur metric based on the cumulative probability of blur detection (CPBD)[J].IEEETransactionsonImageProcessing, 2011, 20(9):2678-2683.
[10] VU C T, PHAN T D, CHANDLER D M. S3 : A Spectral and spatial measure of local perceived sharpness in natural images[J].IEEETransactionsonImageProcessing, 2012, 21(3):934-945.
[11] HASSEN R, WANG Z, SALAMA M M A. Image sharpness assessment based on local phase coherence[J].IEEETransactionsonImageProcessing, 2013, 22(7): 2798-2810.
[12] BAHRAMI K, KOT A C. A fast approach for no-reference image sharpness assessment based on maximum local variation[J].IEEESignalProcessingLetters, 2014, 21(6):751-755.
[13] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagenet classification with deep convolutional neural networks[C]//InternationalConferenceonNeuralInformationProcessingSystems. USA: Curran Associates Inc, 2012: 1097-1105.
[14] SZEGEDY C, LIU W, JIA Y, et al. Going deeper with convolutions[C]//ComputerVisionandPatternRecognition. Boston:IEEE, 2015:1-9.