謝子翰, 顧宏斌, 吳東蘇
(南京航空航天大學,江蘇 南京 211106)
在場景知覺的研究中,通過眼動追蹤技術可以實時記錄被測用戶的信息加工過程,且處理分析得到的眼動指標可以真實地反映信息加工過程中的心理機制,例如評估被測用戶的視覺注意力、情緒狀態(tài)和認知過程等信息[1]。眼動跟蹤技術是指估計被測用戶的注視行為,注視估計可以通過確定3D中的視線(Line of Sight,LoS)或2D中的注視點(Point of Regard,PoR)[2]來實現(xiàn)。其中,LoS描述了被測用戶在3D世界坐標中的位置信息,而PoR表示視距與場景相交的位置,通常指屏幕或注視的東西,例如控制面板等。在本文中,眼動行為、注視信息用屏幕上的PoR表示。在國內外,有許多專家將眼動跟蹤技術用于人機交互以及探索人的認知過程中[3],并作為界面元素位置分布合理性的參考反饋給機器、面板、界面的設計人員。其中,因飛行員在操作飛機的過程中所獲得的信息情報有80%~90%是通過人眼獲得的視覺情報[4],所以將眼動跟蹤技術應用于評估飛行學員在模擬機上的訓練績效是眼動技術應用的典型場景。例如,國內由柳忠起[5-7]帶領的北航科研團隊致力于研究眼動評估在航空領域的應用,并做出重大貢獻;國外Gomolka[8]、Li[9]等學者將眼動數(shù)據(jù)分析應用于飛行學員的訓練研究方面。
眼動追蹤技術需使用專用的眼動識別設備,現(xiàn)有的眼動識別設備分為半入侵的可穿戴式眼動儀和非入侵的遠程傳感式眼動儀兩大類。由于可穿戴式眼動儀約束被測用戶認知過程中的正常操作,可能會對被測用戶的認知行為造成干擾,且面對特殊場景不具備靈活性,而遠程傳感式眼動儀可以非入侵地捕捉被測用戶的眼睛,為用戶提供最自然和方便的交互,因此遠程傳感式眼動儀是本文的研究重點。
基于遠程傳感器的眼動追蹤方法分為基于特征的方法和基于外觀的方法。基于特征的方法是提取眼睛圖像上的局部特征,例如瞳孔中心和角膜上的反射來確定注視點[10];基于外觀的方法是使用圖像內容作為輸入,通過機器學習等手段直接建立圖像特征到注視點的映射關系。基于特征的方法大多需要特定的硬件配置,并利用眼生理學來分析、估計注視點相關的特征,在硬件系統(tǒng)的構建、實現(xiàn)過程中需要較高成本,且實驗條件較為苛刻,而基于外觀的眼動追蹤方法在使用普通單目攝像頭獲取2D人眼信息的條件下即可粗略推測人眼的視線方向和注視點位置,能夠顯著降低系統(tǒng)搭建成本,普適性強且易于實現(xiàn),因此本文采用基于外觀的方法構建眼動追蹤系統(tǒng)。
近幾年,有許多學者提出并采用多種基于外觀的眼動追蹤方法,例如使用內置筆記本攝像頭,基于被測用戶的三維外觀并結合頭部姿態(tài)信息和幾何眼睛特征,采用隨機森林回歸的方法估計注視點坐標[11];采用基于顏色強度變化的瞳孔檢測算法,分別使用AdaBoost級聯(lián)檢測器檢測人臉和使用霍夫變換對瞳孔進行定位,通過檢測瞳孔中心來估計用戶視線[12];使用毫米級RGB相機嵌入到正常眼鏡框中來捕獲眼睛的不同視圖并放入神經(jīng)網(wǎng)絡進行視線跟蹤,能達到1.79°的最小角度誤差[13];也有學者建立眼睛跟蹤數(shù)據(jù)集后使用卷積神經(jīng)網(wǎng)絡模型[14]、使用眼睛圖片和人臉姿態(tài)一同訓練的神經(jīng)網(wǎng)絡模型[15]分別進行訓練來估計眼動信息,并得到了較為滿意的實驗結果,揭示使用神經(jīng)網(wǎng)絡的外觀注視估計方法具有巨大潛力。但在以上研究中,結合了頭部姿態(tài)的算法通常將頭部姿態(tài)角度信息與瞳孔信息作為輸入放入機器學習模型中進行訓練,該做法加大了運算的時間成本和計算機功耗,且沒有考慮頭部姿態(tài)角度信息算法中容易出現(xiàn)單個傳感器視場小、鏡頭捕捉被遮擋、頭部姿態(tài)角度較大時丟失對瞳孔的捕捉等問題。
基于以上文獻研究,本文針對現(xiàn)有問題提出用多個遠程傳感器采集瞳孔和頭部姿態(tài)角度信息,采用深度學習方法建立瞳孔的圖像特征到注視點位置的映射,再基于頭部姿態(tài)角度創(chuàng)建加權融合方案對多組注視點進行融合得到最終整體注視點的方法,用簡單算法和多個低成本、低分辨率攝像頭實現(xiàn)大視場、靈活度高、適合復雜環(huán)境的眼動追蹤。
為實現(xiàn)本論文的目標,需設計一個非入侵式、靈活且適應大視角場景的多攝像機眼動追蹤系統(tǒng),該設計能夠從不同的視角同時獲取多種眼睛外觀來獲得大工作容積以允許較大的頭部運動。
為權衡精度和總成本,遠程傳感器設備采用的是4個最大分辨率為1920像素×1080像素、采樣率為30 Hz的網(wǎng)絡攝像頭,攝像機的編號從左到右依次為1、2、3、4,安置在分辨率為1920像素×1080像素、大小為24 in(對角線)的屏幕顯示器四周,如圖1所示。
圖1 屏幕顯示器上的坐標軸以及屏幕顯示器周圍攝像機位置分布
在這個實驗平臺中,被測用戶在距離屏幕顯示器約為40 cm的位置進行測驗。由于不需要頭部固定,因此被測用戶可以隨意轉動頭部來注視已標定的標準點。被測用戶注視標準點時,4個攝像機分別記錄被測用戶的圖像信息。
實驗設備還包括一張已標定的標準紅點網(wǎng)格圖,(x,y)代表屏幕像素點的位置信息,坐標的原點為屏幕顯示器左上方第一個像素點的位置,向下為y軸正方向,向右為x軸正方向,如圖1所示。被測用戶要求依次注視標準點,每次注視時間為10 s,每個標準點分別注視10次,記錄下每個攝像頭所估計的注視點坐標,并將數(shù)據(jù)進行整合。
該硬件配置的主要優(yōu)勢是能處理低分辨率眼睛外觀數(shù)據(jù),利用多種眼睛外觀以便在具有挑戰(zhàn)性的跟蹤條件下,特別是當被測用戶在傳統(tǒng)的單視圖外觀中由于大幅度的頭部運動、干擾引起的遮擋而受到阻礙時可靠地檢測注視特征。其大致實驗流程如圖2所示,虛線框內為單目攝像機眼動追蹤系統(tǒng)的大致步驟,該實驗先通過構造單目攝像機眼動追蹤系統(tǒng)得到各個攝像機所預測的注視點位置,再將其通過加權融合方案融合得到整體的注視點位置,從而構建多目攝像機眼動追蹤系統(tǒng)。
圖2 實驗流程
每個攝像機都有單獨的訓練集和訓練模型,估計的注視信息通過融合機制組合后輸出被測用戶整體的PoRs,設計方案如圖3所示。該系統(tǒng)實驗前不需要進行幾何場景校準,具有特殊的優(yōu)勢。
圖3 設計方案
實驗開始前,被測用戶依次用攝像機采集注視點坐標建立眼動數(shù)據(jù)集,并將得到的數(shù)據(jù)集依次用卷積神經(jīng)網(wǎng)絡進行訓練得到每個攝像機的注視點估計模型,由此構建單目攝像機眼動追蹤系統(tǒng)。記錄被測用戶相對每個單目攝像機的頭部轉動角度,基于頭部姿態(tài)角對多個單目攝像機所采集的注視點位置信息進行加權融合,從而構建多目攝像機眼動追蹤系統(tǒng)。
當多攝像機眼動追蹤系統(tǒng)獲得眼睛外觀并提取局部特征后,該特征就被用于估計注視點輸出。在本文中,注視估計基于卷積神經(jīng)網(wǎng)絡模型,使用圖4所示的卷積神經(jīng)網(wǎng)絡模型來訓練從低分辨率眼睛圖像到注視點位置的映射。該模型由2個卷積層、2個最大池化層和1個全連接層構成,卷積層的激活函數(shù)為ReLU函數(shù),全連接層的激活函數(shù)為Sigmoid函數(shù),該模型將大小為(12,44,1)圖像向量作為輸入,最終通過學習輸出線性回歸層的預測。網(wǎng)絡被訓練來共同預測注視點位置的(x,y)坐標。
圖4 卷積神經(jīng)網(wǎng)絡模型
單目攝像機眼動追蹤系統(tǒng)是基于深度學習原理,通過訓練大量數(shù)據(jù)集對注視點位置坐標進行回歸分析,因此實驗前需先構建眼動訓練數(shù)據(jù)集。不同被測用戶所構建的數(shù)據(jù)集可以進行合并與互通,數(shù)據(jù)集內的數(shù)據(jù)量越大,則通過神經(jīng)網(wǎng)絡訓練出來的模型魯棒性越好。訓練集的具體做法:被測用戶在靜態(tài)或自由頭部運動條件下隨機注視屏幕網(wǎng)格并獲取該網(wǎng)格屏幕像素點坐標,攝像機記錄下被測用戶注視時的每一幀圖像并從中裁剪出瞳孔圖像,將被測用戶的瞳孔圖像作為輸入特征,并將該像素點的位置坐標作為信息標簽,以此作為放入卷積神經(jīng)網(wǎng)絡的向量。為避免被測用戶造成人為誤差及減小實驗的偶然性,要求被測用戶全面收集屏幕上的網(wǎng)格,并增加被測用戶人數(shù),若實驗結果精度不佳,則酌情增加實驗人數(shù)與訓練樣本直至實驗結果符合應用要求為止。本文共采集10位被測用戶的訓練數(shù)據(jù)集一同放入卷積神經(jīng)網(wǎng)絡中進行訓練。
為避免過擬合和減少訓練時間成本,將得到的每一幀圖像進行剪裁,裁剪方法為Haar級聯(lián)分類器檢測,其主要做法是首先使用Haar-like特征做檢測,并使用積分圖對Haar-like特征求值,最后使用AdaBoost算法訓練區(qū)分人眼和非人眼的強分類器,然后使用篩選式級聯(lián)把強分類器級聯(lián)到一起,從而提高準確率。裁剪后的視頻幀保留左右眼瞳孔周圍圖像,圖像的標簽為被測用戶所注視的像素點坐標,如圖5所示。
圖5 數(shù)據(jù)集的特征和標簽
將構建好的數(shù)據(jù)集放入卷積神經(jīng)網(wǎng)絡中進行學習訓練,訓練完成的模型可根據(jù)輸入圖像輸出相應的注視點坐標信息。
頭部姿態(tài)估計是從數(shù)字圖像或視頻圖像中推斷出頭部相對攝像機的平移和偏轉運動。其關鍵步驟[16]包括:① 2D人臉關鍵點檢測;② 3D人臉模型匹配;③ 求解3D點和對應2D點的轉換關系;④ 根據(jù)旋轉矩陣求解歐拉角。
頭部姿態(tài)角估計精度的高低取決于人臉關鍵點檢測精度,即是否能準確定位人臉面部眉毛、眼睛、鼻子、嘴巴、面部輪廓等多個部位的關鍵點。本文采用的是Guo等[17]發(fā)布的開源人臉關鍵點檢測器PFLD,該檢測器采用主干網(wǎng)絡預測特征點和估計幾何信息的分支網(wǎng)絡組成的算法架構并設計新的損失函數(shù),同時解決了針對局部變化、全局變化、數(shù)據(jù)不平衡、計算量大等問題,具有在復雜環(huán)境下檢測精度高、運行速度快、模型輕量級的優(yōu)勢,其實用性經(jīng)過相關領域專家的肯定。
推算出圖像中頭部的二維關鍵點后,需旋轉三維標準模型至一定角度直到模型上三維特征點的二維投影與圖像上的關鍵點重合,此時的旋轉角度為所求的頭部姿態(tài)角。本文使用的三維標準模型為C++開源工具包dlib庫中的68標準點模型,該模型用68個特征點標志人臉的重要部位。可用基于梯度下降優(yōu)化的非線性最小二乘估計來建立頭部姿態(tài)角估計算法[18],其目標函數(shù)為
(1)
由于該算法較為成熟,在計算機視覺領域得到廣泛認可與應用,且頭部姿態(tài)的偏航角為本文首要研究對象,故只驗證其偏航角的精度。令被測用戶分別端坐于屏幕顯示器前的A、B、C點(如圖6所示),偏轉頭部至視線在屏幕顯示器邊緣,記錄下此時由屏幕顯示器中間的攝像機所記錄下的圖像并估計被測用戶的頭部姿態(tài)角。經(jīng)多次檢驗,被測用戶在A點時的偏航角在57°~61°之間,在B點時的偏航角在45°~48°之間,在C點時的偏航角在29°~31°之間。該結果符合本文對頭部姿態(tài)角估計精度的要求。
圖6 頭部偏航角估計精度檢驗
基于頭部姿態(tài)角的加權融合方案源于被測用戶的注視習慣,即大部分被測用戶在注視特定特征點時,首先會進行頭部旋轉以找到特定目標注視點的最舒適視角后再進行注視。當被測用戶相對攝像機的頭部姿態(tài)角越小,攝像機能捕捉到越全面、詳細的瞳孔信息,從而預測注視點坐標時精度更高,因此,將頭部姿態(tài)角作為確定注視點時的重要因素,其會影響加權融合方案的設計。由于屏幕顯示器尺寸有限,被測用戶在注視各個標準點時僅偏航角變化較大,因此本實驗中只選取被測用戶相對于攝像機的偏航角作為可靠性系數(shù),其會影響加權融合方案的權重分配??煽啃韵禂?shù)的計算公式為
(2)
當頭部相對攝像機的偏航角大于40°時,攝像機會丟失對瞳孔的捕捉,此時該計算機所估計的注視點位置不可靠,故將相對偏航角大于40°的攝像機的可靠性系數(shù)置為0。獲得每個攝像機的可靠性系數(shù)后,計算分配給每個攝像機的權重,權重分配的計算公式為
(3)
基于分配的權重系數(shù)對每個攝像機的注視點位置進行加權融合得到整體的注視點位置,即多目攝像機眼動追蹤系統(tǒng)評估得到的注視點位置,計算公式為
(4)
式中:λi為第i個攝像機的可靠性系數(shù);αi為被測用戶頭部相對于第i個攝像機的偏航角;c為攝像機數(shù)目;ωi為第i個攝像機的權重系數(shù);PoRi為第i個攝像機估計得到的注視點位置。
每一次測試都要求被測用戶依次注視標準點,每個注視點的注視時長為10 s,分別做10次測試。1次測試完成后可以導出5個數(shù)據(jù)表:4個單目攝像機數(shù)據(jù)表和1個多目攝像機數(shù)據(jù)表。單目攝像機數(shù)據(jù)表主要存儲時間戳、每個單目攝像機估計的注視點位置和頭部姿態(tài)角;多目攝像機數(shù)據(jù)表主要存儲時間戳、加權融合后的注視點位置。一次測試中數(shù)據(jù)表約有100行數(shù)據(jù),10次測試后,整合同一攝像機的數(shù)據(jù)表,約能得到1000行數(shù)據(jù),對此數(shù)據(jù)進行處理分析。
為準確分析確定每個攝像機的分配權重,需對單個攝像機進行性能評估。經(jīng)實驗測試,每個攝像機的精度與性能大致相同,在此選取具有對比意義的特定組數(shù)據(jù)進行展示與分析。根據(jù)被測用戶的注視習慣,當被測用戶注視標準點A、D、G時,被測用戶的頭部俯仰角約在0°、15°、30°之間浮動,因此令被測用戶分別注視標準點A、D、G并得到注視點數(shù)據(jù)集以得到單目攝像機在垂直方向上的魯棒性。圖7為1號攝像機所估計的注視點坐標熱點分布圖,橫縱坐標分別為注視點位置坐標的x軸和y軸,紅點為標準點的確切坐標,紅點周圍的曲線代表可接受的注視點偏移程度,這個偏移程度是根據(jù)眼動儀可接受的誤差、實驗環(huán)境條件、應用場景要求而得到的,本實驗的預期應用場景為飛行模擬器內駕駛學員的訓練績效分析,因此將偏移程度限制在據(jù)標準點5 mm范圍內以滿足能夠檢測到學員對各個儀表的注視情況的要求。定義精度為落入曲線內的注視點占總注視點的比例。
圖7 被測用戶分別注視A、D、G時的注視點分布熱點圖
從圖7中可以大致看出攝像機精度隨標準點離攝像機的垂直距離的增加而降低。計算每個注視點與標準點之間的距離,得到距離的概率分布直方圖(如圖8所示),橫坐標為注視點與標準點間的距離,縱坐標為該距離在采樣集里的概率分布,虛線為可接受誤差距離。
圖8 被測用戶分別注視A、D、G時的距離概率分布直方圖
如圖8所示,單個攝像機的最高精度可達到90%,攝像機精度隨標準點與攝像機之間的垂直距離的增加而緩慢降低,每次減少5%~15%,這是由于隨著垂直距離的增加,被測用戶相對攝像機的頭部姿態(tài)俯仰角逐漸增大,攝像機能捕捉到的有效瞳孔信息有小部分被遮擋,導致攝像機不能有效分析注視點位置。
根據(jù)被測用戶的注視習慣,當被測用戶注視標準點A、B、C時,被測用戶的頭部偏航角在0°、30°、60°之間浮動,因此令被測用戶分別注視標準點A、B、C并得到數(shù)據(jù)集以測試單目攝像機在水平方向的魯棒性。圖9、圖10為1號攝像機所估計的注視點分布熱點圖和距離概率分布圖,可以看出單個攝像機的精度隨標準點與攝像機之間的水平距離的增加而大幅降低,并丟失眼動追蹤功能。
圖9 被測用戶分別注視A、B、C時的注視點分布熱點圖
圖10 被測用戶分別注視A、B、C時的距離概率分布直方圖
如圖11所示,對比垂直距離和水平距離增加時的精度變化可以得出,單個攝像機相對于水平距離的魯棒性極差,這是由于被測用戶相對攝像機的頭部姿態(tài)偏航角增大,單個瞳孔被面部五官全部遮擋,導致攝像機捕捉不到瞳孔信息,如圖12所示。因此,當對多個攝像機進行權重分配時,應將頭部姿態(tài)偏航角作為重要影響因子考慮進去。
圖11 被測用戶分別注視A、B、C、D、G時的精度折線圖
圖12 被測用戶注視不同注視點時攝像機所拍下的瞳孔圖像
結合2.3節(jié)的加權融合方案得到表1所示的權重系數(shù)。
表1 被測用戶注視不同標準點時攝像機所分配的權重系數(shù)和相對偏航角
可以看出,當被測用戶注視不同的注視點時,隨著偏航角的改變,每個攝像機所分配得到的權重也隨之改變,偏航角越大,所得到的權重越小,當偏航角大于一定角度時,該攝像機所分配得到的權重為0。通過融合多個攝像機所估計的注視點得到新的數(shù)據(jù)點集,重新繪制其熱點圖與距離概率分布直方圖,如圖13所示。
圖13 被測用戶分別注視A、B、C、D、G時的注視點分布熱點圖和距離概率分布直方圖
可以看出,多目攝像機系統(tǒng)對每個標準點的所估計的注視點精度在90%~95%之間,且隨著頭部姿態(tài)俯仰角、偏航角的增加,多目攝像機的精度不會受太大影響。當頭部姿態(tài)角較小時,多目攝像機和單目攝像機的精度一致,當頭部姿態(tài)角為30°時,其精度相比于單目攝像機提高了5%~15%,當頭部姿態(tài)角為60°時,其精度保持不變,并保持眼動追蹤功能,如圖14所示。
圖14 被測用戶分別注視A、B、C、D、G時單目攝像機與多目攝像機的精度折線圖
這是由于當被測用戶因注視不同標準點導致頭部姿態(tài)角過大時,單目攝像機丟失對瞳孔的捕捉,而對于多目攝像機眼動跟蹤技術,當頭部姿態(tài)角過大時該攝像機的權重系數(shù)會降低,將更多的權重分配給頭部姿態(tài)角度小的攝像機,從而計算出更準確的注視點坐標。
因此,相比于使用單目攝像機,多目攝像機系統(tǒng)整體精度相對穩(wěn)定,且對頭部姿態(tài)角度的變化有較好的魯棒性,可以靈活地測量用戶的頭部運動。
本研究針對目前存在的單個遠程傳感器視場小、容易被遮擋和基于外觀的眼動追蹤方法輸入樣本復雜、計算成本高的問題,進行了基于深度學習的多目攝像機眼動追蹤系統(tǒng)及其算法設計。該系統(tǒng)硬件僅需要多個低分辨率攝像機,且攝像機的數(shù)目和位置可根據(jù)實驗場景靈活調動,打破了實驗空間布局的局限性,該系統(tǒng)先對被測用戶的眼動信息和頭部姿態(tài)分別進行評估,之后基于頭部姿態(tài)角的加權融合方案得到精度更高的注視點位置信息,從而降低了算法的復雜度和運算成本。通過對實驗結果分析得出,該系統(tǒng)能夠高精度地估計被測用戶的注視點位置,并對用戶大角度頭部運動具有良好的魯棒性,在頭部姿態(tài)角較大時,多目眼動追蹤系統(tǒng)的精度仍保持在90%左右。由于目前在數(shù)據(jù)采集過程中仍存在人為誤差,導致多目眼動追蹤系統(tǒng)的精度僅能滿足追蹤飛行學員對飛行儀表的注視情況,在未來的研究中,擬將多目眼動跟蹤技術與基于特征的眼動追蹤方法相結合,采用紅外攝像機來實現(xiàn)較暗環(huán)境下的眼動采集,從而達到更高的追蹤精度,并應用于飛行模擬機上以探究該技術在模擬機復雜、幽暗環(huán)境下的適用性。