《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 智能相機在實時眼動識別中的應(yīng)用
智能相機在實時眼動識別中的應(yīng)用
來源:電子技術(shù)應(yīng)用2013年第11期
倪怡雯, 穆平安, 戴曙光
上海理工大學 光電信息與計算機工程學院, 上海200093
摘要: 對基于智能相機的眼動識別系統(tǒng)和方法進行了研究和設(shè)計,并對該系統(tǒng)在常見的各種測試條件下進行了大量的實驗和應(yīng)用分析。基于智能相機的眼動識別系統(tǒng)結(jié)構(gòu)小巧緊湊,檢測速度快,準確度高,較基于PC的檢測系統(tǒng)和頭盔式檢測設(shè)備的性能有大幅的提高。
中圖分類號: TP277
文獻標識碼: A
文章編號: 0258-7998(2013)11-0089-03
Real-time eye recognition using a smart camera
Ni Yiwen, Mu Ping′an, Dai Shuguang
School of Optical-Electrical and Computer Engineering, University of Shanghai for Science and Technology, Shanghai 200093, China
Abstract: In this paper, a detection method and system for eye recognition using a smart camera is designed. A lot of experiments for application analysis and are carried out in variously common test conditions. Eye recognition system that based on smart camera not only has a small compact design, high detecting speed and accuracy compared with the system based on PC and the helmet-mounted one.
Key words : eye recognition; template matching; smart camera; embedded systems; application development

    眼動識別是一種通過在視頻幀中不斷檢測眼睛及眼球位置來判斷眼球注視以及移動方向的過程。眼動識別有非常重要的研究意義,在心理學、醫(yī)學、設(shè)計學[1]、工效安全、人機交互[2-3]和軍事領(lǐng)域[4]上都有廣泛的應(yīng)用和深遠的前景。

    當下最尖端的眼動識別系統(tǒng)主要是通過PC組合Web camera來進行視覺處理[5-6]。然而PC用作主要計算處理單元體積過于龐大,不足以滿足實際應(yīng)用的環(huán)境要求,僅能作為實驗環(huán)境測試之用。由此頭盔式的眼動識別設(shè)備應(yīng)運而生,這類產(chǎn)品雖能夠部分解決無法攜帶的問題,但是使用者的舒適感較差,更重要的是運算的速度和準確度卻大大降低。
    而智能相機以其嵌入式、低功耗的處理器,使快速算法成為可能,尤其在自動化檢測應(yīng)用中其優(yōu)越和穩(wěn)定的性能,配合小巧緊湊的結(jié)構(gòu),非常適合于實時眼動識別應(yīng)用程序的執(zhí)行。
1 眼動識別算法提出
    Fleck等提出在智能相機中使用FPGA模塊,通過粒子濾波器模型來實時識別跟蹤[7],這個方法需要用大量的樣本,環(huán)境越復雜,描述后驗概率分布所需要的樣本數(shù)量就越多,算法的復雜度就越高。另外,重采樣造成的樣本有效性和多樣性的損失,會導致樣本貧化現(xiàn)象。本文在虹膜識別應(yīng)用的基礎(chǔ)上[8],設(shè)計開發(fā)了應(yīng)用在智能相機中的軟件來完成眼動識別的功能,包括模板匹配、邊緣檢測、識別和標識黑眼球中心位置等。在一般的眼動識別算法中,進行眼動識別前,首先要對人臉進行檢測,以提高眼動識別追蹤算法的精確度[9]。本文提出直接選定左眼為感興趣區(qū)域的方法,快而準確,然后在感興趣區(qū)域內(nèi)匹配黑眼球相對眼睛的位置,不同位置標明不同眼動方向,以此識別當前眼動狀態(tài),若隨時間變化實時檢測就能起到眼球運動識別的效果。
