人臉檢測中眼睛定位算法研究論文

時間:2022-10-11 10:59:00

導(dǎo)語:人臉檢測中眼睛定位算法研究論文一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

人臉檢測中眼睛定位算法研究論文

摘要眼睛是一個在人臉檢測中極為重要的人臉特征,因此一種快速可靠的精確定位眼睛的算法對許多實際的應(yīng)用是十分重要的。本文分析了幾種常用的眼睛定位算法,并提出了一種基于膚色信息、人臉面部幾何特征和人眼灰度信息的算法。算法采用由粗到細的檢測策略,先對AnilK.Jain的Cb、Cr橢圓聚類方法進行了改進,用改進的算法進行膚色提取,經(jīng)過膚色區(qū)域的分析,對人臉區(qū)域進行預(yù)檢測,然后結(jié)合人眼幾何特征進行初步定位,再利用人眼的灰度信息進行精確定位。該算法定位效率高,并對背景、尺寸等細節(jié)具有很好的適應(yīng)性,在人臉實時檢測系統(tǒng)中具有很好的應(yīng)用價值。

關(guān)鍵詞眼睛定位;膚色提取;幾何特征;復(fù)雜度

1引言

雙眼是人臉的突出特征,它們在人臉中占據(jù)比較固定的位置,雙眼間的距離刻畫了人臉的大小,是人臉識別中尺度歸一化的依據(jù)。因此雙眼的精確定位成為人臉識別前處理階段非常關(guān)鍵的一步,絕大部分的人臉識別算法都強烈地依賴于雙眼的準確定位。只要人眼被精確定位,則臉部其他特征,如眉、鼻、嘴等,可由潛在的分布關(guān)系比較準確地定位。人臉可以較好地歸一化,預(yù)處理的效果也更明顯,同時也可提高識別速度和降低識別算法的復(fù)雜度。

正因為眼睛定位在人臉識別中具有如此重要的地位,于是人們研究各種算法來實現(xiàn)眼睛定位,主要可以分為以下幾類:霍夫變換法、變形模板法、邊緣特征分析法和對稱變換法等,本文結(jié)合人臉的膚色和幾何特征以及人眼的灰度信息提出了一種快速、穩(wěn)定的人眼定位算法。

2常用的幾種眼睛定位算法

(1)霍夫變換法

假設(shè)經(jīng)預(yù)處理已經(jīng)得到包含眼球的圖像Ep,為了節(jié)省檢測眼球的時間并避免鏡片反光點邊緣產(chǎn)生的干擾,先用小灰度聚類法粗定眼球中心點,以此縮小檢測范圍,聚類的過程是將圖像Ep中灰度值最小的n個像素,按列遞增的順序排序,若相鄰的列數(shù)差值都未超過預(yù)先設(shè)定的門限T1,說明只有一個聚類中心,求出這些像素行列的平均值就是要找的眼球中心點;若超過了門限T1,說明這n個像素可以聚成兩類,對左眼,因為陰影、鏡腳集中在左邊,所以取右邊那類的平均值;對右眼,則取左邊那類的平均值;n的選擇可根據(jù)圖像Ep的總像素數(shù)目及眼球占圖像的大致百分比決定。

在用霍夫變換檢測眼球前,先用Canny算法提取邊緣。對于比較細長的眼睛,由于眼球的上半部分較多地被眼皮覆蓋,所以改用檢測下半圓,這樣更可靠且省時。設(shè)圖像空間為(i,j),i和j分別表示行和列,三維變換空間為(ie,je,R),其中ie、je分別代表眼球圓心的行和列,R為半徑。下半圓表達式為:

(1)

對于變換空間的每一個坐標點(ie,je,R),在圖像空間都對應(yīng)一個半圓,在這個半圓上存在的邊緣點數(shù)就是變換空間上坐標點(ie,je,R)對應(yīng)的值。變換空間上的峰值點坐標即為所求的眼球半圓參數(shù)。實驗證明,霍夫變換確實具有抗干擾能力強的優(yōu)點。當眼球與眼白的對比度較低時,提取出來的邊緣是斷裂或不很規(guī)則的,即使如此,仍能根據(jù)變換空間中的峰值點準確地定位眼球圓心[2]。

