范子健 許 煒 劉非凡 程文青
(華中科技大學電子信息與通信學院 武漢 430074)
基于Kinect的學習者頭部姿態動態識別方法
范子健 許 煒 劉非凡 程文青
(華中科技大學電子信息與通信學院 武漢 430074)
在線學習漸漸成為一種新型的學習方式,如何有效評價學習效果是在線學習所面臨的新挑戰。目前一種較為流行的方案是利用Kinect體感數據對學習者學習過程中的姿態識別進而判斷學習者的狀態,以實現學習過程的監測。其中,頭部姿態是人體姿態識別的重要內容。然而由于學習者身高或者坐姿的不同,傳統基于預定閾值進行低頭、側頭等行為判別的方法在實際應用中存在較大的誤差。有鑒于此,論文提出了一種學習者姿態的動態識別方案,方案利用Kinect設備獲得學習者的頭部位置動態估算出頭部偏轉判別閾值。實驗結果表明,該方案可在學習者身體移動情況下對其頭部姿態進行有效識別。
Kinect; 頭部姿態識別; 動態閾值
Class Number TP391.41
隨著互聯網的興起,在線學習作為一種便捷新穎的學習方式,在人們的日常學習工作中日益扮演著愈發重要的角色[1~2]。與傳統學習方式相比,在線學習擺脫了時空的約束,充分尊重學生個性、便于激發學習動機,其針對性強、成本低,具有廣闊的發展前景[3]。然而,如何有效評價在線學習過程中學習者的行為狀態,對于構建合理、完善的在線學習評價體系起著關鍵的作用。
近來,針對在線學習的方式,已有研究關注在線學習過程學習者的注意力狀態,同時針對在線學習過的評價問題[4~5],提出了利用人體姿態異常判別學習者狀態的思路[6]。早期姿態識別主要依賴視頻采集學習者的圖像,進而對圖像進行智能化分析。雖然二維圖像數據的分析處理[7]是目前的研究熱點之一,但是在實際應用中容易受到環境光亮度、遮擋、面部表情變化等影響,魯棒性較差[8]。深度傳感器的問世(例如微軟研發的Kinect傳感器)給人的體感數據測量提供了更加精確的技術手段,已被廣泛應用于人體姿態識別[9]。
傳統基于深度信息的姿態識別研究通常采用經驗選定單一閾值,通過閾值比對的方法判別行為動作[10]。頭部姿態在學習者的行為狀態識別中占據重要地位,頭部姿態反映了學習者注意力停留位置。然而,由于現實中學習者的差異性,設備擺放位置的不確定性,傳統簡單的閾值設定方案通常會產生明顯的誤差,導致系統的適用性較低,成為了影響其廣泛應用的主要障礙。比如中小學生利用電子書包學習的場景下,電子書包一般都是平放或者較低傾斜角放置在桌面上,這與傳統成年人豎立顯示器有很大不同。成年人與中小學生在身高以及學習行為習慣上也有很大不同。
有鑒于此,針對傳統方法中利用經驗設定單一閾值方案的不足之處,本文提出了一種判別閾值的動態調節方案。該方案利用Kinect實時獲得學習者頭部位置坐標,進而通過空間幾何實時計算出頭部偏轉狀態的判別閾值。較之傳統方案能夠有效避免根據經驗預定閾值帶來的識別誤差,更具有科學性。
2.1 在線學習中的頭部姿態
頭部姿態在學習者的注意力識別方面具有重要意義[11]。因此,本文提出了一個基于在線學習場景頭部姿態識別系統。如圖1所示,一個典型的在線學習頭部測量場景中,學習者坐在電腦前學習網絡課程,Kinect設備放置在顯示器的上方對學習者的頭部姿態進行測量。