2 基于智能相機的眼動識別設(shè)計
2.1 眼動識別方法流程分析

    將攝像頭設(shè)定為連續(xù)檢測眼動信息的狀態(tài),進行圖像采集和檢測。圖1所示為實時眼動識別算法的流程圖。

    (1)圖像獲取:用圖像傳感器獲取測試對象的圖片,設(shè)置光圈、曝光時間和增益。
    (2)圖像預(yù)處理:將原始圖像轉(zhuǎn)換成灰度圖像。設(shè)計目標是每秒數(shù)十幀的實時檢測,灰度圖足以表現(xiàn)面部為主圖像的邊緣和特征,能夠快速進行大量的模板匹配算法。
    (3)眼部檢測:預(yù)先設(shè)計制作眼部區(qū)域的模板。因為人類眼睛在生理上具有雙眼旋轉(zhuǎn)運動協(xié)調(diào)特性,故單眼模板兼具速度和可信度。運用模板匹配的方法在當前幀圖像中檢測與模板相似的部分,設(shè)置相似度的度量值,由于制作模板民實際檢測時光照條件不完全相同,還存在圖像的形變,根據(jù)測試通常將最小閾值設(shè)定在600左右最佳(最大為1 000)。
    (4)前視模板、左視模板和右視模板:對感興趣區(qū)域依次匹配黑眼球位置的模板,默認常態(tài)下眼睛處于前視狀態(tài),若不匹配則再嘗試匹配左視和右視模板。在三個模板的匹配范圍內(nèi)都不符合時,記錄為無匹配方向。無匹配方向的意義,例如用于行車安全系統(tǒng)中,可認為視線脫離安全駕駛狀態(tài)。
    (5)確定眼球方向:將第(4)步中識別到的匹配模板對應(yīng)返回一個眼動方向,并記錄、顯示于屏幕上。
    (6)記錄眼睛坐標:計算黑眼球的中心坐標。正視時取正圓的圓心,左、右視時取橢圓兩焦點的中點,作為當前眼睛的坐標點。
    (7)標識當前位置:將第(6)步的坐標作為坐標系原點,創(chuàng)建坐標系,并疊加于圖像的圖層上,完成當前幀圖像的檢測,開始下一幀采集。
    這種方法可以應(yīng)用于各種類型的智能相機上,并可運用各種編程語言來實現(xiàn)。本文采用“G”語言(圖形化的程序語言),它提供了儀器編程和數(shù)據(jù)采集的便捷途徑,在進行原理研究、設(shè)計、測試并實現(xiàn)儀器系統(tǒng)時,可以大大提高工作效率。
2.2 硬件平臺設(shè)計
    通過NI 1772 SMART CAMERA和觸控屏(或顯示屏),即可獨立完成實時眼動識別的圖像采集、圖像處理、圖像分析和信息反饋等步驟。系統(tǒng)非常精簡,大大降低了可以應(yīng)用場合的限制。
    NI 1772智能相機使用Intel Atom Z530(1.6 GHz處理器),內(nèi)有512 MB的RAM;圖像傳感器為Kodak KAI-0340S 單色CCD(分辨率640×480(VGA),最大可用幀速率114 f/s)。通過RS232串行連接動態(tài)地控制照明,通過千兆以太網(wǎng)I/P和TCP/IP協(xié)議,實現(xiàn)與觸摸屏(HMIS)相連接進行人機交互,完成配置調(diào)整和檢測圖像和參數(shù)實時反饋。
