王宇鴻 王健慶
摘? 要:為開展視點定位與跟蹤研究,實現(xiàn)單攝無光源的基于視點跟蹤技術(shù)的人機交互系統(tǒng),文章利用質(zhì)心法來進行瞳孔定位,并使用幾何模型映射方式校準人眼狀態(tài)和屏幕坐標的對應(yīng)值,最后實現(xiàn)了較為準確的視點坐標提取與追蹤及相應(yīng)的應(yīng)用功能。該算法簡單易行,具有較高穩(wěn)定性和準確性,可應(yīng)用于AR、VR等設(shè)備進行輔助操控,也可應(yīng)用于醫(yī)療護理等領(lǐng)域,輔助失能人士進行有效操控,提高其生活質(zhì)量和便利性。
關(guān)鍵詞:視點跟蹤;瞳孔定位;人機交互
中圖分類號:TP391.4? ? ? 文獻標識碼:A 文章編號:2096-4706(2020)17-0020-04
Abstract:Objective to research on gaze positioning and tracking,and implement an human-computer interaction system based on gaze-tracking with a single camera of no light source. Method the average-force algorithm is used to locate pupils,and geometric model mapping is used to calibrate the corresponding value of human eye state and screen coordinates. Result the accurate gaze positioning and tracking with according application functions are implemented. Conclusion the proposed algorithms are easy to be realized with high stability and accuracy,with can be applied in AR,VR devices for auxiliary control,or in medical and nursing fields to facilitates the disabled to realize effective control,to improve their life quality and convenience.
Keywords:gaze tracking;pupil locating;human-computer interaction
0? 引? 言
視覺在大部分人機交互方式中都有著重要的地位,利用視點跟蹤技術(shù)將視覺信號直接轉(zhuǎn)換為對計算機的操作,將會使人機交互模式更加便利自然,同時也能夠滿足一些特殊人群的需求,這項技術(shù)目前在工業(yè)、游戲、醫(yī)療等領(lǐng)域都有著較為廣泛的運用。在當前中國老齡化程度不斷加深的情況下,本研究在本單位醫(yī)學視覺、康復學、健康護理等研究的基礎(chǔ)之上,面向無人照料的老年人等失能人群,開展基于視點跟蹤技術(shù)的智能化健康護理技術(shù)的理論研究和相應(yīng)的應(yīng)用系統(tǒng)開發(fā)研究。現(xiàn)有研究中,大多數(shù)視點跟蹤技術(shù)對設(shè)備的計算能力要求都比較高。本文中筆者利用了人眼圖像處理結(jié)合幾何模型的方式實現(xiàn)了對人眼視點的跟蹤,算法可以使用較低的設(shè)備成本實現(xiàn),同時有較高的用戶自由度和精度,具有較好的實用性。
1? 研究意義和現(xiàn)狀分析
1.1? 研究意義
視點跟蹤技術(shù)正在快速發(fā)展,人類對新型人機交互的需求也在不斷擴大,若能將兩者結(jié)合,創(chuàng)造出一種以視點跟蹤技術(shù)主導的新型人機交互系統(tǒng),將會給計算機行業(yè)帶來一場變革[1]。目前,視點跟蹤技術(shù)以輔助現(xiàn)有技術(shù)的方式被廣泛運用于各大行業(yè)。尤其是在醫(yī)療領(lǐng)域中,一些已經(jīng)喪失操作傳統(tǒng)設(shè)備能力的失能人士,如果使用集成視點跟蹤技術(shù)的IO設(shè)備,用眼控的方法代替鼠標和鍵盤的輸入方式,就有可能實現(xiàn)電子設(shè)備的無障礙使用,滿足其日常人機交互需求。人的視線方向變化和視點軌跡還可以反映出人的心理狀態(tài)與精神狀態(tài),若能將病人的視覺信息記錄并加以分析,對一些有心理疾病的患者的治療來說也是有益的[2]。顯然,視點跟蹤技術(shù)的發(fā)展與使用是大勢所趨,越來越多的研究將其融入人機交互技術(shù)之中,使其成為一種新型的、自然的、高效的全新交互模式[3]。目前的視點跟蹤技術(shù)為得到較高的精度,大多需要用戶佩戴特殊設(shè)備,即常說的侵入式設(shè)備,這樣的設(shè)備可能會給用戶在心理層面上帶來不適感[4]。筆者針對此問題提出一種非接觸式且設(shè)備成本較低的基于視點跟蹤技術(shù)的的人機交互系統(tǒng)。
1.2? 視點跟蹤技術(shù)
視覺信息在人與外界的交互中占比超過80%,視覺信息處理在人與外界交流時非常重要。人類對眼動的研究可以追溯到數(shù)百年前[5],但第一臺眼動儀的誕生距今不到100年。視點跟蹤技術(shù)的出現(xiàn),突破了傳統(tǒng)基于鍵盤鼠標的交互模式,以智能化的人機交互技術(shù)開創(chuàng)新的交互方式。目前視點跟蹤技術(shù)日趨成熟,逐漸被廣泛應(yīng)用于各項領(lǐng)域。
視點跟蹤技術(shù)一般可以被分為兩種;一種是通過穿戴或配置特殊設(shè)備,使用紅外線等一些特殊光源,通過瞳孔-角膜反射法等技術(shù)獲取視線信息。這種方法一般精度較高,但對用戶有一些限制;另一種則是基于圖像處理技術(shù),通過攝像頭采集用戶面部圖像,再利用圖像處理程序,估計用戶視點位置,這種方法對用戶限制小,但精度相對較低[6]。
目前,視點跟蹤技術(shù)發(fā)展迅速,越來越多的研究成果不斷出現(xiàn),如張闖等利用亮瞳現(xiàn)象,提出了一種基于多通道圖像的高精度亞像素特征參數(shù)提取方法[7],占艷團隊實現(xiàn)了一種以Hough變換為基礎(chǔ)的瞳孔定位算法[8],李擎團隊提出了一種更精確的瞳孔檢測算法[9]。
視點跟蹤技術(shù)在快速發(fā)展的同時,目前仍面臨著不少問題,主要有:
(1)數(shù)據(jù)采集的有效性無法保證,大量累積數(shù)據(jù)處理分析困難;
(2)程序?qū)τ脩粜袨檫M行數(shù)據(jù)分析時,無法確定用戶的具體目的,因為用戶眼部動作并非每一個都是有意義的;
(3)大部分視點跟蹤技術(shù)無法同時保證用戶的自由度和視點的精度;
(4)視線信息與用戶其他信息不能有效整合以進一步完善系統(tǒng)功能[10]。
現(xiàn)在看來,視點跟蹤技術(shù)逐漸成熟,但仍有很大的完善空間,尤其是在商用、民用領(lǐng)域。未來視點跟蹤技術(shù)的發(fā)展應(yīng)該是向著高用戶自由度、低使用成本、高反饋精度的方向進一步提升。
2? 視點跟蹤技術(shù)原理
2.1? 質(zhì)心法求瞳孔中心
虹膜圖像特征區(qū)域一般近似橢圓,其中心都可用質(zhì)心來表示。首先利用輪廓檢測算法對已獲得的虹膜圖像二值化圖進行邊緣檢測,利用檢測到的邊緣計算輪廓圍成區(qū)域的零階矩和一階矩,來計算質(zhì)心。圖像矩mji的計算公式為:
式中,array(x,y)表示矩陣中在坐標(x,y)的值(如灰度或二值化值),可以看出當i和j同時為0時可以得出輪廓圖像的零階矩,即圖像的灰度總和。將j和i分別置1可以得到圖像的兩個一階矩,即圖像灰度分別在x,y軸上的灰度分布中心。
從如下公式中可以分別通過x與y的一階矩和零階矩的比來得出輪廓包含所有點橫縱坐標的平均數(shù),即質(zhì)心的橫縱坐標:
由于橢圓和圓都是中心對稱圖形,可以很簡單地將質(zhì)心看作是橢圓的中心,即:
2.2? 視點估計方法
得到瞳孔中心坐標I(xI,yI)與人眼圖像中心坐標E(xE,yE)后,可與屏幕參數(shù)建立關(guān)系模型,如圖1所示。
人眼圖像中心坐標可視為靜止不動的參考點,當眼球運動時瞳孔位置相對攝像頭圖像中心位置就會發(fā)生改變,可以計算出水平、垂直方向上改變量,并對雙眼同時進行處理,將求得改變量分別取均值得到水平、垂直方向的平均改變量H、V:
能夠得到視線在水平、垂直方向上改變的單位值Hratio與Vratio,將這兩個值視為視線方向。然后對單位值與屏幕進行校準,分別得到兩個改變量的最大值max(Hratio)、max(Vratio)與最小值min(Hratio)、min(Vratio)。將兩個方向上最大最小值的差與屏幕的長(Xscreen)、寬(Yscreen)的相除(單位為pixel),分別求得水平垂直兩方向上眼球坐標改變量與屏幕上視點相對于屏幕中心改變量的比值RH與RV:
進而可得到注視點G的坐標:
G((max(Hratio)-Hratio)×RH(Vratio-min(Vratio))×RV)
3? 系統(tǒng)實現(xiàn)與實驗驗證
3.1? 系統(tǒng)結(jié)構(gòu)與實現(xiàn)
系統(tǒng)采用了單攝像頭無光源的模式,攝像頭置于顯示器頂部中央,用戶配合系統(tǒng)提示進行參數(shù)校準后即可使用視點跟蹤功能。系統(tǒng)結(jié)構(gòu)如圖2所示。
人在注視物體時,通過變動眼球方向,實現(xiàn)視點的改變,眼球的狀態(tài)與視點的位置之間存在著映射的關(guān)系。因此,建立眼球狀態(tài)與視點坐標模型,再將得到的模型與視點之間建立映射關(guān)系,就能實現(xiàn)利用視點進行人機交互。系統(tǒng)主要分為人眼圖像分析處理和視點估計的映射算法兩部分。
3.1.1? 人眼圖像分析處理
利用dlib的特征點提取器從攝像頭獲取圖像中的臉部和眼部,并判斷采集數(shù)據(jù)是否合理(如:眼部是否包含在臉部中,是否將嘴巴或鼻子識別為眼睛等),截取眼部圖片。環(huán)境復雜光線會在虹膜上形成的亮斑,這些亮斑會影響瞳孔中心定位的準確,需要使用圖像腐蝕的方法將其去除。得到如圖3所示的虹膜圖像。
攝像頭記錄的虹膜圖像在眼球運動中大多以橢圓和圓的形狀出現(xiàn),且具有較低的灰度值(灰度值越低越黑)。首先用合適的閾值對虹膜圖像進行二值化得到如圖4所示的二值化圖像,提取到虹膜區(qū)域,對于閾值的處理系統(tǒng)采用了閾值優(yōu)化的方式來保證二值化圖片的可用性。
使用質(zhì)心法進一步處理圖4即可得到瞳孔中心。至此,人眼特征參數(shù)提取完畢,圖5為人眼瞳孔中心坐標參數(shù)提取結(jié)果。
3.1.2? 視點估計功能實現(xiàn)
根據(jù)獲取到的瞳孔中心坐標、攝像頭圖像中心坐標參數(shù),與屏幕數(shù)據(jù)校準,瞳孔中心活動范圍可視為平面,且與屏幕相對平行,將所得數(shù)據(jù)代入視點G坐標公式中,即可得到視點坐標。實驗中筆者所用系統(tǒng)顯示器分辨率為1 920 pixel ×1 080 pixel。
偽代碼實現(xiàn)如下:
if ver_direction > min(VRatio):
gaze_y = (ver_direction – min(V))* RV
if hor_direction < max(HRatio):
gaze_x = (max(H)- hor_direction)* RH
3.1.3? 張嘴點擊檢測實現(xiàn)
為實現(xiàn)系統(tǒng)操控功能,筆者通過張嘴檢測實現(xiàn)在定位點相應(yīng)的點擊功能。dlib人臉姿勢估計模型得到的68個人臉特征點中,序號為47~67的點位為嘴部特征,其中序號為60~67的點位為內(nèi)嘴唇特征,可以有效判斷嘴巴的開閉,47號點位與54號點位為嘴巴的左右兩邊的極點,利用內(nèi)嘴唇特征與嘴部寬度的比值作為嘴部開閉的特征值,特征檢測圖像如圖6與圖7所示。
設(shè)置一個閾值t,當嘴部開閉的特征值超過t時,就觸發(fā)點擊功能。
3.2? 算法精度測試
為了驗證本系統(tǒng)的精度,筆者對系統(tǒng)屏幕進行定標,將屏幕平均分為9個部分,取每個部分的中心坐標,將九個定標點作為測試點,記錄測試者看向各測試點時系統(tǒng)所得注視點坐標值。
共測試得到180組數(shù)據(jù),計算(視點的實際坐標與測得坐標的差值為一組數(shù)據(jù))得到x軸平均誤差42 pixel,y軸平均誤差21 pixel,x軸最大誤差212 pixel,y軸最大誤差170 pixel。
3.3? 誤差分析
3.3.1? 輸入圖像質(zhì)量造成的誤差
傳統(tǒng)攝像頭通常成像質(zhì)量不高,會出現(xiàn)眼部圖像較為模糊的情況,這直接影響了人眼圖像的處理過程,以及后續(xù)視點估計的準確性。
3.3.2? 頭部運動造成的誤差
在測試的過程中,測試者頭部位置多少會有些變動,此時將會造成人眼圖像的偏移與變形甚至模糊,這將大大降低人眼檢測的精度。本系統(tǒng)在設(shè)計原則上希望測試者將慣用眼置于校準時的位置,且不要有大的位移。
3.3.3? 眼部圖像處理閾值估計的誤差
研究采用多次估計取平均值的方式來減小閾值帶來的誤差,但此方法不夠穩(wěn)定。
4? 總結(jié)
視點跟蹤技術(shù)已經(jīng)有了不錯的技術(shù)基礎(chǔ)和用戶基礎(chǔ),但由于現(xiàn)實情況的復雜多變以及視點跟蹤技術(shù)自身的局限性,其在商業(yè)化和普及化的道路上還有很長的路要走。本文提出的一種基于視點跟蹤的人機交互系統(tǒng),在瞳孔定位分析算法,和視點估計算法進行了一些嘗試,提出了可行的方案,本系統(tǒng)具有使用成本低、視點跟蹤精度高、算法簡潔的特點。
5? 結(jié)? 論
本文實現(xiàn)了一種基于圖像處理的非接觸式視點跟蹤技術(shù)。該算法較為容易實現(xiàn)而且使用者不必花費過多的成本購買設(shè)備,并且實驗也驗證了本方法的可行性。在日常使用的環(huán)境下,系統(tǒng)有較高的穩(wěn)定性和準確性。本研究可以較為便捷地滿足失能人士對電子產(chǎn)品的一些基本操控需求。后續(xù)將進一步提高算法的精度,以實現(xiàn)更為精準的視點定位,以提高應(yīng)用操控的準確性,同時將該技術(shù)與傳統(tǒng)交互設(shè)備整合,提升系統(tǒng)的泛用性。
參考文獻:
[1] 栗戰(zhàn)恒,鄭秀娟,劉凱.移動設(shè)備視線跟蹤技術(shù)研究進展 [J].計算機工程與應(yīng)用,2018,54(24):6-11+148.
[2] 周小龍,湯帆揚,管秋,等.基于3D人眼模型的視線跟蹤技術(shù)綜述 [J].計算機輔助設(shè)計與圖形學學報,2017,29(9):1579-1589.
[3] JACOB R J K,KARM K S. Eye tracking in human-computer interaction and usability research:Ready to deliver the promises [J].Mind,2003,2(3):573-605.
[4] HENNESSEY C,NOUREDDIN B,LAWRENCE P D. A single camera eye-gaze tracking system with free head motion [C]//ETRA06:Proceedings of the 2006 symposium on Eye tracking research & applications. New York:Association for Computing Machinery,2006:87-94.
[5] 趙新燦,左洪福,任勇軍.眼動儀與視線跟蹤技術(shù)綜述 [J].計算機工程與應(yīng)用,2006(12):118-120+140.
[6] 馮成志,沈模衛(wèi).視線跟蹤技術(shù)及其在人機交互中的應(yīng)用 [J].浙江大學學報(理學版),2002(2):225-232.
[7] 張闖,遲健男,邱亞飛,等.視線追蹤系統(tǒng)中特征參數(shù)提取方法研究 [J].中國圖象圖形學報,2010,15(9):1299-1308.
[8] 占艷,韋昌法,劉青萍,等.基于Hough變換的虹膜圖像預(yù)處理研究 [J].軟件導刊,2016(10):167-169.
[9] 李擎,胡京堯,遲健男,等.視線追蹤中一種新的由粗及精的瞳孔定位方法 [J].工程科學學報. 2019,41(11):1484-1492.
[10] 李曉麗,黃敏,莫冰.視線跟蹤法——網(wǎng)絡(luò)用戶信息行為研究的新方法 [J].圖書館理論與實踐,2009(8):25-29.
作者簡介:王宇鴻(1998—),男,漢族,浙江杭州人,本科生,研究方向:計算機科學與技術(shù);通訊作者:王健慶(1975—),男,漢族,河北唐山人,講師,博士,主要研究方向:計算機視覺、模式識別等。