余 羅 劉洪英,2* 許 帥 蔡金芷 皮喜田#
1(重慶大學(xué)生物醫(yī)學(xué)工程學(xué)院,重慶 400030)2(重慶市醫(yī)療電子工程技術(shù)研究中心,重慶 400030)
一種快速精確的瞳孔和角膜反射光斑中心定位算法的研究
余 羅1劉洪英1,2*許 帥1蔡金芷1皮喜田1#
1(重慶大學(xué)生物醫(yī)學(xué)工程學(xué)院,重慶 400030)2(重慶市醫(yī)療電子工程技術(shù)研究中心,重慶 400030)
眼動追蹤系統(tǒng)在臨床醫(yī)學(xué)中有著重要應(yīng)用,為提高系統(tǒng)中眼圖特征值的識別率,創(chuàng)新性地提出一種雙層過濾的瞳孔中心和角膜反射光斑中心的定位算法。瞳孔中心定位算法首先對獲取的眼睛圖像二值化處理,然后以100~300為閾值設(shè)定輪廓點數(shù),進行第一次瞳孔過濾,最后用最小二乘法橢圓擬合瞳孔輪廓,并將最接近圓的輪廓作為瞳孔輪廓,繼而得到瞳孔中心。在此基礎(chǔ)上,進一步對瞳孔中心一定范圍內(nèi)的眼圖進行邊緣檢測,求其輪廓,并找出輪廓的外接矩形中心,然后以瞳孔中心為基點進行坐標(biāo)轉(zhuǎn)換,最終求出角膜反射光斑中心。算法在一定程度上縮小圖像處理的區(qū)域,提高實時性和反射光斑的識別率。實驗結(jié)果表明,所設(shè)計的算法能夠?qū)崟r地對不同情況下的瞳孔和角膜反射光斑中心進行準(zhǔn)確定位,瞳孔-角膜反射向量坐標(biāo)最大均方差低于0.74像素,平均誤差低于0.53像素。算法運行速度達到12.8 ms/幀。算法滿足精確性的同時具有很強的魯棒性,為后續(xù)眼動設(shè)備的開發(fā)提供重要的參考價值。
定位算法;瞳孔中心;角膜反射光斑中心;橢圓擬合
眼動檢測技術(shù)在臨床醫(yī)療中有著重要作用[1- 2]。有研究表明,某些異常眼動指標(biāo)可以成為診斷精神分裂癥、抑郁癥以及自閉癥等精神疾病的生物學(xué)指標(biāo)[3],并在研究相關(guān)的生理病理機制和遺傳學(xué)關(guān)系中獲得重大突破[4]。在眼科中,眼動技術(shù)能夠更好地檢查眼球震顫、斜視和視野等視力問題[5-6]。同樣,在LASIK手術(shù)中配備眼動跟蹤系統(tǒng)可大大提高手術(shù)的精度[7]。目前基于圖像處理的非干擾式視線跟蹤技術(shù)是主要的發(fā)展趨勢。而瞳孔中心—角膜反射法在視線跟蹤算法中是目前較為受歡迎的方法之一,該方法通過計算瞳孔中心與角膜反射之間的矢量來估計視線方向。然而,由于人眼固有的生理機制及眼動的非線性、隨機性和復(fù)雜性,增加了瞳孔中心與角膜反射光斑定位的難度。在實際應(yīng)用中,該算法對視線估計提取相關(guān)參數(shù)的精度和實時性也提出了挑戰(zhàn)。
盡管如此,學(xué)者們?nèi)匀唤Y(jié)合不同的方法針對不同應(yīng)用背景下視線參數(shù)的精確快速檢測進行了大量的研究工作,并取得了不錯的研究成果: Morimoto根據(jù)人臉區(qū)域的灰度變化,設(shè)置動態(tài)閾值消除了不同光照條件下背景的影響[8]。為了準(zhǔn)確識別眼睛區(qū)域,Haro根據(jù)眼睛的外觀建立了一系列的判別規(guī)則,綜合起來進行眼睛區(qū)域的識別,提高了檢測的穩(wěn)定性[9]。為了提高視線參數(shù)識別的精度,Daugman基于微積分算子提出瞳孔與虹膜邊緣檢測的方法,其方案較好地運用在虹膜識別系統(tǒng)中[10]; 隨后,有研究人員提出了結(jié)合圓形Hough 變換的算法實現(xiàn)對瞳孔與虹膜的邊緣檢測,但對橢圓形狀的瞳孔識別率較低[11]?;诖?,Zhu等人結(jié)合瞳孔邊緣的曲率特性,提出應(yīng)用最小二乘法橢圓擬合算法完成瞳孔邊緣檢測,很好地解決了橢圓形狀瞳孔中心識別率[12]。此外,陳健等人提出了結(jié)合橢圓與參數(shù)傳遞的瞳孔檢測方法,實現(xiàn)了動態(tài)和大遮擋情況下瞳孔中心的識別[13]。盡管瞳孔檢測已經(jīng)取得不錯的研究成果,但針對不同的應(yīng)用,瞳孔檢測的精確性和實時性仍有待提高。
本研究將以自主設(shè)計的用于臨床的眼動儀獲取的眼圖中瞳孔中心和角膜反射光斑中心快速精確檢測為研究內(nèi)容,提出一種基于最小二乘橢圓擬合的瞳孔和反射光斑中心的快速精確檢測算法,主要思路如下:首先提取二值化后的眼圖瞳孔輪廓,然后以100~300為閾值設(shè)定輪廓點數(shù),對瞳孔進行粗過濾,最后采用最小二乘法橢圓擬合瞳孔輪廓,得到瞳孔中心。在此基礎(chǔ)上,在瞳孔中心一定范圍內(nèi)進行邊緣檢測,獲取反射光板輪廓,最后識別反射光斑中心。算法簡單且充分考慮了運行速度及瞳孔和角膜反射光斑中心檢測精度的問題。實驗結(jié)果驗證了方法的有效性和可行性。
眼圖特征點定位是否精確直接影響到眼動儀系統(tǒng)運行的穩(wěn)定性。所以作為眼動儀設(shè)計的核心部分,必須設(shè)計精確的算法[14],才能保證整個系統(tǒng)能夠穩(wěn)定運行。該部分的總體思路是先通過紅外攝像頭采集清晰的眼睛圖像,經(jīng)過圖像的預(yù)處理,其中主要包括圖像的灰度化、圖像濾波、二值化以及圖像邊緣檢測等,然后分別進行瞳孔中心定位和角膜反射光斑中心定位,其流程如圖1所示。
圖1 眼圖處理子系統(tǒng)流程Fig.1 The flow chart of eye diagram processing subsystem
1.1 眼睛圖像
圖2 眼睛圖像Fig.2 The eye image
通過攝像系統(tǒng)實時采集眼動視頻的一幀眼圖如圖2所示。
由圖2可知,顏色較深的部分就是瞳孔,形狀近似為橢圓。白色的光斑就是角膜反射光斑,也稱作普爾欽斑,它是由攝像機在紅外二極管照射下接收角膜的反射光線在眼睛圖像上形成的一個白色亮點。
1.2 圖像預(yù)處理
圖像預(yù)處理主要是對采集的眼睛圖像進行初步處理,以方便瞳孔中心的求取并提高準(zhǔn)確度。具體步驟為:把獲取的一幀圖像由彩色圖像轉(zhuǎn)換為灰度圖像并歸一化圖像的灰度值為0~255;高斯平滑,減少噪聲;二值化圖像。
預(yù)處理的目的就是為了得到二值化圖像,便于下一步的操作。
1.2.1 圖像灰度化
由圖2可知,采集的眼睛圖像是彩色圖像,對于常見的24深度彩色RGB圖來說,其對應(yīng)的灰度圖則是只有8位的圖像深度。相比彩色圖像來說,在圖像處理過程中,灰度圖像更容易實現(xiàn)實時算法,且它是由沒有經(jīng)過任何處理的光線所形成的照片,因此其所涵蓋的信息更有價值。雖然灰度圖像丟失了一些顏色等級,但縱觀整幅圖像的色彩及亮度等級分布特征來分析,灰度圖像與其對應(yīng)的彩色圖像的描述是一致的。
本研究采用的是加權(quán)平均法進行圖像灰度化,效果如圖3所示。圖像處理過程中,將RGB通過不同的權(quán)值來加權(quán)平均。比如,opencv函數(shù)庫所采用的灰度權(quán)值為
f(i,j)=0.212671R(i,j)+0.715 160G(i,j)+
0.072 169B(i,j)
(1)
圖3 灰度化眼圖Fig.3 The gray of eye diagram
1.2.2 圖像去噪
圖像在拍攝接收過程中,會不可避免地受到噪聲的影響。圖像噪聲按其產(chǎn)生的原因主要分為外部噪聲和內(nèi)部噪聲。在圖像處理系統(tǒng)中,光學(xué)噪聲占很大比重,主要是由光學(xué)現(xiàn)象產(chǎn)生的噪聲。因此,為了獲取高質(zhì)量的圖像,必須對圖像進行去噪處理。本研究采用的是高斯濾波。
高斯濾波是對圖像進行加權(quán)平均的一種線性平滑濾波,能有效地消除服從正態(tài)分布的噪聲,同時能減少圖像細(xì)節(jié)的模糊,該濾波方法在數(shù)字圖像處理過程中應(yīng)用廣泛。其具體操作是:選擇一個模板,掃描圖像中的所有像素,利用模板選定的鄰域內(nèi)像素值的加權(quán)平均灰度值去取代模板中心像素點的值。實際應(yīng)用中模板大小的取值與σ的取值相關(guān),如opencv中模板取值為:dim=1+2×((int)×(3.0σ))。
1.2.3 圖像二值化
圖像二值化的目的就是為了提取瞳孔輪廓,為接下來的瞳孔中心定位做準(zhǔn)備。其基本原理就是將目標(biāo)圖像上的像素點的灰度值置為0或255,使整個圖像黑白分明。在圖像處理過程中,一般選取適當(dāng)?shù)拈撝祻亩玫椒从吃瓐D像特征的二值化圖像。為了獲得滿意的二值化圖像,通常在不交疊的區(qū)域運用封閉、連通的邊界。所有灰度不小于選定閾值的像素被認(rèn)為是目標(biāo)物體,其灰度值用255表示,否則灰度值為0,表示背景或其他的物體區(qū)域。如果某目標(biāo)物體內(nèi)部分布均勻的灰度值,并且其處于其他等級灰度值均勻分布的背景下,采用閾值分割法就可以獲得滿意的分割效果。本研究采用局部自適應(yīng)閾值法,其基本原理是根據(jù)像素的相鄰區(qū)域的像素值來判定該像素位置上的閾值。其優(yōu)點在于使每個像素位置處的二值化閾值都是根據(jù)其周圍的相鄰區(qū)域的像素值來決定,便于選取合適的閾值進行圖像二值化分割。
1.3 瞳孔中心定位算法
對瞳孔中心定位的研究經(jīng)歷了不同階段,剛開始的算法是利用Hough變換定位圓[15]中心,因為眼睛的瞳孔近似于圓形,該算法雖然能夠在理想情況下定位出瞳孔中心,但也存在著一系列的問題。
快速Hough圓檢測的基本原理是根據(jù)圓的性質(zhì),圓上切線的垂線一定會通過圓心。因此,根據(jù)此性質(zhì),如果沿圓的邊緣找出每個邊界點的垂線,所有垂線的交點就是圓心。根據(jù)此原理得到的眼睛瞳孔定位圖像如圖4所示。當(dāng)采集的眼睛圖像質(zhì)量較高且瞳孔位置居中的情況下,可以精確定位瞳孔中心坐標(biāo),如圖4(a)所示;而當(dāng)圖片質(zhì)量比較差的情況下,像眼睫毛或眼睛微閉的情況下,都不能定位出瞳孔中心坐標(biāo),如圖4(b)所示。由此可知,此種算法有局限性,不適應(yīng)于對眼睛圖像的實時處理。
圖4 Hough圓檢測。(a)精確定位;(b)不精確定位Fig.4 Hough circle detection. (a) Precise positioning; (b) Not precise positioning
經(jīng)過對以上算法的論證及分析,單純的Hough變換[16]檢測圓適應(yīng)性不強,在眼睛圖像處理過程中不能滿足實時性要求,對圖像質(zhì)量有很大的要求,且瞳孔定位誤差很大,對后續(xù)定位注視點造成很大的影響。為此,本研究設(shè)計了一種新的算法,經(jīng)過實驗驗證能夠精確地定位出瞳孔中心,同時對圖像質(zhì)量要求不高,滿足實時性。
通過紅外攝像頭采集到清晰的眼睛圖像,經(jīng)過預(yù)處理后,得到眼睛的二值化圖像,先提取輪廓。得到輪廓序列以后,下一步就是提取瞳孔的輪廓。在圖像上找到的輪廓數(shù)目較多,因此需要設(shè)置合理的過濾方法,才能找到真正的瞳孔輪廓[17]。當(dāng)眼睛與紅外攝像頭距離(有效距離范圍內(nèi))不同時,捕獲的眼睛圖像瞳孔的大小也不相同。經(jīng)過對多張不同有效距離生成的眼睛圖像的驗證分析,組成瞳孔輪廓的點數(shù)在100~300之間,因此可以使用組成瞳孔輪廓的點數(shù)對輪廓進行過濾。
當(dāng)圖像的質(zhì)量較低時,獲得的二值化圖像具有較多噪聲,如果只使用瞳孔輪廓的點數(shù)這一個標(biāo)準(zhǔn)進行過濾,得到的輪廓可能不止一個。這就需要另外的過濾指標(biāo)。通過對求取中心坐標(biāo)失敗的圖片進行分析,主要原因是某一區(qū)域噪聲較多時,求取輪廓的函數(shù)會把它們作為一個大的輪廓,而不是分為幾個較小的輪廓。但與瞳孔的輪廓相比,它們的輪廓極不規(guī)則。
因此這一步采用的方法是對上一步求取到的輪廓,用基于最小二乘法橢圓擬合得到瞳孔中心。橢圓的一般表達式為
Ax2+Bxy+Cy2+Dx+Ey+F=0
(2)
在求解橢圓系數(shù)的過程中,為了防止出現(xiàn)零根,必須對式(1)中的參數(shù)做一些約束,其約束條件為A+C=1。根據(jù)該條件得到橢圓的變形為
Bxy+C(y2-x2)+Dx+Ey+F=-x2
(3)
由方程的一般表達式可知,求出式子中參數(shù)的值必須不少于6個點才能得到橢圓?;谧钚《朔E圓擬合的基本原理是在提取的瞳孔輪廓特征點中任意取出6個點,代入式(3)中,求出式(2)的參數(shù)值,然后擬合出瞳孔輪廓,求出其中心。按照以上方法統(tǒng)計所有的特征點進行擬合時所得到的中心,然后計算出中心點到輪廓邊緣距離的方差,方差最小的輪廓,作為瞳孔的輪廓,相應(yīng)橢圓的中心就作為瞳孔的中心[18]。瞳孔中心定位算法的具體步驟如下:
步驟1:求取圖像預(yù)處理得到的二值化圖像的輪廓。
步驟2:檢查輪廓點的數(shù)目,如果在100~300之間,保存輪廓到相應(yīng)的容器中。
步驟3:檢查容器中輪廓的數(shù)目,如果為0,說明采集到的圖像不符合要求,需要重新采集圖像;如果等于1,則對輪廓進行最小二乘法橢圓擬合[13],并把橢圓中心作為瞳孔中心,算法結(jié)束;如果大于1,轉(zhuǎn)下一步。
步驟4:對步驟1容器中的輪廓,分別進行橢圓擬合,然后計算得到的橢圓中心與輪廓邊緣各點的距離的方差,把方差最小的輪廓作為瞳孔的輪廓,相應(yīng)的橢圓中心作為瞳孔的中心,算法結(jié)束。
瞳孔定位算法流程如圖5所示。
圖5 瞳孔定位算法流程Fig.5 The flow chart of pupil localization algorithm
1.4 角膜反射光斑中心定位算法
由采集的眼睛圖像可知,角膜[2]反射光斑分布在瞳孔區(qū)域的內(nèi)部或周圍,因此求取角膜反射光斑中心時,可以在瞳孔周圍的這一區(qū)域進行操作。這樣不但縮小了圖像處理的區(qū)域,而且能減少噪聲的影響,提高成功率。求取角膜反射光斑[19]中心的過程與求取瞳孔中心的過程類似,但又有所不同。角膜反射光斑較小,易受噪聲影響,并且瞳孔和角膜反射光斑邊緣的對比度很高。所以獲取角膜反射光斑輪廓之前,不需要對眼睛圖像進行二值化處理,而是進行邊緣檢測[20],然后對邊緣檢測輸出的圖像進行處理。具體算法如下:
1)對采集的眼睛圖像進行高斯平滑處理。
2)以瞳孔為中心,設(shè)定寬為cX,高為cY的矩形區(qū)域為圖像處理區(qū)域,保存為新的圖像文件Roi_Image。cX初始值設(shè)為120,cY初始值設(shè)為90。
3)對Roi_Image進行邊緣檢測,高低閾值分別為150和50;生成的圖像保存為Canny_Image。
4)對Canny_Image查找輪廓,并找到面積最大的輪廓;如果面積小于10,說明第二步設(shè)定的cX和cY過小,cX和cY各加10,返回(b)。
5)獲取輪廓點集的最外接矩形,并計算得到矩形的中心。
6)對上一步得到的中心坐標(biāo)進行轉(zhuǎn)換,即可得到原圖像上光斑的坐標(biāo)。轉(zhuǎn)換公式為
m_GbPoint.x=rec.x+rec.width/2+
m_TkPoint.x-cX/2;
(4)
m_GbPoint.y=rec.y+rec.height/2+
m_TkPoint.y-cY/2;
(5)
式中,m_GbPoint.x為光斑中心x坐標(biāo)值,rec.x為(5)中矩形的坐上角x坐標(biāo)值,rec.width為矩形的寬度,m_TkPoint.x為瞳孔中心x坐標(biāo)值。
算法的流程如圖6所示。
圖6 角膜反射光斑定位算法流程Fig.6 The flow chart of corneal reflection spot location algorithm
1.5 算法驗證
為了驗證本研究提出的算法的可靠性,首先選取眼睛不同閉合程度的圖像,以驗證算法在眼睛不同狀態(tài)下瞳孔中心識別精確性。在此基礎(chǔ)上,進一步選取眼睛不同閉合程度及存在其他光干擾情況下的反射光斑中心識別精確性。最后對同一被試在不同視線方向的瞳孔-角膜反射向量坐標(biāo)進行統(tǒng)計分析,并對10被試注視同一點時的瞳孔-角膜反射向量坐標(biāo)進行統(tǒng)計分析,進一步驗證算法的實用性。
2.1 瞳孔中心識別結(jié)果
瞳孔和角膜反射光斑中心的識別算法在以visual C++2010為平臺的Intel(R) Core(TM) i3-3220 3.3 GHz 4 G內(nèi)存的PC機上編程實現(xiàn)。采用采樣率為30 f/s的紅外攝像機實時采集眼部視頻圖像,實驗在光線較暗的環(huán)境中進行,實驗過程保持頭部靜止。實驗場景如圖7所示,眼睛距屏幕60 cm左右。
圖7 實驗場景Fig.7 The experiment scene graph
圖8、9眼圖分別展示了眼睛完全張開和不同閉合程度時的瞳孔中心定位效果(瞳孔中心由紅色十字架標(biāo)識)。
圖8 眼睛完全張開狀態(tài)下的瞳孔中心定位效果。(a)白光干擾;(b)無光干擾Fig.8 The effect figure of pupil center location in eyes wide open state. (a) White light interference;(b) No interference
圖9 眼睛不同程度閉合狀態(tài)下的瞳孔中心定位效果。(a)完全張開;(b)閉合程度低;(c);閉合程度較高(d) 閉合程度高Fig.9 The effect figure of pupil center location in eyes different degrees of closed state. (a)Full open;(b)Low degree of closure;(c) Medium degree of closure;(d) High degree of closure
2.2 角膜反射光斑識別結(jié)果
完成瞳孔中心定位后,再對角膜反射光斑的中心進行定位。首先,選取兩張清晰且無其他光斑干擾的眼圖進行定位,效果如圖10所示。然后,選擇有其他光的干擾以及較模糊的眼圖,定位效果如圖11(a)(b)所示(角膜反射光斑中心由綠色十字架標(biāo)識)。
圖10 正常狀態(tài)下角膜反射光斑中心定位效果。(a)左眼;(b)右眼Fig.10 The effect figure of corneal reflection spot in normal state. (a)Left eye chart;(b)right eye chart
圖11 有干擾狀態(tài)下角膜反射光斑中心定位效果。(a)白光干擾;(b)模糊干擾Fig.11 The effect figure of corneal reflection spot in interference state. (a) White light interference;(b) Fuzzy interference
2.3 瞳孔-角膜反射向量坐標(biāo)統(tǒng)計結(jié)果
采集同一被試的眼動視頻數(shù)據(jù)5 s,得到約500幀眼動視頻圖像,在如上所述的編程環(huán)境下算法運行時間約6.4 s,平均每幀圖像耗時12.8 ms,能夠滿足系統(tǒng)實時性要求。由算法獲取的瞳孔中心坐標(biāo)(xp,yp)和角膜反射光斑中心坐標(biāo)(xf,yf),瞳孔中心相對于角膜反射中心的偏移量稱為瞳孔-角膜反射向量(xfp,xfp),即xfp=xp-xf;xfp=xp-xf。
瞳孔及角膜反射光斑中心識別的目的是實現(xiàn)對視線的跟蹤,為了驗證不同視線方向的瞳孔-角膜反射向量的精確性,設(shè)計如圖12所示不同點的眼睛凝視實驗,實驗過程保持頭部固定,以減少系統(tǒng)誤差。對同一被試,每個凝視點采集100幀圖像數(shù)據(jù)進行統(tǒng)計。
圖12 凝視實驗Fig.12 Gaze experiment
圖13為注視中心點C時得到的瞳孔-角膜反射向量坐標(biāo),橫坐標(biāo)在12.3~14.1之間變化,最大值與最大值之間的變化不大于1.8個像素,縱坐標(biāo)在53.9~56.2之間變化,最大值與最小值之間的變化不大于2.3個像素。
圖13 100幀眼圖瞳孔-角膜反射向量坐標(biāo)算法識別Fig.13 100 frame pupil corneal reflex vector coordinates algorithm recognition
注視各個點時的橫坐標(biāo)和縱坐標(biāo)的平均誤差和均方差,如表1所示。結(jié)果表明,橫坐標(biāo)的平均誤差不超過0.44像素,均方差不超過0.7像素;縱坐標(biāo)平均誤差不超過0.52像素,均方差不超過0.61像素。
表1 瞳孔-角膜反射向量橫坐標(biāo)和縱坐標(biāo)精度統(tǒng)計
Tab.1 Accuracy of horizontal and vertical coordinates of pupil corneal reflex vector
注視點橫坐標(biāo)/像素縱坐標(biāo)/像素均方差平均誤差均方差平均誤差10.3760.2270.3990.44220.4570.3120.6080.30130.3910.3050.5200.51940.2880.4340.5750.39550.6600.3510.3470.289
表2為不同被試在同一測試條件下,注視同一點的瞳孔-角膜反射向量精度統(tǒng)計。結(jié)果表明,橫坐標(biāo)的平均誤差不超過0.53像素,均方差不超過0.74像素;縱坐標(biāo)平均誤差不超過0.53像素,均方差不超過0.62像素。
表2 多個被試瞳孔-角膜反射向量橫坐標(biāo)和縱坐標(biāo)精度統(tǒng)計
Tab.2 Accuracy of horizontal and vertical coordinates of pupil corneal reflex vector of different objects
被試序號橫坐標(biāo)/像素縱坐標(biāo)/像素均方差平均誤差均方差平均誤差10.3910.3050.520.51920.6140.2290.3580.55230.5580.4510.5010.39140.5920.2570.6110.16450.4800.3390.3970.33060.3610.4090.2410.22570.5020.5210.6070.53080.7310.3790.4490.49190.3390.3540.6130.377100.6090.4420.5940.460
在視線跟蹤算法中,基于橢圓擬合的眼圖特征點識別是目前眾多研究者較為熱衷的識別算法,該算法較好地克服了非正圓情況的瞳孔中心識別精度低的問題,但往往設(shè)計的算法比較復(fù)雜,且實時性不強。本研究創(chuàng)新性地提出了雙層過濾的基于橢圓擬合的瞳孔-角膜反射光斑識別算法,該算法首先以一定范圍內(nèi)的輪廓點數(shù)為閾值實現(xiàn)第一層過濾,然后在此基礎(chǔ)上,利用最小二乘法對粗過濾后的輪廓進行二次過濾,最終實現(xiàn)了對瞳孔中心的準(zhǔn)確定位。
在實驗結(jié)果圖8中,(a)右上部分存在大面積的白色光線,但由于瞳孔的像素值和白斑的像素值差別很大,通過算法的甄別,白色光線沒有對瞳孔中心定位造成影響,表明算法具有較好的抗干擾能力。圖9(a)~(d)中,眼睛的閉合程度由低到高。雖然眼睛處于半閉狀態(tài),但該算法仍能準(zhǔn)確地定位瞳孔中心,能夠應(yīng)用于實際的情況。 不同于具有較大輪廓的瞳孔,角膜反射光斑特征不明顯,識別過程中極易受到其他干擾光的影響。實驗結(jié)果,圖11(a)中有大量白色的光斑,與角膜反射光斑的亮度接近,(b)中已經(jīng)處于嚴(yán)重模糊的狀態(tài),但都沒有對角膜反射光斑中心的準(zhǔn)確定位造成影響。這是因為設(shè)計的算法只選擇在瞳孔周圍的某一區(qū)域進行操作。這樣不但縮小了圖像處理的區(qū)域,而且能減少噪聲的影響,提高識別率及定位精度。由于縮小了圖像處理區(qū)域,所以圖像處理時間也相應(yīng)減少。
實驗最后對瞳孔-角膜反射向量坐標(biāo)的精度進行了統(tǒng)計分析,作為眼動儀標(biāo)定系統(tǒng)的核心部分,瞳孔-角膜反射向量坐標(biāo)的精度極為重要,這一參數(shù)直接影響系統(tǒng)對視線方向計算的準(zhǔn)確性。表1統(tǒng)計結(jié)果表明,不同視線方向的瞳孔-角膜反射向量坐標(biāo)的均方差和平均誤差均能達到極小的范圍,對運動情況下的眼睛具有較強的適應(yīng)性。表2結(jié)果表明,算法對不同眼睛的特征點都能準(zhǔn)確識別,多名被試的瞳孔-角膜反射向量坐標(biāo)都有很高的精度,該算法具有較強的實用性。
盡管本研究提出的算法實現(xiàn)簡單,運行速度符合實時性要求,但仍存在不足之處,比如算法未考慮到頭動情況對實驗結(jié)果的影響。由于角膜特殊的曲率特性,當(dāng)頭部出現(xiàn)偏移時,可能會導(dǎo)致反射光斑的不唯一,多個反射光斑可能會降低算法的識別率,因此可考慮采用多光源系統(tǒng),提高對眼部生理特征的檢測和計算[8]。另外,目前的瞳孔和角膜反射光斑定位算法只能夠?qū)β阊圻M行精確定位,對戴眼鏡的近視患者由于玻璃鏡片的反光作用而不能進行識別定位,今后可以在改進算法的同時,增加一些反光裝置消除眼鏡對瞳孔和角膜反射光斑定位的影響。
本研究設(shè)計的算法成功地實現(xiàn)了對不同眼睛圖像瞳孔和角膜反射光斑中心的精確定位,并能夠滿足眼動的實時性要求。首先,算法對圖像質(zhì)量要求不高,對存在光線干擾及不同程度遮擋的情況具有較好的抗干擾能力;其次,對較為模糊的眼圖仍能精確地實現(xiàn)圖像特征點的識別。實驗結(jié)果表明,在不同視線方向下的瞳孔-角膜反射向量,該算法能夠得到很高的精度。統(tǒng)計分析多個被試的瞳孔-角膜反射向量,均能得到較好的精度,具有較強的實用性。該算法為后續(xù)眼動跟蹤[21]的研究及其設(shè)備的設(shè)計提供了重要的參考價值。
[1] 胡雅娉, 梁戰(zhàn)華. 帕金森病患者伴快速動眼睡眠行為障礙的研究進展[J]. 中華行為醫(yī)學(xué)與腦科學(xué)雜志, 2016(2): 183-187.
[2] Bayhan HA, Bayhan SA, Can IZ. Comparison of central corneal thickness measurements with three new optical devices and a standard ultrasonic pachymeter[J]. International Journal of Ophthalmology, 2013, 7(2): 302-308.
[3] Franco JG, De PJ, Gaviria AM, et al. Smooth pursuit eye movements and schizophrenia: Literature review[J]. Archivos De La Sociedad Espanola De Oftalmologia, 2014, 89(9): 361-367.
[4] Guénolé F, Chevrier E, Stip E, et al. A microstructural study of sleep instability in drug-naive patients with schizophrenia and healthy controls: sleep spindles, rapid eye movements, and muscle atonia[J]. Schizophrenia Research, 2014, 155(1-3): 31-38.
[5] Harrison J, Sumner P, Freeman T. Co-ordination of voluntary and automatic eye-movements:, Accuracy of saccades made during concomitant optokinetic, nystagmus[J]. Economic History Review, 2012, 66(3):693-714.
[6] Lions C, Bui-Quoc E, Wiener-Vacher S, et al. Smooth pursuit eye movements in children with strabismus and in children with vergence deficits[J]. PLoS ONE, 2013, 8(12): e83972.
[7] Shajari M, Bühren J, Kohnen T. Dynamic torsional misalignment of eyes during laser in-situ keratomileusis[J]. Albrecht Von Graes Archiv Für Ophthalmologie, 2016, 254(5): 1-6.
[8] Morimoto C H, Flickner M. Real-time multiple face detection using active illumination[C]// Proceedings of IEEE International Conference on Automatic Face and Gesture Recognition. Grenoble: IEEE, 2000:8-13.
[9] Haro A, Flickner M, Essa I. Detecting and tracking eyes by using their physiological properties, dynamics, and appearance[J], 2000, 1: 163-168.
[10] Daugman JG. High confidence visual recognition of persons by a test of statistical independence[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1993, 15(11): 1148-1161.
[11] Wildes R P. Iris recognition: An emerging biometrie technology[J]. Proceedings of the IEEE, 1997, 85(9): 1348-1363.
[12] Zhu D, Moore S T, Raphan T. Robust pupil center detection using a curvature algorithm[J]. Computer Methods & Programs in Biomedicine, 1999, 59(3): 145-157.
[13] 陳健, 鄭紹華, 潘林, 等. 結(jié)合橢圓擬合與參數(shù)傳遞的瞳孔檢測方法[J]. 儀器儀表學(xué)報, 2014(8): 1890-1899.
[14] 程成, 杜菁菁, 藍(lán)飛翔. 眼動交互的實時線性算法構(gòu)造和實現(xiàn)[J]. 電子學(xué)報, 2009, 37(b04): 12-15.
[15] 周封, 楊超, 王晨光, 等. 基于隨機Hough變換的復(fù)雜條件下圓檢測與數(shù)目辨識[J]. 儀器儀表學(xué)報, 2013, 34(3): 622-628.
[16] 宋曉宇, 袁帥, 郭寒冰, 等. 基于自適應(yīng)閾值區(qū)間的廣義Hough變換圖形識別算法[J]. 儀器儀表學(xué)報, 2014, 35(5): 1109-1117.
[17] 田野, 王懷軍, 方志良. 基于形態(tài)學(xué)重構(gòu)算法的瞳孔精確檢測[J]. 光電子·激光, 2008, 19(3): 409-411.
[18] 陳學(xué)軍, 楊永明, 何為, 等. 一種應(yīng)用于視頻眼震分析的瞳孔中心定位方法[J]. 中國生物醫(yī)學(xué)工程學(xué)報, 2012, 31(2): 184-189.
[19] 張?zhí)珜? 孟春寧, 常勝江. 基于兩次多項式擬合的人眼注視方向估計[J]. 光電子·激光, 2012, 23(7): 1389-1394.
[20] 王靜, 王海亮, 向茂生, 等. 基于非極大值抑制的圓目標(biāo)亞像素中心定位[J]. 儀器儀表學(xué)報, 2012, 33(7): 1460-1468.
[21] Dong Weihua, Liao hua, Xu Fang, et al. Using eye tracking to evaluate the usability of animated maps[J]. Science China Earth Science, 2014, 57(3): 512-522.
A Fast and Precise Location Algorithm Research for the Pupil Center and the Corneal Reflection Spot Center
Yu Luo1Liu Hongying1,2*Xu Shuai1Cai Jinzhi1Pi Xitian1#
1(SchoolofBiomedicalEngineering,ChongqingUniversity,Chongqing400030,China)2(ChongqingMedicalElectronicEngineeringTechnologyResearchCenter,Chongqing400030,China)
The eye tracking system plays an important role in clinical medicine, in order to raise the recognition rate of the eye characteristic value in the system. A double filtration algorithm is innovatively proposed to locate the center of pupil and the center of corneal reflection in this paper. First, the acquired eyes image was processed by the pupil center location algorithm to reach binarization, and then the contour points with 100~300 was set as the threshold. Next, pupil contour was ellipse fitted using the least square ellipse fitting method, and the contour that was most close to the circle was used as the pupil contour to obtain pupil center. On this basis, the edge of the eye image in the certain range of the pupil center was detected, and then the external rectangular center of the contour was calculated. Taking the center of the pupil as the starting point for coordinate transformation, the corneal reflection spot center after converting coordinates was eventually calculated. This algorithm not only reduced the area of image processing to a certain extent, but also improved the processing speed and the recognition rate of reflection spot. The experimental results showed that the designed algorithm accurately located the pupil center and corneal reflex center in different conditions in real time. The maximum mean square deviation of pupil-corneal reflection vector was less than 0.74 pixels, and the average error was less than 0.53 pixels. The algorithm run at a speed of 12.8 ms/frame. The algorithm met the precision as well as showed very strong robustness, being of significance for the development of eye tracker.
location algorithm; pupil center; corneal reflection spot center; ellipse fitting
10.3969/j.issn.0258-8021. 2017. 04.007
2016-05-07, 錄用日期:2017-02-25
國家科技支撐計劃項目(2013BAI03B04&2015BAI01B14)
R318
A
0258-8021(2017) 04-0434-08
#中國生物醫(yī)學(xué)工程學(xué)會會員(Member, Chinese Society of Biomedical Engineering)
*通信作者(Corresponding author),E-mail: liuhongying@cqu.edu.cn