圖1 基于Kinect的在線學習頭部姿態測量系統
本文的主要目的在于鑒別學習者是否關注著屏幕。如圖1所示,當學習者頭部中心朝向屏幕上任何一點,比如P1,那么即可認為學習者關注著屏幕;與之相對應,當學習者頭部朝向屏幕范圍之外的點,比如P2,即可認為學習者注意力落在屏幕之外。根據這種方式,就可以通過頭部姿態估測出學習者的注意力是否集中在屏幕之上。
值得注意的是,學習者的眼睛關注的位置和頭部偏轉朝向并非總是一致的。例如當學習者面朝計算機屏幕,卻斜著眼睛看向其他位置。但是這類姿勢缺乏舒適性,學習者很難長時間維持。因此,本方案不考慮此類異常行為。事實上,作為學習者行為測量的支撐手段,只需要大致分析學習者的面部朝向,不需要精確的識別學習者在屏幕上的關注點位置。
2.2 基于Kinect的測量系統
Kinect是一款微軟開發的體感設備。Kinect主要包括三個組件:紅外發射器,RGB彩色攝像機以及紅外攝像機[12]。其中紅外發射器與紅外攝像機共同構成了3D結構光深度傳感器。通過對深度數據以及彩色數據的分析,可以得到使用者的骨骼以及頭部等體感信息。
如圖1所示,Kinect的測量結果均建立在Kinect設備自定義的坐標系(簡稱設備坐標系)基礎之上。所謂設備坐標系以設備中心點為原點,以設備水平向右為X軸的正方向,垂直設備向上為Y軸正方向,垂直XY平面指向學習者的為Z軸正方向。Kinect能夠得到學習者在該坐標系下的頭部中心坐標。同時也能得到學習者的頭部偏轉角度。如圖2所示,其中繞X軸的偏轉角度為pitch,即俯仰角;繞Y軸偏轉的角度為yaw,即側頭角度;繞Z軸的偏轉角度為roll,即斜轉頭的角度。

圖2 基于Kinect的頭部轉向示意圖
由于隨著學習者頭部位置的變化,關于學習者關注點是否落在屏幕上的角度判別閾值也是不斷變化的。因此,在實際的監測過程中,上述Kinect得到的測量數據無法直接用來估測學習者的頭部偏轉情況。為了解決該問題,本文提出了一種動態閾值調節方案。
3.1 系統框架
傳統的頭部姿態識別系統首先利用Kinect設備測量學習者的頭部偏轉角度,然后與預設定的單一經驗閾值比較,從而判別學習者的頭部姿態。然而,如同前文所述,這種利用經驗值來決定閾值的方式存在著適用性較低的問題。因此,為了實現動態閾值調節方案,本文提出了一個動態頭部姿態判別系統。系統的工作流程如圖3所述。本系統在傳統方案基礎上增加了一個動態閾值計算模塊。該模塊基于Kinect實時測量頭部坐標,通過空間坐標計算出當前姿態下的學習者看不同方位的實際偏轉閾值。

圖3 動態閾值調節判別流程
3.2 理想場景下頭部測量
首先,本文從最簡單的場景開始討論。如圖4所示,學習者頭部中心點H位于設備坐標系Z軸上時,坐標為(0,0,z)。這種情況下,Kinect中心點與設備坐標系原點重合。

圖4 理想場景下的頭部閾值計算
通常情況下,學習者注意力集中在屏幕上,因此本文選擇屏幕邊緣作為系統的異常行為判別邊界。如圖4所示,選取圖中αl,αr,βd作為頭部偏轉的閾值。當測量的頭部偏轉角度大于偏轉閾值的時候,即認為學習者關注于屏幕之外的地方。假設屏幕的高度為h,寬度為w,那么可以通過下式計算閾值。
(1)
3.3 頭部偏轉角度校準
在實際場所下,學習者很難保持頭部中心一直在Z軸上。因此,隨著頭部偏離Z軸,Kinect的測量值無法直接用做頭部偏轉角度數據。本節則主要討論頭部中心移動帶來的頭部偏轉角度校準的問題。
如圖5所示,學習者眼睛關注于屏幕上的P點,這時Kinect測量得到的頭部偏轉角度αk,βk。然而,實際的頭部偏轉角度應該是圖中所示α,β。因此,由相應的幾何推導可以得出兩者的轉換公式如下。