(2)變形模板法

模板匹配法主要是模板的選擇,根據(jù)所選模板的維數(shù)可分為二維可變形模板和三維可變形模板。圖1為二維簡單眼睛模板,由于人臉的旋轉(zhuǎn)角度是任意的,當旋轉(zhuǎn)角度比較大時,其中一部分眼白就會看不見,所以為了適應(yīng)人臉向兩側(cè)作較大角度的旋轉(zhuǎn),就增加了兩個單眼白的簡單眼睛模板,當垂直旋轉(zhuǎn)角度大于30°時,就使用僅有左眼白的簡單眼睛模板,如圖1a所示,當旋轉(zhuǎn)角度大于-30°時,就使用僅有右眼白的簡單眼睛模板,如圖1b所示,若旋轉(zhuǎn)角度介于-30°和30°之間,就使用正常的雙眼白簡單眼睛模板,如圖1c所示。

圖1眼睛的變形模板

簡單二維眼睛模板可以用如下數(shù)學(xué)形式表示:

(2)

在進行眼睛定位時,不斷改變簡單眼睛模板的尺寸參數(shù)S和眼球中心位置參數(shù)(x,y),當模板與人臉圖像取得最佳匹配時的對應(yīng)的尺度S就是眼睛的大小,中心位置(x,y)就是眼睛在人臉圖像中的位置。匹配時采用的能量函數(shù)與三維可變形模板中的能量函數(shù)類似。

三維可變形眼睛模板的生成源于人臉合成時用到的一般三維人臉模型。在一般三維人臉模型中,把眼睛特征點分截取出來,作為可變形眼睛模板的基本點。三維可變形眼睛模板是由10個基本三維點構(gòu)成的,如圖2所示,其中外部8個點組成了上、下眼瞼,內(nèi)部2個點,決定眼球的所有邊界,其余的眼瞼三維點是由外部8個基本點線性插值得來的,而眼球上的三維點是通過內(nèi)部2點構(gòu)成的空間來定的。

圖2三維眼睛模板

三維可變形眼睛模板可以用以下的數(shù)學(xué)形式來表示:

(3)

其中,參數(shù)X=(x1,x2,x3…,y1,y2,y3,…,z1,z2,z3,…)是由10個三維基本點的坐標組成,S表示三維可變形眼睛模板的尺度大小,θ表示眼睛模板的垂直旋轉(zhuǎn)角度,表示眼球的中心,也是整個三維眼睛模板的中心坐標。眼睛模板的可變形性就體現(xiàn)在不僅模型的尺度S、角度θ和眼球的中心是可變化的,而且眼睛模板的形狀參數(shù)X也是可變化的。當所有參數(shù)都進行變化時,將產(chǎn)生各種各樣的三維眼睛模板。在模板匹配時,需要把這些三維模板影射成如圖3所示的二維眼睛映射模板,然后針對這些二維眼睛模板定義相應(yīng)的能量函數(shù),用最小值搜索算法求得最佳匹配。此時所對應(yīng)的眼睛模板坐標就是需要求的眼球中心。

圖.3三維眼睛模型在不同旋轉(zhuǎn)角度下的二維映射

(3)邊緣特征分析法

此算法所處理的圖像為單人灰度圖像,是利用圖像的垂直灰度投影曲線,根據(jù)凸峰寬度確定人臉的左右邊界,然后利用人臉區(qū)域的水平灰度投影曲線確定頭頂及鼻子中部形成的上下邊界。利用預(yù)測法先確定人眼在眉眼區(qū)域的大概位置,通過檢測眉眼部位的邊緣及邊緣分組,確定雙眼的坐標位置。

觀察不同單人臉圖像的垂直灰度投影曲線,可以發(fā)現(xiàn)人臉所在區(qū)域?qū)⑹勾怪被叶韧队扒€形成一個具有一定寬度的凸峰。這個凸峰的左右邊界大致代表了人臉的左右邊界。當人臉的左右邊界確定之后,取左右邊界之間的人臉區(qū)域作為研究對象,作該圖像的水平灰度投影曲線,觀察人臉區(qū)域圖像的水平投影曲線可以發(fā)現(xiàn),此曲線的第一個極小值點對應(yīng)人的頭頂,因為頭發(fā)的低灰度產(chǎn)生了水平投影曲線的低谷,而曲線的最大值點和次最大值點分別對應(yīng)人的額頭部位和人的鼻中部,這樣就可以輕易地求得人眼所處的大致水平位置(如圖4所示)。