2.3 軟件設(shè)計與實現(xiàn)
 如圖2所示,根據(jù)圖1所示流程算法,設(shè)計了軟件程序。

    VBAI編譯的算法程序分兩個步驟,首先要規(guī)劃子模塊的次序,合理布局分支的結(jié)構(gòu),降低幀率的損失,提高程序可讀性便于修改。然后對應(yīng)每個子模塊的作用,完善各個模塊的功能。
    由箭頭相連接的為子模塊,方框內(nèi)是具體每個模塊的子函數(shù)。子模塊acq實現(xiàn)采集圖像,子模塊Inspect center、Inspect left、Inspect right完成尋找眼部感興趣區(qū)域(本文中使用左眼為ROI),并對該區(qū)域進行多次匹配,確定當前眼球所處狀態(tài),顯示對應(yīng)狀態(tài)的反饋提示;子模塊Inspect 2提示處理檢測過程中的錯誤信息,與用戶顯示界面進行信息傳遞等。
    (1)acq(圖像獲取)中子函數(shù):
    Acquire Image: 通過智能相機的圖像傳感器獲取單幀圖像,圖像為灰度圖。
    (2)Inspect center、Inspect left、Inspect right(正視檢測、左視檢測、右視檢測)中分別有以下4個子函數(shù):
    ①Eye Match Pattern: 眼動匹配。在調(diào)試階段預(yù)先設(shè)置好匹配模板,分左視模板(橢圓形模板)、正視(圓形模板)、右視(橢圓形模板)3個。測試檢測時,先匹配感興趣區(qū)域,減少需要處理的圖像范圍,然后在感興趣區(qū)域內(nèi)依次匹配3個模板,找到與某個模板的灰度特性相似的區(qū)域(設(shè)置在±45°范圍內(nèi)旋轉(zhuǎn)的區(qū)域都符合識別范圍),個數(shù)指定為最多一個。若沒有匹配對象也進行第②步。
    ②Set Coordinate System:構(gòu)建坐標系統(tǒng)。計算第①步中匹配區(qū)域的大小,并記錄該區(qū)域中心點位置(正圓的圓心或橢圓兩焦點的中點)和匹配區(qū)域與模板對比傾斜的角度。對沒有匹配對象的幀跳過當前步驟。
    ③Create Region of Interest:建立感興趣區(qū)域。以第②步的中心點位置為坐標原點,將感興趣區(qū)域設(shè)置為匹配到的眼動區(qū)域,用圓標記出眼球的位置。沒有匹配對象的幀則跳過當前步驟。
    ④Draw Eye & Track: 標識眼動檢測結(jié)果。在采集到的實時圖像上覆蓋一個圖層,將眼球區(qū)域的中心點標記在該圖層上。程序只記錄所有成功匹配的幀,此時匹配狀態(tài)值為真,在程序前面板上將匹配到的模板用對應(yīng)的“LEFT”、“CENTER”、“RIGHT”指示進行標識。
    (3)Inspect 2(檢測統(tǒng)計)中有以下3個子函數(shù):
    ①Calibrate Image at Eye Match Pattern:校正圖像坐標。
    ②Set Inspection Status: 檢測狀態(tài)反饋。反饋此幀圖像是否順利進行了眼動信息識別,檢測過程中有無報錯,若值為“FAULT”則此幀檢測結(jié)果無效。
    ③Update Eye-tracking Result: 自定義一個前面板,即用戶界面。顯示實時采集到的圖像、檢測狀態(tài)、注視方向、標識眼球位置等。
3 眼動識別實驗分析
3.1 實驗方法

    考慮到眼動識別應(yīng)具有應(yīng)用的廣泛性,需要能夠在不同光照環(huán)境下工作,因此需要在不同光照條件下可以通過調(diào)整曝光時間來獲取較高質(zhì)量的檢測圖像,測試環(huán)境越暗,曝光時間越長,幀率越低。反之,光線越好的環(huán)境下幀率越高。實驗中,模擬駕駛時眼部及頭部的自然狀態(tài),對實時眼動識別算法進行應(yīng)用實驗。
    以1 min內(nèi)獲得的實時數(shù)據(jù)作為分析樣本,分別測試了系統(tǒng)在無干擾測試狀態(tài)、頭部左右轉(zhuǎn)動干擾(左右各45°以內(nèi))、面部角度傾斜干擾和特殊情況(佩戴眼鏡等局部遮擋)條件下的準確性。每個測試條件分別在光線環(huán)境不同處,分40 f/s、50 f/s、60 f/s、80 f/s、100 f/s、112 f/s(max)6種不同圖像采集的速度進行對比,并在幀率最高的情況下統(tǒng)計檢測100幀圖像的效率。