圖5 實際場景下的頭部偏轉角度測量
(2)
同時,如圖6所示,由于頭部位置(x,y,z)的移動,當頭部中心不在Z軸上時,相應的偏轉閾值也需要進行校準。通過幾何推導可以得出閾值校準公式如下。

圖6 實際場景下的頭部偏轉閾值計算
(3)
3.4 坐標系旋轉

圖7 坐標系旋轉示意圖
進一步,考慮到實際使用場景下Kinect的放置會有一定的傾角,在此假設傾角為γ。如圖7所示,為了便于分析,本文定義一個學習者空間坐標系:以計算機顯示器的中位線與地面的交點為原點,顯示器水平向右為X軸正方向,豎直向上為Y軸正方向,垂直顯示器指向學習者的方向為Z軸正方向。后續討論默認為學習者空間坐標系。

(4)
其中R(γ)為旋轉矩陣。

(5)
將式(5)帶入式(4),即可得到相應的頭部坐標。
x=xk
y=ykcosγ-zksinγ+hk
z=yksinγ+zkcosγ
(6)
結合式(6)與式(3),同時考慮到顯示器下沿在用戶空間的坐標與設備空間不一致,即可獲得頭部偏轉閾值與設備坐標系下的頭部坐標的關系式。
(7)
結合式(2)與式(6),同時考慮設備初始偏轉角γ,即可獲得頭部偏轉角度在學習者空間下的校準值。
(8)
3.5 閾值取值范圍討論
由前文的討論可以發現,偏轉閾值的設定主要取決于學習者的頭部位置坐標。如圖8所示,在實際場景下,頭部坐標的有效取值空間受限于Kinect設備的檢測范圍以及學習者的活動范圍,兩者的交集決定了頭部坐標的有效取值空間。由此,偏轉閾值也存在一定的動態范圍。下面本文將結合實際的場景,討論閾值的取值范圍。

圖8 Kinect檢測區域示意圖
首先,在線學習的學習者的活動范圍局限在電腦桌前。假設左右移動的最大距離為l,前后移動范圍為[di,da],則
-l≤x≤l
di≤z≤da
(9)
此外,受到紅外攝像頭測距距離和內置攝像頭的視野限制,Kinect設備的檢測范圍也是有限的。假設Kinect距離地面的高度為hk,檢測空間的水平張角為θ1,豎直方向張角為θ2,深度范圍為d1~d2。因此,頭部坐標(x,y,z)需要滿足如下條件:
-d1tan(θ1/2)≤x≤d1tan(θ1/2)
hk-ztan(θ2/2+γ)≤y≤hk+ztan(θ2/2-γ)
d1≤z≤d2
(10)
綜上,頭部坐標的有效取值空間為

max(-l,-d1tan(θ1/2))≤x≤min(l,d1tan(θ1/2))
以一個典型的在線學習場景為例,場景設置和Kinect設備參數如表1所示,則對應的學習者頭部坐標的取值范圍為
-0.36≤x≤0.36
0.78≤y≤1.38
0.5≤z≤1.0
相應地,偏轉角度的閾值取值范圍:
-12°≤al≤51°
-51°≤ar≤12°
-51°≤b≤-1°
為了驗證所述方案的有效性,本文搭建了一個在線學習場景進行測試。
4.1 場景設置
單人在線學習的測試實驗場景如圖9所示。其中,顯示器寬w=0.5m,高h=0.44m,學習者頭部距離地面的高度為h0。Kinect距離地面的高度hk=1.2m,距離學習者的水平距離d,Kinect的初始俯角γ=10°。

圖9 實驗場景示意圖
實驗分為可行性驗證、閾值計算方法驗證以及系統識別效果測試三個部分。可行性驗證主要分析Kinect測量值的可信度;閾值計算方法驗證主要討論本文提出的閾值計算方法的合理性;最后的系統識別效果測試進一步驗證了基于動態閾值的頭部姿態識別方法的有效性。
4.2 可行性驗證
為了驗證Kinect得到的頭部偏轉數據的可信度,本文針對低頭與側頭兩種情況各自進行了100組測試,比較Kinect測量值與實際數據之間的關系。經統計分析,測試結果如圖10所示。
圖10橫坐標表示偏轉角度理論值,縱坐標為Kinect測量值。從圖示結果可知,最小二乘法線性擬合優度分別為0.9932與0.9975,回歸直線對數據的擬合很好。同時回歸直線的斜率約為1,所以通過Kinect得到的頭部偏轉角度是可信的。