在邊緣檢測前先對眉眼區(qū)域進行去噪、增強處理,使圖像平滑,這是保證下面邊緣檢測獲得較好效果的關(guān)鍵步驟。然后用Canny算子求出眉眼區(qū)域的邊緣圖像[4],求解時閾值取得較高,使得邊緣點僅由眉毛和眼睛的強邊緣以及瞳孔產(chǎn)生的強邊緣組成,而不會包含由鼻子的輪廓產(chǎn)生的弱邊緣。隨后將邊緣點進行分組,可以得到幾組分離的邊緣,其中位于下面的兩組分別為左右兩眼產(chǎn)生的邊緣,取這兩個邊緣組的中心作為人眼的中心。邊緣分組算法中,將分別包含每個邊緣分組的最小矩形作為人眼檢出,最先檢出的兩個分組分別對應(yīng)左眼和右眼。當出現(xiàn)兩個分組后算法立即結(jié)束,提高了執(zhí)行效率。

(a)原圖像

(b)在水平方向上的投影

(c)在垂直方向上的投影

圖4水平方向和垂直方向的投影結(jié)果示意圖

該算法的優(yōu)勢在于首先通過灰度投影曲線確定眉眼區(qū)域,使數(shù)據(jù)量大大減少,然后在有效的邊緣檢測之后,使用了高效的邊緣分組策略,在保證正確率的基礎(chǔ)上,提高了算法速度。此算法的定位錯誤出現(xiàn)在頭部傾斜度過大,以及側(cè)光太強,還有頭部在圖像中所占區(qū)域過小的情況。

(4)對稱變換法

在計算機視覺研究中,對稱性被認為是物體的基本性質(zhì)之一,通常在將物體從背景中分割出來后,用來簡化物體形狀的描述,或物體的近似。目前研究最多的是點對稱(也叫中心對稱)和軸對稱,對人臉而言,眼睛、鼻子、嘴巴等都有很弱的點對稱性,廣義對稱變換正是用來描述物體的點對稱。文獻[3]利用廣義對稱變換定位人眼進而提取臉部特征,文獻[4]在廣義對稱變換的基礎(chǔ)上,定義了一種方向?qū)ΨQ變換DST(DirectionalSymmetryTransform),用于人眼的精確定位。以上的對稱變換利用了人眼的中心強對稱和臉部特征的生理幾何分布,對人臉偏轉(zhuǎn)、臉部表情變化、光照變化等因素的左右不敏感,因而具有很好的魯棒性。但是,以上對稱變換的計算需要在大范圍的尺度上進行,計算量很大,而且,由于只是描述了各點的局部對稱性,當它用于人眼的定位時產(chǎn)生的候選點較多,不太利于眼睛的精確定位。

結(jié)合廣義對稱變化和方向?qū)ΨQ變換的優(yōu)點,于是有了一種新的對稱變換——離散對稱變換,它不僅具有廣義對稱變換描述物體對稱性大小的特點,而且通過對各點領(lǐng)域的考察,去除那些處于規(guī)則區(qū)域外的點,可大大降低計算量,實現(xiàn)眼睛定位的快速算法。廣義對稱變換把圖像中的所有像素點同等對待,每個像素點都計算其對稱值。事實上,在圖像中物體的單一背景區(qū)域中,大面積的灰度均勻區(qū)域上的像素點在一定的尺度范圍內(nèi)不具有明顯意義的對稱性,所以就不必計算它的對稱值,而這樣的像素點在人臉圖像中占了很大一部分,如頭發(fā)、臉部除眼、嘴等特征區(qū)域之外的區(qū)域及部分身體區(qū)域。眼、嘴、鼻子等特征區(qū)域在大于其輪廓的范圍內(nèi)灰度有變化,這樣的區(qū)域我們把它稱為灰度不均勻區(qū)。離散對稱變換以減少計算量為出發(fā)點,在計算對稱之前加入一個對圖像灰度不均勻區(qū)域的檢測步驟以減少計算量,然后定義了一個與廣義對稱變化相似的對稱算子來計算點對稱。

