俞文靜,張明軍,李梓瑞,賴(lài)冬宜
(廣州大學(xué)華軟軟件學(xué)院,廣州510990)
人臉檢測(cè)技術(shù)近年來(lái)得到了高速的發(fā)展[1],尤其基于視頻流的人臉檢測(cè)技術(shù),是圖像處理領(lǐng)域最成熟、應(yīng)用最廣的一項(xiàng)技術(shù),相應(yīng)的思想、算法、框架和技術(shù)都比較完備和成熟。然而現(xiàn)實(shí)應(yīng)用中,由于物理設(shè)備成本高、易受各種成像環(huán)境限制等因素影響,大多數(shù)字成像系統(tǒng)獲得的圖像分辨率并不高,尤其遠(yuǎn)距離小人臉、多人臉的精準(zhǔn)檢測(cè)仍是人臉檢測(cè)領(lǐng)域的一個(gè)難點(diǎn),遠(yuǎn)距離拍攝,在無(wú)法獲得人臉特征的情況下,如何解決在拍攝得到的待識(shí)別圖像中進(jìn)行人臉檢測(cè)的難度大、誤檢率高的問(wèn)題已成為人臉檢測(cè)研究領(lǐng)域的一個(gè)關(guān)鍵問(wèn)題。超分辨率圖像重建[2]就是利用同一場(chǎng)景下的一幅或多幅具有互補(bǔ)信息的模糊、變形以及噪聲污染的低分辨率圖像來(lái)重建一副高分辨率圖像。其目的是彌補(bǔ)硬件不足,從軟件角度提高圖像分辨率及質(zhì)量,基于超分辨率技術(shù)的特點(diǎn),將該技術(shù)應(yīng)用到遠(yuǎn)距離小人臉檢測(cè)中,可以將無(wú)法獲得人臉特征的小人臉圖像進(jìn)行超分辨率重建與恢復(fù)預(yù)處理后再進(jìn)行人臉檢測(cè)與識(shí)別。
本文在建立基于圖像超分辨率恢復(fù)的遠(yuǎn)距離小人臉、多人臉檢測(cè)模型的基礎(chǔ)上,結(jié)合人臉圖像中的結(jié)構(gòu)信息,以及傳統(tǒng)的凸集投影(Projection Onto Convex Sets,POCS)算法只能得到低對(duì)比度、低信噪比、邊緣模糊的圖像特點(diǎn),設(shè)計(jì)了基于人臉特征增強(qiáng)的改進(jìn)POCS小人臉超分辨率恢復(fù)算法,仿真實(shí)驗(yàn)表明經(jīng)過(guò)超分辨率放大恢復(fù)后的圖像應(yīng)用Dlib人臉檢測(cè)模型進(jìn)行人臉檢測(cè),可以大大提高小人臉的檢測(cè)精確度。
本文針對(duì)在實(shí)際應(yīng)用中小人臉檢測(cè)難度大、誤檢率高的問(wèn)題[5],結(jié)合圖像超分辨率恢復(fù)以及人臉圖像結(jié)構(gòu)信息特點(diǎn),建立基于圖像超分辨率恢復(fù)的遠(yuǎn)距離小人臉、多人臉檢測(cè)模型:將遠(yuǎn)距離拍攝的無(wú)法獲得人臉特征并檢測(cè)不到的小人臉、多人臉視頻圖像進(jìn)行人臉圖像增強(qiáng)預(yù)處理,包括直方圖均衡化、圖像降噪和邊緣增強(qiáng)處理,再將處理后的圖像作為POCS超分辨率圖像重建的輸入并進(jìn)行圖像超分辨率處理,最后將處理后的圖像應(yīng)用Dlib模型進(jìn)行人臉檢測(cè),并得到檢測(cè)結(jié)果。
圖1 小人臉檢測(cè)模型圖
為了從低分辨率小人臉圖像中更好地獲取各個(gè)小人臉的結(jié)構(gòu)信息,本文算法先對(duì)低分辨率圖像進(jìn)行圖像增強(qiáng)預(yù)處理,主要通過(guò)直方圖均衡化方法調(diào)節(jié)圖像因光照、模糊等原因?qū)D像的干擾,通過(guò)圖像降噪和邊緣檢測(cè)優(yōu)化加強(qiáng)人臉結(jié)構(gòu)信息表達(dá)。
直方圖均衡化[3]通過(guò)將原始圖像中分布不均衡的灰度分量進(jìn)行調(diào)整,使灰度值在整個(gè)直方圖中近于均勻分布,可使圖像的灰度動(dòng)態(tài)范圍和明暗對(duì)比度得到提高,圖像的細(xì)節(jié)得到增強(qiáng)。
對(duì)于灰度級(jí)范圍為[ ]0,L-1的數(shù)字圖像,其直方圖可表示為一個(gè)離散函數(shù):
其中nK是第k級(jí)灰度值rK的像素個(gè)數(shù)。也就是說(shuō),橫坐標(biāo)代表了灰度值rK,縱坐標(biāo)代表了該灰度級(jí)的個(gè)數(shù)nK。實(shí)際應(yīng)用中,通常要先對(duì)直方圖進(jìn)行歸一化,假設(shè)灰度圖像的維數(shù)是M×N,MN表示圖像的像素總數(shù),則歸一化直方圖可以表示為:
本文圖像降噪采用均值濾波,先定義一個(gè)固定大小和參數(shù)的濾波器模板,該模板通過(guò)鄰域平均法計(jì)算中心像素點(diǎn),對(duì)整幅圖像進(jìn)行濾波,以達(dá)到圖像降噪的效果。本文使用算數(shù)均值濾波器。令Sxy表示中心點(diǎn)在(x,y)處,大小為m×n的濾波器窗口。算術(shù)均值濾波器計(jì)算中心點(diǎn)領(lǐng)域像素均值并賦給中心點(diǎn)的過(guò)程可以表示為:
邊緣檢測(cè)通過(guò)檢測(cè)圖像中亮度變化梯度大的像素點(diǎn)識(shí)別圖像的邊緣部分,可大幅度地減少原始圖像中的無(wú)效數(shù)據(jù)量,保留了圖像重要的結(jié)構(gòu)屬性。本文選擇Sobel邊緣檢測(cè)算子,它包含兩組3×3的矩陣,分別為橫向及縱向模板,可分別檢測(cè)圖像的垂直邊緣和水平邊緣。在人臉圖像中,人臉邊緣及五官結(jié)構(gòu)一般都與皮膚像素值不同,并且在人臉檢測(cè)中并不關(guān)心皮膚的紋理特征。Sobel算子恰好對(duì)細(xì)紋理不敏感,因此可大幅度減少與人臉特征無(wú)關(guān)的信息,這大大減少了之后的算法數(shù)據(jù)信息量。
本文將以下兩個(gè)模板(見(jiàn)公式(4)-(5))與圖像作平面卷積來(lái)檢測(cè)圖像邊緣,就可以分別獲得圖像橫向及縱向的亮度差分近似值。
檢測(cè)水平邊沿橫向模板Gx:
檢測(cè)垂直邊沿縱向模板Gy:
圖像中每一個(gè)像素點(diǎn)的橫向和縱向梯度近似值的大小可用以下公式來(lái)計(jì)算:
通常,為了提高效率,使用不開(kāi)平方的近似值表示為:
凸集投影法(Projection Onto Convex Sets,POCS)[4-5]是超分辨率重建方法的重要理論方法之一。該方法以其強(qiáng)大的先驗(yàn)知識(shí)包含能力,成為圖像復(fù)原領(lǐng)域中的一種主要方法,并得到了很好的應(yīng)用。其基本原理是:把高分辨率圖像的每一個(gè)約束條件定義為向量空間的一個(gè)凸集合,所求高分辨率圖像包含于這些集合中,取得這些集合的交集,就可得到超分辨率圖像的解?;綪OCS算法的流程描述為:先利用插值預(yù)估超分辨率圖像,也就是建立參考幀,然后根據(jù)觀察圖像和參考幀進(jìn)行圖像配準(zhǔn),從而指導(dǎo)圖像修正,直到可接受的重建圖像。
本文為了更好地突出人臉圖像的結(jié)構(gòu)特點(diǎn),對(duì)基本的POCS算法進(jìn)行了改進(jìn),將原始小人臉圖像增強(qiáng)處理,更加能夠突出人臉結(jié)構(gòu)特征,再將該圖像作為POCS算法的低分辨圖像的輸入,其次,應(yīng)用雙三次樣條插值放大,并利用中值濾波進(jìn)行優(yōu)化得到高分辨圖像初始值Y1,最后本文采用最小絕對(duì)差分配準(zhǔn)則的塊匹配算法進(jìn)行圖像配準(zhǔn),將觀測(cè)圖像YK與Y1進(jìn)行配準(zhǔn),當(dāng)圖像配準(zhǔn)不滿(mǎn)足要求時(shí),進(jìn)行圖像賦值投影和矯正,直到符合迭代要求,就停止迭代,輸出結(jié)果。改進(jìn)的POCS算法流程如圖2所示。
圖2 本文改進(jìn)POCS算法流程圖
本文算法[6]中利用待采樣點(diǎn)周?chē)?6個(gè)點(diǎn)的灰度值作三次插值,不僅考慮到4個(gè)直接相鄰點(diǎn)的灰度影響,而且考慮到各鄰點(diǎn)間灰度值變化率的影響,可以得到更接近高分辨率圖像的放大效果,式(11)為雙三次插值公式,其中A、B、C均為矩陣,分別如式(9)-(11)所示,且式(9)、(11)中的數(shù)學(xué)表達(dá)函數(shù)S(x)如式(12)所示,在優(yōu)化插值的基礎(chǔ)上,修改像素間的偏差距離,能使圖像最大地保持邊緣細(xì)節(jié)信息;
本文實(shí)驗(yàn)重點(diǎn)研究了小人臉圖像中的人臉檢測(cè)問(wèn)題,實(shí)驗(yàn)物理環(huán)境:64位的Windows 10操作系統(tǒng)PC一臺(tái),8GB內(nèi)存,CPU為Intel Core i5-6300HQ,GPU為NVIDIA GeForce GTX 950M,主要軟件環(huán)境有Python 3.6版本、OpenCV 3.1版本、TensorFlow 2.0版本、NVID?IA顯卡加速庫(kù)CUDA 10.0版本,人臉檢測(cè)算法采用的是Dlib模型人臉檢測(cè)算法。
本文試驗(yàn)中,人臉圖像增強(qiáng)部分所用到的算法均源于Python的自帶模型庫(kù)。小人臉圖像依次經(jīng)過(guò)了直方圖均衡化、均值濾波和邊緣增強(qiáng)的處理,以處理后的圖像作為改進(jìn)POCS算法的輸入,對(duì)圖像進(jìn)行了重建。實(shí)驗(yàn)選擇了一組具有部分遮擋的集體畢業(yè)照錄像中的幀作為原圖輸入,原始圖像大小650×340像素,總?cè)四様?shù)為132,分別采用三次樣條插值算法、基本POCS算法以及本文改進(jìn)的算法分別進(jìn)行2倍、4倍大小放大,再利用原圖和三種算法得到的超分辨率圖像分別在Dlib人臉檢測(cè)模型算法中進(jìn)行小人臉檢測(cè),其中4倍檢測(cè)效果分別如下圖3(a)-(d)所示。
圖3 原圖及三種超分辨率圖像小人臉檢測(cè)效果圖
由圖3(a)-(d)中原圖及三種超分辨率圖像小人臉檢測(cè)效果圖可以看出,由于原圖像素較小,在人臉較小的情況下,無(wú)法獲取人臉特征,利用Dlib人臉檢測(cè)模型檢測(cè)不到人臉,因此,本文實(shí)驗(yàn)中分別用三次樣條插值、基本POCS以及本文所提出的改進(jìn)POCS算法進(jìn)行4倍放大后,再進(jìn)行人臉檢測(cè),都可以檢測(cè)到小人臉。此外,實(shí)驗(yàn)進(jìn)一步將原圖根據(jù)三種算法進(jìn)行了2倍重建后人臉檢測(cè)測(cè)試,根據(jù)實(shí)驗(yàn)中的檢測(cè),對(duì)檢測(cè)數(shù)據(jù)進(jìn)行統(tǒng)計(jì),如表1所示。
表1 測(cè)試結(jié)果對(duì)比
由表1的測(cè)試數(shù)據(jù)分析可以看出,通過(guò)三次插值2倍重建的圖像檢測(cè)不到,4倍重建的圖像檢測(cè)率為52.27%,基本POCS算法重建2倍圖像檢測(cè)率為57.58%,而4倍重建圖像檢測(cè)率較高達(dá)到了90.90%,本文提出的POCS算法重建2倍圖像檢測(cè)率為68.94%,而本文改進(jìn)算法的4倍重建檢測(cè)率達(dá)到了93.94%。從對(duì)比結(jié)果可以看出,圖像的超分辨率重建可以有效提高小人臉圖像的人臉檢測(cè)率,并且隨著人臉圖像重建倍數(shù)的增大,檢測(cè)率精準(zhǔn)率越高,本文提出的改進(jìn)算法在與三次樣條插值以及基本的POCS算法的對(duì)比中,可以看出本文的算法在重建倍數(shù)越高的情況下,檢測(cè)率越高,在同等條件下比三次樣條插值以及基本的POCS算法都有更好的表現(xiàn)。
本文結(jié)合傳統(tǒng)圖像增強(qiáng)技術(shù)和圖像超分辨率重建算法,針對(duì)實(shí)際應(yīng)用中視頻流小人臉檢測(cè)難度大、誤檢率高的問(wèn)題,結(jié)合人臉圖像結(jié)構(gòu)信息及特點(diǎn),提出了基于圖像超分辨率的小人臉檢測(cè)模型,并設(shè)計(jì)了應(yīng)用于小人臉精準(zhǔn)檢測(cè)的改進(jìn)POCS圖像超分辨率算法,最后用重建后的圖像進(jìn)行Dlib人臉檢測(cè)模型進(jìn)行人臉檢測(cè)。本文的研究重點(diǎn)有以下幾點(diǎn):
(1)結(jié)合人臉圖像結(jié)構(gòu)信息以及圖像超分辨率恢復(fù)算法的特點(diǎn),提出了基于改進(jìn)圖像超分辨率的小人臉檢測(cè)模型。
(2)設(shè)計(jì)了應(yīng)用于小人臉精準(zhǔn)檢測(cè)的改進(jìn)POCS超分辨率重建算法,該算法首先對(duì)原圖進(jìn)行圖像增強(qiáng)(直方圖均衡化、圖像降噪、邊緣增強(qiáng))處理,以獲取各個(gè)小人臉結(jié)構(gòu)信息,在此基礎(chǔ)上將增強(qiáng)處理后的圖像作為POCS超分辨率算法的基礎(chǔ)幀,并在傳統(tǒng)的POCS算法中利用三次樣條插值和中值濾波進(jìn)行邊緣優(yōu)化超分辨率放大,并不斷與觀測(cè)圖像進(jìn)行配準(zhǔn),進(jìn)行圖像矯正。
(3)將重建后的圖像進(jìn)行Dlib人臉檢測(cè)模型人臉檢測(cè):本文分別采用三次樣條插值算法、基本POCS算法以及本文改進(jìn)的算法分別進(jìn)行2倍、4倍大小重建后人臉檢測(cè),實(shí)驗(yàn)結(jié)果表明本文的超分辨率重建算法可以有效提高小人臉圖像的人臉檢測(cè)率,并且隨著人臉圖像重建倍數(shù)的增大,檢測(cè)率精準(zhǔn)率越高,