圖10 Kinect測量數據可行性實驗結果
4.3 閾值函數效果驗證
本部分進行了兩組實驗,分別測量了離Kinect的水平距離d、頭部距離地面的高度h0與低頭閾值的關系。兩組共同驗證動態閾值計算方法的合理性。
第一組實驗學習者保持h0=1.06m,正視屏幕下邊緣,緩慢增大d。第二組實驗學習者則保持距離d=0.84m,正視屏幕下邊緣,緩慢坐直以增大h0。實驗結果如圖11所示。
由圖11可以發現,測量值與理論值基本相符。當d越大的時候,低頭的判別閾值越來越大;當h0越來越大的時候,低頭的判別閾值越來越大,結果與預期相符。因此,本文提出的計算方法具有一定的合理性。


圖11 閾值函數示意圖
4.4 系統檢測效果驗證
為了進一步驗證本系統的檢測效果,由學習者在前文所述的環境下進行測試。測試期間學習者不斷調節坐高以及座位的遠近,同時伴隨著低頭以及側頭行為。

圖12 學習者行為截圖
視頻記錄學習者的(一分鐘)學習過程,事后以人為識別為依據對比系統的識別效果。部分典型行為截圖如圖12所示,期間人為判定的學習者頭部行為結果如表2所示。

表2 人為判定的學習者頭部行為結果