離散對稱變換實際上可看成一種非線形濾波,由于對每個像素點都進行相同的領(lǐng)域處理,適合于并行處理,在定位圓形物體圓心時,算子領(lǐng)域采用圓環(huán)。通過圖像的離散對稱變換后,眼睛中心點附近像素的對稱值一般都處在對稱值最大的前四、五位,對具有強對稱值的候選點,采用兩條簡單的規(guī)則進行篩選。規(guī)則(1):鄰近像素合并,一般選取對稱值內(nèi)最大的前10位候選點,將其中位置相鄰的候選點合并到它們中對稱值最大的像素處;規(guī)則(2):幾何約束判別,對經(jīng)過規(guī)則(1)篩選后的候選點,利用眼在臉部的幾何分布性質(zhì)進一步篩選,取基本符合眼睛分布規(guī)律的兩點作為最終的定位雙眼結(jié)果。

3基于膚色、幾何特征和灰度信息的人眼定位

根據(jù)人眼灰度變化非常明顯這一顯著特點,本文提出的基于膚色、幾何特征和灰度信息的人眼定位算法主要由以下幾步組成。

(1)膚色提取

膚色是人臉的重要信息,不依賴于面部的細節(jié)特征,對于旋轉(zhuǎn)、表情等變化情況都能適用,具有相對的穩(wěn)定性并且和大多數(shù)背景物體的顏色相區(qū)別。AnilK.Jain曾專門統(tǒng)計研究了皮膚的色彩模型,他提出的方法屬于色彩空間中的聚類模型,這一類膚色模型的建立要選取一種合適的色彩空間。文獻

[1]采用非線形分段膚色分割得到膚色區(qū)域在CbCr空間中近似于橢圓,可用如下公式表示:

(5)

a=25.39,b=14.03,ecx=1.60,ecy=2.41,

θ=2.53,cx=109.38,cy=152.02,

若大于1則不是膚色,否則為膚色。

AnilK.Jain的Cb、Cr橢圓聚類方法膚色分割效果較好,但是對于亮度較低的區(qū)域容易誤判為膚色,對于亮度較高的膚色區(qū)域會誤判為非膚色區(qū)域。本文針對AnilK.Jain的Cb、Cr橢圓聚類方法膚色分割的缺點,首先對亮度信息進行分段判斷,這樣克服了在高亮度區(qū)域和亮度較低的區(qū)域中存在的不足。通過多次實驗統(tǒng)計表明,對于亮度小于80的非膚色像素點會誤判為膚色點,比如眼睛區(qū)域等。對與大于230的膚色像素點會誤判為非膚色點(如圖1所示)。因此采用如下分段方法:

①對于亮度低于80像素點直接判決為非膚色像素點。

②對于亮度在80—230之間的像素點采用膚色的橢圓聚類方法

③對于亮度大于230的像素點進行判決時,將膚色的聚類時的橢圓的長短軸同時擴大為原來的1.1倍

(a)原圖像(b)AnilK·Jain的方法(c)本文的方法

圖5膚色提取示意圖

圖5.c與圖5.b比較,在人眼區(qū)域此圖有更好更細致的檢測效果。實驗結(jié)果表明本文的方法較之其它的膚色提取方法在人的五官部分有更好更細致的檢測效果。

(2)膚色區(qū)域分析

因為人臉膚色建模是根據(jù)皮膚顏色來確定的,有可能把脖子、肩膀、手臂等膚色區(qū)域或是與膚色相近的其他物體也包括了進去,所以得到的只能是人臉的大致區(qū)域,需要進一步通過各種算法將那些非人臉區(qū)域盡可能都去除掉。為了排除非人臉區(qū)域,依據(jù)人臉區(qū)域的空間特征,本文選取了連通區(qū)域像素數(shù)、區(qū)域填充率和長寬比判斷因素。

●連通區(qū)域像素數(shù)

