摘 要:通過分析在光照變化條件下現有的一些眼睛定位算法的不足,提出一種基于各向異性濾波的人眼定位方法。利用各向異性低通濾波器對輸入圖像進行濾波消除光照的影響,利用多結構形態學開閉運算突出眼睛區域特征,并采用相關系數法獲得眼睛粗定位,最后使用眼睛精確算法校正眼睛的位置。實驗結果表明,該算法對光照變化不敏感,定位準確率更高。
關鍵詞:各向異性濾波; 形態學; 相關系數; 人眼定位
中圖法分類號:TP391
文獻標志碼:A
文章編號:1001-3695(2010)02-0764-03
doi:10.3969/j.issn.1001-3695.2010.02.101
Eye location based on anisotropic filtering
CHENG Zi-hong, PAN Bao-chang, TAN Jian-hui, LIANG Jian, CAO Xiao-jun
(Institute of Digital Image Technology, Faculty of Information Engineering, Guangdong University of Technology, Guangzhou 510006, China)
Abstract:This paper first analyzed the shortages for some eye location algorithms to changes in illumination,proposed a method for human eye location based on the anisotropic filtering.To eliminate the effects of light,made use of the anisotropic low-pass filter to get the input image filtered,and used open and close operator of the multi-structure morphology to highlight the feature of the eye region.Then,got the rough position of the eye by the correlation coefficient method.Finally,corrected eye position by the accurate algorithm.The algorithm to changes in illumination is not sensitive and get higher positioning accuracy in experimental.
Key words: anisotropic filtering; morphology; correlation coefficient; eye location
0 引言
眼睛是人臉上的顯著特征。眼睛的精確定位有利于人臉配準和特征提取,對提高人臉識別正確率有著重要的意義?,F有的眼睛定位的方法有:Reinders等人[1]提出一種基于神經網絡的眼睛定位方法,該方法僅能給出眼睛的大致位置,并不能精確定位眼睛的中心;Wang等人[2]利用地形特征定位眼睛;Zhou等人[3]使用泛化投影函數法(GPF),相對于傳統的積分投影有改進;Park等人[4]提出利用Gabor濾波器和圓形濾波器構成的紋理信息進行眼睛定位,有效但運算復雜;王靜等人[5]提出基于梯度和模板二次匹配的人眼定位方法;張丹丹等人[6]提出一種基于圓檢測的眼睛定位方法。小波作為一種圖像特征提取方法也被用于眼睛定位,Huang等人[7]利用最優小波包提取眼睛特征,并利用徑向基函數分類眼睛與非眼睛區域。Gabor小波還被用來處理眼睛定位中光照變化的問題。還有一些學者將眼睛定位看做是一個典型的模式分類問題,即區分眼睛和非眼睛區域;一些模式分類的方法,如Boosting、SVM 等,也被用于眼睛定位?,F有的眼睛定位方法大多沒有考慮光照的問題,對于光線不均勻的人臉圖像,眼睛的定位正確率通常不高;而且姿勢、表情的劇烈變化會導致眼睛的某些特征缺失;眼睛閉上后眼睛的眼白和瞳孔特征被隱藏;帶上眼鏡,也會對檢測定位造成影響,從而導致利用眼睛水平方向灰度變化特征的眼睛定位算法失效。
針對光照、表情、眼鏡對眼睛定位的影響,本文提出一種基于各向異性濾波和形態濾波的眼睛定位算法。首先提出一種各向異性濾波方法消除人臉圖像的光照影響;然后綜合運
用形態學操作的開閉運算突出眼睛區域特征,并采用相關系數法獲得眼睛粗定位,對眼睛的睜開與否不敏感;最后對粗定位區域進行邊緣檢測和形態學操作,進一步分析得到精確的眼睛中心點。實驗結果表明本文算法能很好地定位眼睛中心位置,且對光照、表情不敏感,戴眼鏡與否不影響。
1 各向異性濾波
光照變化對灰度圖像的識別影響巨大。因為光照變化引起的圖像變化要比因不同人的身份引起的變化更加顯著,眼睛定位存在同樣的問題。消除光照的影響對準確定位眼睛有重要的意義。
1964年Land[8]提出視網膜皮層理論,該理論認為知覺不受照明環境的影響,只與視覺系統對物體的反射性質有關,人眼感知物體的亮度取決于環境的照明和物體表面對入射光的反射。其數學表達式為
L=E×R(1)
其中:E表示入射光;R表示物體的反射性質;L是反射光,也就是照相機拍攝到的圖像。入射光E直接決定了一幅圖像中像素能達到的動態范圍,被認為是圖像L的低頻分量,可以用一個低通濾波器來衡量;反射物體R決定了圖像的內在性質。要得到反射物體R,把公式變換為
R=L/E(2)
低通濾波就可以得到E。單一的低通濾波器濾波效果不理想,各項同性的低通濾波器同樣得不到理想結果。因此,構造各向異性的低通濾波器對原圖像進行濾波,可以描述不同方向
的入射光。
各向異性低通濾波和原圖像的比值圖具有光照不變性,為光照變化下的眼睛定位問題提供了解決方法。首先需要構造各向異性的低通濾波器,用二維的加權高斯函數來實現一次各向異性低通濾波器。濾波平滑算子定義為
Ls=1Kβ(IΦ)G(3)
其中:G為高斯函數;β(IΦ)為權系數且為圖像I的函數;Φ為高斯函數卷積核的作用范圍;K為歸一化系數,滿足
1K∑Φβ( IΦ)G=1(4)
β(IΦ)的作用是根據圖像的灰度改變高斯函數的形狀,根據以下的步驟確定其值。統計核函數作用域內圖像灰度IΦ的均值MΦ與方差DΦ,由方差和均值確定自適應閾值為
T=pMΦ+qDΦ(5)
其中:系數p、q由實驗獲得。閾值T把核函數作用域內的像素分為兩部分N1、N2,分別統計其像素數。設N1部分像素較多,則有
βIΦ(x,y)=0 I(x,y)∈N11 I(x,y)∈N2(6)
則濾器F表示為
F=Gβ(IΦ)(7)
那么濾波器輸出表示為
R(x,y)=SI(x,y)F(x,y)×I(x,y)(8)
其中:SI(x,y)F(x,y)×I(x,y)表示濾波器的結果與原圖像的比值的非線性變換,實驗中取為對數變換,主要作用是抑制比值中過高和過低值。但是實驗中發現,如果F核太小,比值接近于1,圖像的反射信息將會嚴重丟失;如果F核太大,在階梯邊緣附近的區域將會出現光暈效應。因此采用多尺度濾波器,即使用不同的方差高斯核函數。多尺度濾波輸出為
RM(x,y)=∑lu=1WuSI(x,y)Fu(x,y)×I(x,y)(9)
其中:F=Gβ(IΦ),G(x,y,σn)=e-(x2+y2)/σn,式中∑lu=lWu=1l,通常取Wu=1l;σn表示第n個平滑濾波核函數的尺度參數,如果l =3,σ取6、12、18效果較好。圖1~3是去光照處理的實驗結果實例。
可以看出經過各向異性濾波和求比值后,光照的影響已經消除;同時眼睛輪廓的信息很好地保存下來,有利于眼睛定位處理。圖4是不同光照的三幅圖片的原圖和處理結果。
2 數學形態學濾波和粗定位
數學形態學是由一組形態學的代數運算子組成的,膨脹(dilation)和腐蝕(erosion)是數學形態學的兩種基本運算;開(open)、閉(close)運算是形態學的常用操作。設f(x,y)是輸入圖像函數,b(i,j)是結構元素,則定義灰度膨脹函數為
(fb)(x,y)=max0≤i,j≤m-1f(x+i,y+j)+b(i,j) (10)
灰度腐蝕函數為
(fΘb)(x,y)= min0≤i,j≤m-1f(x+i,y+j)-b(i,j) (11)
灰度圖像膨脹運算是在由結構元素確定的區域中選取f+b的最大值,具有邊緣暗細節消除作用,增強亮區域邊緣;腐蝕運算是在由結構元素確定的區域中選取f-b的最小值。輸出圖像效果為:較亮邊緣的灰度值會降低且區域邊緣收縮。
形態學開運算(open)定義為
open(f)=f b=(fΘb)b(12)
形態學閉運算(close)定義為
close(f)=f#8226;b=(fb)Θb(13)
開運算是先腐蝕運算后進行膨脹運算,能減弱局部小塊亮區域;閉運算則先膨脹運算后進行腐蝕運算,能填補局部小塊暗區域。以下定義形態學的高帽變換和低帽變換:
Ht=f(x,y)-open(f(x,y))(14)
Lt=close(f(x,y))-f(x,y)(15)
其中:式(14)代表高帽變換,式(15)代表低帽變換。而眼睛區域既包含眼白這樣的小塊亮區域(峰值部分),又包含瞳孔這樣的小塊暗區域(谷值部分)。為了有效地提取眼睛的完整區域信息,眼睛濾波函數如下:
G(x,y)=Rt(x,y)×h(x,y)(16)
其中h(x,y)為一低通平滑濾波器,本文選擇為5×5的高斯平滑板;而
Rt(x,y)=|Ht(x,y)|+|Lt(x,y)|(17)
式中:|Ht(x,y)|能增強圖中的峰值部分,如圖5所示;|Lt(x,y)|則增強了圖中的谷值部分,如圖6所示;Rt(x,y)是兩者的和,能同時增強峰值和谷值部分;G(x,y)是Rt(x,y)模糊后的結果,如圖7所示。
可以看出G(x,y)中高亮部分對應臉部區域中局部變化突出的眼、嘴部分。其中眼睛區域特征被有效放大、增強。
突出眼睛的特征區域有利于進行圖像二值化。設自適應閾值為
thre=mean(G)+α×[max(G)-mean(G)](18)
其中:α為常數,實驗中取0.1,用thre對眼睛濾波圖G(x,y)進行二值化,得到二值化的眼睛候選區M(x,y)。根據二值化結果,從RM(x,y)中得到候選眼睛對,然后進行相關系數計算。設有N個候選眼,則需要進行(N×(N-1))/2次匹配,運算量較大。眼睛本身有許多約束條件,加入以下先驗知識進行約束:
a)眼睛在臉部上方,且眼睛下方一定距離為平坦的臉頰;兩眼中心距離范圍一定,小于圖片寬度1/3的不是眼睛對。
b)眼睛區域形狀近似于一個縱軸較長的橢圓,運用單只眼睛的橢圓度和外接矩形的寬高比可測量是否為眼睛區域。
c)單只眼睛與外接矩形的面積比測量眼睛區域的緊密度,通過緊密度判斷是否為眼睛區域。
設兩個候選區域中心距離為l,則分別在多尺度輸出RM(x,y)中以兩候選眼為中心取出0.35l×0.70l兩候選眼睛窗區域(要保證候選眼睛區域不超出圖像的邊界),并計算這兩個候選眼睛窗的相關系數。給出的相關系數計算方法為
C=1|Lg-Rg|+A(19)
其中:Lg和Rg分別為左、右候選眼區域的灰度值,A為左、右候選眼的平均灰度值和。對所有候選眼睛對進行運用式計算相關性,其相關系數最高的眼睛對為最終確定的眼睛對。
3 眼睛的精確匹配
為了得到眼睛的精確定位置,需要對粗定位的眼睛對每只眼睛區域進行二次定位。前面的定位已經大體上標志出了眼睛的位置,但是對于人臉識別而言,這是不夠精確的,嚴重的情況下會引起誤差配準災難問題,還需要對眼球的位置作進一步修正和精確定位。眼球最顯著的特征就是灰度值比周圍區域明顯要低,而且眼球具有對稱性特征。假設瞳孔的直徑為d,以粗定位結果為瞳孔的中心,取2d×4d的區域,再選擇該區域中灰度值比較低的一部分像素,然后計算它們的重心位置。則計算眼睛位置的校正式如下:
(Ecx,Ecy)=∑xS(x,y),∑yS(x,y)∑S(x,y)(20)
S(x,y)=1G(x,y) 其中:A(x,y)為2d×4d的區域內像素的灰度值,則閾值thr表示如下: thr=mean(A)+t×(max(A)-mean(A))(22) 其中:t為常數,實驗中取t=0.15。修正后的眼睛位置就是本文算法最終的定位結果。 4 實驗結果分析 實驗數據分別來自Yale B數據庫[9]、FEI數據庫[10]、JAFFE數據庫[11]。 本次實驗采用了Jesorsky等人[12]的度量標準。設手工標注的左、右眼睛準確中心位置為El和Er,檢測到的左、右眼睛位置分別為l和r;dl為El到l的歐氏距離,dr為Er到r的歐氏距離,dlr為El與Er間的歐氏距離,則定位的相對誤差定義為 err=max(d1,dr)dlr(23) 如果err<0.25,則定位正確。一般來說,dlr約為眼睛寬度的兩倍,這樣err=0.25就意味著dl和dr中較大的一個距離約為眼睛寬度的一半,也就是說,低于這個誤差被認為是可以接受的。如果err≥0.25,則認為沒有正確地定位到眼睛位置。 光照、表情的變化是影響眼睛定位的主要因素,因此,選擇實驗數據庫時要考慮這些因素。采用分組實驗的方法可以充分驗證這些因素對實驗結果的影響。具體的方法如下:第一組,表情變化實驗,選用JAFFE數據庫;第二組,光照變化實驗,選用Yale B數據庫;第三組,表情+光照變化實驗,選用數據庫FEI。其中實驗用JAFFE數據庫為JAFFE數據庫全部圖片共213幅圖片,由10個日本女性的7種表情構成;實驗用Yale B 數據庫為從Yale B人臉數據庫(10人,每人9種姿態×64種光照)中隨機抽取了不同光照變化方向每人75張共750幅圖片,均為中性表情;實驗用FEI人臉數據庫為選用正面人臉部分共400張幅圖片,200個人,每人2張圖片構成,包含了表情和光照的變化,其中的17張為戴眼鏡的圖片。處理前實驗用圖片都進行了歸一化(除Yale B 數據庫)。實驗結果由表1給出。 從表1可以看出,本文算法對光照和表情變化的魯棒性較強;光照變化下,彩色圖像數據庫眼睛的定位準確率比灰度圖像數據庫要高。但是對于佩戴眼鏡的圖片,特別是有邊框眼鏡及鏡片的強反光會帶來干擾,導致眼睛的定位準確率下降。 不同算法在相同標準下,即err<0.25的條件下對JAFFE數據庫的眼睛定位效果的對比可以看出,基于各向異性濾波和形態學濾波的人眼定位算法相對于文獻[2]提出的地形特征法、文獻[3]提出的泛化投影函數法、文獻[13]提出的基于AdaBoost算法、文獻[14]提出的瞳孔濾波算法均有提高。表2是不同算法在相同標準下的比較。 不同數據庫上的定位結果如圖8~11所示。 5結束語 針對圖像的眼睛定位問題,本文提出了一種基于各向異性濾波去光照和形態學濾波的人眼定位算法。算法首先構造各向異性濾波器,對圖像進行濾波;然后與原圖像進行相比,獲得去除光照影響的圖像,再對去光照結果進行形態學的開閉運算操作,提升眼睛特征區域;接著進行二值化,根據先驗知識去除大部分非眼睛候選區域,得到眼睛候選區域后進行相關系數計算,得到眼睛對,并粗定位眼睛中心,以粗定位眼睛中心為中心,選擇一個更小的區域對眼睛中心進行校正,并作為最終的定位結果。結果表明,本文算法可以在很大程度上消除光照和表情的影響,顯示出良好的魯棒性。不同算法在相同標準下比較,本文算法具有優越性。但是,對佩戴眼鏡造成反光效應的問題,還有待進一步的研究。