圖13 實際檢測效果圖
系統的實際結果如圖13所示。其中圖(a)表示在一段時間內低頭角度的實際測量數據與系統計算出來的閾值關于時間的變化圖。當低頭角度大于低頭閾值的時候,則低頭狀態置為1,否則為0。同理,圖(b) 表示在一段時間內側頭角度的實際測量數據與系統計算出來的閾值關于時間的變化圖。當側頭角度大于左側頭閾值的時候,則側頭狀態置為1,當側頭角度小于右側頭閾值的時候,則側頭狀態置為-1,否則為0。
對比系統識別結果與人為判定結果發現,本系統能夠根據實際的頭部坐標動態的調節相應的頭部偏轉角度的判別閾值,從而實現頭部姿態行為的準確判別。
在線學習的場景下,學習者頭部姿態信息的準確性對于學習者的狀態分析和行為記錄有著重要的影響。傳統根據經驗選取單一判別閾值的方式實用性差,實際的使用過程中誤差大。因此,本文提出了一種根據學習者頭部位置動態調節頭部姿態判別閾值的方案。該方案通過Kinect實時獲得學習者頭部坐標,進而通過空間幾何運算實時得到偏轉閾值。實驗表明,本方案較之傳統的單一經驗閾值的判別方式更加準確與科學。
本文僅僅討論了在線學習場景下的頭部姿態判別,在后續的工作中將對更多的識別場景進行測試,同時將進一步考慮其他體感信息,綜合頭部姿態以及肢體姿態更深入準確地分析記錄學習者的行為狀態。
[1] 王紅艷,胡衛平.中國在線學習研究現狀與啟示[J].中國遠程教育,2013(8):30-34. WANG Hongyan, HU Weiping. A Review of Online Learning Literature in China and Its Implications[J]. Distance Education in China,2013(8):30-34.
[2] 祝智庭,劉名卓.“后MOOC”時期的在線學習新樣式[J].開放教育研究,2014,20(3):36-43. ZHU Zhiting, LIU Mingzhuo. New Trends of Online Learning in the “Post-MOOC Era”[J]. Open Education Research, 2014, 20(3):36-43.
[3] 鐘志賢,楊蕾.論在線學習[J].現代遠距離教育,2002,(1):30-34. ZHONG Zhixian, YANG Lei. On Learning on Line[J]. Modern Distance Education,2002,(1):30-34.
[4] Dark M J, York C S, Popescu V, et al. Evaluating interactivity and presence in an online distance learning system[C]//Frontiers in Education (FIE 2007), Milwaukee, WI: IEEE, 2007. T2D-24 - T2D29.
[5] 趙敏杰,王娜,房曉瑞,等.網絡課程中學習行為監控系統的設計與實踐[J].中國教育信息化:基礎教育,2009(9):66-68. ZHAO Mingjie, WANG Na, FANG Xiaorui, et al. The Design and Implement of Learning Behavior Monitoring System of Online Course[J]. The Chinese Journal of Ict in Education,2009(9):66-68.
[6] Sandanayake T C, Madurapperuma A. P. Affective e-learning model for recognising learner emotions in online learning environment[C]//Proc. of 2013 International Conference on Advances in ICT for Emerging Regions (ICTer). Colombo, Sri Lanka: IEEE,2013:266-271.
[7] 周鴻,張軍,劉志鏡.基于模糊理論的行人異常動作檢測[J].模式識別與人工智能,2013(6):421-427. ZHANG Jun, LIU Zhijun. Abnormal Behavior of Pedestrian Detection Based on Fuzzy Theory[J]. Pattern Recognition and Artificial Intelligence,2013(6):421-427.
[8] 喬體洲,戴樹嶺.基于特征點識別的頭部姿態計算[J].北京航空航天大學學報,2014(8):1038-1043. QIAO Tizhou, DAI Shuling. Head pose estimation framework based on feature point detection[J]. Journal of Beijing University of Aeronautics and Astronautics,2014(8):1038-1043.
[9] Vermun K, Senapaty M, Sankhla A, et al. Gesture-based Affective and Cognitive States Recognition using Kinect for Effective Feedback during E-learning[C]//Proc. of 2013 IEEE Fifth International Conference on Technology for Education (T4E). Singapore, Singapore: IEEE,2013:107-110.
[10] 符秀輝,杜一鳴.基于Kinect傳感器的姿態識別及應用研究[J].電子技術與軟件工程,2014(18):157-158. FU Xiuhui, DU Yiming. Head Pose Recognition and Application Based on Kinect [J]. Electronic Technology & Software Engineering,2014(18):157-158.
[11] 董力賡,陶霖密,徐光裙.頭部姿態和動作的識別與理解[C]//第三屆和諧人機環境聯合學術會議論文集,濟南,2007. DONG Ligeng, TAO Linmi, XU Guangyou. Head Pose Estimation and Head Gesture Recognition[C]//The 3rd Joint Conference on Harmonious Human Machine Environment ( HHME2007 ), Jinan,2007.
[12] Han J, Shao L, Xu D, et al.Enhanced computer vision with microsoft kinect sensor: A review[J]. IEEE Transactions on Cybernetics,2013,43(5):1318-1334.
Adaptive Identification of Learner Head Pose Based on Kinect
FAN Zijian XU Wei LIU Feifan CHENG Wenqing
(School of Electronic Information and Communications, Huazhong University of Science and Technology, Wuhan 430074)
Online learning gradually becomes a new way of learning, which is facing the challenge of how to evaluate the learning effectiveness. Nowadays, it is a popular solution to use somatosensory information to recognize the gesture and state of learner. Besides, head pose identification is the most important part of human gesture recognition. Due to the different height and sitting position of the learner, the traditional method works with a high false alarm ratio in practice. To this end, a dynamic head pose identification solution is proposed. Experiments demonstrate that the proposed solution can effectively distinguish the learner’s head pose, which is more adaptive and scientific.
Kinect, head pose identification, dynamic threshold
2016年8月3日,
2016年9月24日
國家科技支撐計劃項目(編號:2015BAH33F04)資助。
范子健,男,碩士研究生,研究方向:教育信息化、互聯網應用。許煒,男,博士,副教授,研究方向:互聯網應用、數據分析等。劉非凡,男,碩士研究生,研究方向:教育信息化、互聯網應用。程文青,女,博士,教授,研究方向:高速通信網絡、網絡教育等。
TP391.41
10.3969/j.issn.1672-9722.2017.02.031