因為人臉有一定的大小,通常人臉小于19*19則無法識別,因此對于n值小于300的塊我們認為是非人臉將其值置為背景是合理的。

●區(qū)域填充率

對于二值化之后的一個連通區(qū)域,系統(tǒng)中使用該區(qū)域的像素數(shù)與外接矩形的像素數(shù)的比值來表征這個區(qū)域的空間屬性。假設(shè)S’是外接矩形的像素數(shù),S為目標區(qū)域的像素數(shù),若0.5<S/S’<0.9,就暫時保留該區(qū)域,否則就將其刪除。

●長寬比

通過對人臉特征的統(tǒng)計,人臉的長寬比應(yīng)該大致在這樣的一個范圍內(nèi):0.6<人臉長寬比<1.5。考慮到人臉區(qū)域和脖子區(qū)域大都是連通的,所以實際處理中將比例修正到如下的范圍內(nèi):0.6<人臉長寬比<2。

通過以上判斷規(guī)則,得到的人臉候選區(qū)域結(jié)果(如圖6(a)所示)。

(3)形態(tài)學(xué)圖像處理

膚色提取后,圖像中仍然含有一些噪聲(主要在背景中)。噪聲的存在顯然會使后續(xù)的操作更為復(fù)雜。為了既能把圖像中的噪聲點去掉又能保持圖像有用信息不發(fā)生變化,本文使用形態(tài)學(xué)濾波器對人臉候選區(qū)域進行除噪。通過形態(tài)學(xué)處理不但可以過濾由于噪音或者其他原因引起的一些較小的不可能為人臉的類膚色區(qū)域,減少候選區(qū)域和提高檢測速度,而且可以填補膚色區(qū)域內(nèi)的較小空洞,防止這些空洞被誤認為是人臉器官所造成,為后續(xù)檢測區(qū)域降低了誤判的可能性。

(a)標記人臉侯選區(qū)域(b)形態(tài)學(xué)濾波后的圖像(c)人眼粗定位結(jié)果

圖6眼睛粗定位示意圖

(4)基于幾何規(guī)則的人眼粗檢測

經(jīng)過以上步驟處理,系統(tǒng)基本上可以得到人臉器官的色塊圖,而各個色塊的中心點是眼睛的候選點。通過人臉面部的幾何特征規(guī)則,可以迅速粗略檢測出人眼,其結(jié)果如圖6(c)所示。規(guī)則如下:

①在候選人臉區(qū)域上面的1/2區(qū)域內(nèi),搜索孤立黑塊,并求出各個黑塊的中心點坐標。在求中心點坐標時,本文使用公式(6)計算黑塊像素點的平均坐標點作為中心點坐標,并將中心點的坐標按x坐標值由小到大進行排序。Bm×2是黑塊像素點的坐標矩陣,一共m行,B(i,1)是黑塊像素點的橫坐標,B(i,2)是黑塊像素點的縱坐標。

(6)

②雙眼中心距應(yīng)在某個范圍之內(nèi)(如30~100個像素距離)。

③雙眼中心點的連線與x軸正向夾角應(yīng)在一定范圍之內(nèi)(如-π/18~π/18)。

在上述過程中,已經(jīng)初步確定了候選眼睛對。但由于眉毛在眼睛的上方,若只依據(jù)上述規(guī)則定位眼睛,我們常常會碰到以下兩種情況:①檢測到眼睛對和眉毛對;②檢測到眼睛對以及眼睛-眉毛對。然而,人眼既具有灰度值較低的區(qū)域,同時也具有灰度值較高的區(qū)域,且灰度值具有突變性。因此,本文就根據(jù)人眼灰度變化非常明顯這一特征,通過計算候選眼睛對的灰度復(fù)雜度來進行精確定位。

假設(shè)檢測出的圖像塊,每塊總共m行n列,則圖像塊的復(fù)雜度Com(k)的計算公式由(7)定義。

(7)

其中,Bi,j為圖像塊第i列第j行像素點的灰度值。