3.2 實驗數(shù)據(jù)與分析
    在“Set Inspection Status”的值為真的條件下,若識別到的眼動狀態(tài)(左視、正視、右視、其他區(qū)域)與實際眼動的狀態(tài)相符,則認為是一次成功的檢測,反之亦然。1 min內(nèi)測試正確率的數(shù)據(jù)整理后如表1所示。

 

 

    由表2可知, 平均對100幀圖片進行識別需要約40 ms,每幀僅需要0.4 ms,模板匹配部分作為識別檢測的重點占80%,實時性好,接近使用高性能的PC進行圖像運算,完全能夠應(yīng)用于實時在線眼動識別檢測。
    本文設(shè)計搭建了一個基于智能相機的實時眼動識別系統(tǒng),拓寬了眼動識別能夠應(yīng)用的場合,并自主設(shè)計了在該硬件系統(tǒng)平臺上可以運行的眼動識別軟件,進行了大量不同環(huán)境和條件下的實驗。反復大量的數(shù)據(jù)分析結(jié)果顯示,該方法和系統(tǒng)有較高的準確性和非常出色的實時性。在無外界干擾、臉部角度傾斜和部分遮擋的條件下都達到了過九成的準確率,尤其在臉部角度傾斜條件下,仍有平均95%以上的良好表現(xiàn)。
    由于頭部轉(zhuǎn)動對識別準確率的影響較大,今后可以進一步對該因素帶來的問題進行研究。另外可以在頭部無較大移動條件下,將本文中的眼球坐標歸一到同一坐標中,繪制眼動軌跡進行分析,應(yīng)用于其他眼動識別的場合。
參考文獻
[1] FRANGESKIDES A L. A hands-free non-invasive human compuer interation system[J]. Advances in Systems, Computing Sciences and Software Engineering, 2006:235-242.
[2] Lu Wanxuan, Li Mi, Lu Shengfu, et al. Impact of information Overload for Visual Search on Web Pages: An Eyetracking Study[C]. Proc. 2010 IEEE/ICME International Conference on Complex Medical Engineering. Gold Coast, Australia, July 2010:13-15.
[3] JAVIER Orozco, F.XAVIER Roca, JORDI Gonzàlez. Realtime gaze tracking with appearance-based Models[J].Machine  Vision and Applications,October,2009,20(6):353-364.
[4] KIRCHER J C, COOK A E, HACKER D J. Deception detection using oculomotor movements[J]. United States Patent Application Publication, Dec. 23, 2010: US 2010/0324454 A1.
[5] GARG R, GUPTA V, AGRAWAL V. Efficient iris recognition method for identification[C]. in Proc. ICUMT,2009:1-6.
[6] PEREZ C A, LAZCANO V A, PABLO A. Estévez, et al. Held. Real-time iris detection on faces with coronal axis rotation [C]. in Proc. SMC (7) 2004: 6389-6394.
[7] FLECK S, LANWER S, STRABER W. A smart camera  approach to realtime tracking[C]. 13th European Signal Processing Conference,EUSIPCO, 2005.
[8] MEHRUBEOGLU M, BUI H T, MCLAUCHLAN L. Realtime iris tracking with a smart camera[C]. Proceedings of  SPIE, vol. 7871, Real-Time Image and Video Processing.  N. Kehtarnavaz and M. F. Carlsohn, Eds. 787104, EI,Feb. 2011.
[9] Chen Youngsheng, Su Chanhung, Chen Chusong, et al. Video-based eye tracking for autostereoscopic displays[J]. Optical Engineering, 2001,40(12):2726-2734.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。