此圖像塊的復(fù)雜度公式Com(k)計算了圖像塊灰度值的縱向一階加權(quán)導(dǎo)數(shù),min(j,m-j)即為權(quán),離圖像中心越近導(dǎo)數(shù)的權(quán)越大,橫向坐標沒有加權(quán)。實驗證明,這種定義符合人臉特征器官復(fù)雜度的計算。類似的也可以有橫向一階加權(quán)導(dǎo)數(shù)。但是通過實驗發(fā)現(xiàn)人眼的縱向一階加權(quán)導(dǎo)數(shù)大,所以我們采用圖像塊灰度值的一階縱向加權(quán)導(dǎo)數(shù)。

(a)相應(yīng)的灰度圖像(b)人眼精確定位結(jié)果

圖7眼睛精確定位示意圖

計算候選眼睛塊的圖像復(fù)雜度,根據(jù)人眼灰度變化非常明顯這一特征,找出復(fù)雜度最大的兩小塊,即為要找的眼睛塊(如圖7(b)所示)。

4實驗結(jié)果分析

根據(jù)上面介紹的5個步驟,對眼睛的定位實驗結(jié)果如圖8所示。

(a)原圖像(b)膚色提取后的圖像(c)標記人臉候選區(qū)域

(d)形態(tài)學(xué)濾波結(jié)果(e)人眼粗定位結(jié)果(f)人眼精確定位結(jié)果

圖8基于膚色、幾何特征和灰度信息的人眼定位結(jié)果示意圖

通過實驗結(jié)果可得到如下結(jié)論:

①采用由粗到精的檢測策略,先通過膚色特征對人臉區(qū)域進行預(yù)選,再用幾何特征進行人眼粗定位,具有很高的檢測速度;本文針對AnilK·Jain的Cb、Cr橢圓聚類法的缺點,增加了亮度信息的判斷,實驗證明,該方法能很好的提取人臉面部的眼睛、嘴巴等;

②經(jīng)過幾何特征進行粗定位后,再充分利用人眼灰度變化明顯這一特征,計算候選眼睛對的灰度復(fù)雜度,對眼睛進行精確定位;

③本檢測算法具有很強的魯棒性,受背景環(huán)境、尺寸大小影響小。

5小結(jié)

一般的眼睛定位算法分為兩個步驟:(1)粗定位。在精確定位眼球中心前一般要找到眼睛的大致位置,常見的方法有:對稱性法、邊緣點積分投影曲線極值位置判斷法、神經(jīng)網(wǎng)絡(luò)法、多分辨率的馬賽克圖法等。(2)眼球的精確定位。常用的方法有:基于霍夫變換、幾何及對稱性檢測、彈性模板等等。每個算法都有自己的優(yōu)點和缺點也即局限性,如計算量太大、計算速度慢、算法不容易實現(xiàn)或正確定位率不高等。主要原因是由于人臉作為一個非鋼體,在信息輸入時存在尺度、位置、姿態(tài)變化問題,很難做到面面俱到,十全十美的算法。

本文提出的基于膚色、幾何特征和灰度信息的人眼定位算法有效的平衡了檢測速度和穩(wěn)定性之間的矛盾,實驗證明,該算法定位效率高,并對背景、尺寸等細節(jié)具有很好的適應(yīng)性,在人臉實時檢測系統(tǒng)中具有很好的應(yīng)用價值。

參考文獻

[1]Rein-LienHsuandAnilK.Jain,FaceDetectioninColorImages[J]IEEETrans.PatternAnalysisandMachineIntelligence,may2002

[2]王磊,莫玉龍.基于霍夫變換和眼睛彈性模板的眼睛特征提取[J].紅外與毫米波學(xué)報,1999,2(18):53-60

[3]CaiJ.GoshtasbyA..Detectingfaceincolorimages.ImageandVisionComputing[J],1999,18(1):63-75

[4]CannyJ.AComputationalApproachtoEdgeDetection[J].IEEETransPatternAnal&MachIntell,1986,8(6):619-698

[5]于威威,滕曉龍等.復(fù)雜背景下人眼定位及人臉檢測.計算機仿真[J],2004第21卷,第7期

[6]陳楊,陳榮娟等編著.MATLAB6.X圖形編程與圖像處理[M].西安:西安電子科技大學(xué)出版社

[7]朱夏君.人臉識別的研究及眼睛定位算法[C].碩士學(xué)位論文,浙江工業(yè)大學(xué),2004