丁 洋,蔡成穎
(常州大學 機械與軌道交通學院,常州 213164)
據世界衛生組織統計,全球每年約有135 萬人死于道路交通事故,其中,有10%~30%的交通事故歸因于疲勞駕駛[1]。因腦電信號(electroencephalogram,EEG)蘊含著豐富的人生理活動電信息,被公認為最客觀的疲勞檢測信號依據。研究清醒、瞌睡狀態的腦電信號特性,可為疲勞預警設備研發奠定基礎,具有十分重要的研究價值。
針對駕駛疲勞腦電瞌睡檢測,目前國內外研究者開展了諸多研究。文獻[2]提出一種高斯混合隱馬爾可夫模型進行疲勞狀態評估,獲得準確率為89.60%、敏感度為88.31%;文獻[3]采用經驗模態分解與能量譜算法相結合方法提取特征,在粒子群算法優化的多層感知超限學習機分類器中實現對駕駛員疲勞狀態的檢測,獲得83.12%的分類準確率;文獻[4]以樣本熵和近似熵為特征并融合送入kNN等4 種分類算法進行比較,所得疲勞識別平均準確率為92.8%、敏感度為91.4%、F1分數為91.4%;文獻[5]運用模糊熵取得85%的識別準確率。以上方法在對腦電進行特征提取時,雖能區分清醒、瞌睡腦電中復雜瞬態波變化,但計算復雜度高。此外,樣本熵、近似熵及模糊熵算子存有容限值調參的繁瑣。
針對以上方法存在的問題,本文首次利用注意力熵刻畫清醒、瞌睡腦電的非線性,無需對容限值進行調參,且計算代價較小。同時,采用復雜度較低的小波包分解法提取相對能量特征,以表征清醒、瞌睡腦電中的復雜瞬態波變化。將所提取的注意力熵特征與小波包能量特征應用于瞌睡檢測中,構建了多模態融合的駕駛疲勞瞌睡檢測與預警系統。
研究采用了圖1 所示的框架,包括4 個部分:①信號預處理,因腦電中混疊大量背景噪聲及工頻干擾,故將其送入0.5~45 Hz 的巴特沃茲濾波器進行帶通濾波處理;②特征提取,用小波包分解與注意力熵方法提取腦電有效特征;③構建支持向量機分類器模型,實現清醒和瞌睡狀態的判別;④通過一定的判別決策決定是否觸發預警設備,采用視覺和聽覺結合的方式進行預警。

圖1 基于多特征融合的瞌睡檢測與預警系統框架Fig.1 Framework of a drowsiness detection and warning system based on multi-feature fusion
本研究用Sleep-EDF 數據庫6 個健康受試者在清醒與瞌睡狀態下的腦電信號。該腦電數據采樣頻率為100 Hz,采集于Pz-Oz 電極,每段數據長30 s。
選取適宜信號處理方法對腦電進行分析和提取特征是瞌睡檢測模型的關鍵步驟。
1.2.1 非線性動力學注意力熵特征
針對腦電信號的非線性特點,利用注意力熵[6]刻畫清醒與瞌睡狀態下腦電動態演化過程中的復雜度,相比近似熵、模糊熵等算子,注意力熵具有如下優點:對時間序列長度具有魯棒性,不需要參數調優,且計算復雜度低。
注意力熵選擇了4 種關鍵模式:①局部最大值到局部最大值的間隔(Max-Max);②局部最小值到局部最小值的間隔(Min-Min);③局部最大值到局部最小值的間隔(Max-Min);④局部最小值到局部最大值的間隔(Min-Max)。并對每一種模式計算其相鄰間隔出現的頻率,得到Ti,計算各區間間隔出現頻率的香農熵,并取均值作為特征,公式為
式中:i=1,2,3,4,表示4 種關鍵模式。
1.2.2 基于小波包的時頻特征
腦電具有很強的節律性,既有研究在細分頻段:Delta(0.5~4 Hz)、Theta(4~8 Hz)、Alpha(8~13 Hz)、Beta(13~30 Hz)進行了清醒、瞌睡狀態腦電的頻域分析。而在清醒與瞌睡演變過程中,腦電的動態變化十分復雜,除了體現出顯著的非平穩特性以外,還需更好地刻畫其細微的時頻局部化特點。小波包分解(WPD)在小波變換多尺度分析工具基礎上,規避了小波分解時頻固定的缺陷,更能反映復雜信號的本質和特征。
小波包分解得到的二叉樹結構,如圖2 所示。利用正交小波包變換的快速算法,當對腦電信號進行n 層分解時,則第j 級第k 個二叉樹節點的小波包分解系數為

圖2 6 層小波包分解結構Fig.2 6-layer wavelet packet decomposition structure
第j 級的系數可以通過第j-1 級的系數來獲得。此時,腦電信號被分為若干個頻帶,第n 層分解的頻帶范圍表征為
分解層數取決于分析信號的有用成分和采樣頻率。本文分析的腦電信號有用成分為0.5 Hz~45 Hz,對其進行6 層分解,得到合適子頻帶的同時也降低了計算復雜度。Db4 小波可平衡正交小波的緊支撐和平滑性,且它的波形與腦電信號相似,適宜非平穩信號的分析。由于小波包系數能量能反應腦電信號的時頻特征,故提取腦電信號的小波包系數能量值為基礎特征,以Subject1、Subject4 為例,清醒與瞌睡狀態的能量分布如圖3 所示。


圖3 清醒與瞌睡狀態腦電的能量值分布Fig.3 Distribution of energy values of EEG in awake and drowsy states
由圖3(a)看出,10 Hz 之前瞌睡狀態腦電信號的小波包系數能量均值高于清醒狀態,10 Hz 之后相反;從圖3(b)看出,8 Hz 之前的瞌睡狀態小波包系數能量均值與清醒狀態能量均值混疊,而8 Hz 之后兩者的能量均值則可區分。值得注意的是,以往研究中少有使用的Gamma(30~45 Hz)節律,在清醒與瞌睡信號的差異也很大,故本文也采用此頻段的特征。考慮個體差異及部分頻段的能量交織,本文將小波包系數的相對能量值作為特征。此外,由清醒向瞌睡狀態的演變過程中,Delta、Theta、Alpha、Beta 及Gamma 節律能量動態變化,據此提取了這5 種節律的小波包系數能量的比值特征。利用小波包分解提取的各個特征如表1 所示。

表1 WPD 法提取的細分頻帶相對能量特征Tab.1 Relative energy characteristics of subdivision bands extracted by WPD method
其中,E 為腦電信號的小波包能量總值,ED、ET、EA、EB、EG分別為Delta、Theta、Alpha、Beta 及Gamma的頻帶小波包能量值。
因支持向量機(SVM)具有優異的泛化性能和學習能力,適宜瞌睡識別場景下的小樣本、非線性模式識別任務,本文以其為分類器。SVM 的核心思想是通過構造使分類間隔最大的超平面而使得對于未知模式的分類誤差最小。而最優超平面的構造屬于二次型問題,期望獲取的最優分類函數:
為求解這一問題,引入拉格朗日算子:
式中:b 為閾值;xj為第j 個訓練樣本;yj為類別;L為總訓練樣本數;α 為拉格朗日系數。
為評估瞌睡檢測模型性能,采用如下評價指標:正確率(ACC)、敏感度(SEN),F1分數定義為
式中:PRE=TP/(TP+FP)×100%。TP、TN 分別是被測試為正的正樣本數和被測試為正的負樣本數;FP、FN 分別為被測試為負的正樣本數和被測試為負的負樣本數。
為驗證本文所提方法進行腦電瞌睡檢測的可行性,將數據集按照70%訓練集、30%測試集原則分配。
對于小波包方法提取的特征,經過Relief 算法篩選出5 個特征,對Subject1 訓練樣本利用小波包方法所得WpdFeat 特征的統計分析結果,如表2 所示。

表2 清醒組和瞌睡組WpdFeat 特征統計值Tab.2 Statistical values of WpdFeat characteristics in awake and sleepy groups
表2 中第2~3 列是對清醒組和瞌睡組所有樣本進一步求取統計平均的結果,所得結果以“均值(標準差)”形式給出。第4 列是對特征量進行單因素單方差分析(ANOVA)的檢驗結果。可見各WpdFeat在不同類別間均具統計顯著差異。
利用注意力熵法所得AttnEn 特征的統計分析結果,如表3 所示。

表3 清醒組和瞌睡組AttnEn 特征統計值Tab.3 Statistical values of AttnEn characteristics for awake and sleepy groups
從表3 中可看出,清醒狀態的注意力熵均值大于瞌睡狀態的值,表明在清醒狀態注意力熵所表征的復雜度高于瞌睡狀態的復雜度。ANOVA 檢驗中的p<0.001,表明在統計意義上所提取的特征能區分清醒與瞌睡時腦電信號的復雜度特性。
SVM 分類器使用libsvm 工具箱,選擇高斯核函數,用網格法搜索最佳參數。為減少過擬合,本文使用5 折交叉驗證方法驗證分類器性能。將融合的特征矢量送入SVM 分類器中,得到的性能結果如表4所示。

表4 融合特征的性能結果Tab.4 Performance results for fused features
從表4 可看出,因個體間存在差異,不同受試者的性能結果不盡相同。但就總體性能而言,融合WpdFeat、AttnEn 特征之后,在瞌睡檢測時具有95.9%的準確度、96.8%的敏感度,F1分數指標為96%。
如表5 所示,與文獻方法進行對比,本文使用WPD 結合AttnEn 方法提取特征,運用SVM 分類,獲得了高于對比研究的瞌睡檢測準確率、敏感度。

表5 不同方法的性能結果對比Tab.5 Comparison of performance results of different methods
基于上述方法,本文在LabVIEW 上實現駕駛疲勞的瞌睡預警仿真,并針對個體對聲音的敏感性問題,設計多種聲音刺激方式。
通過調用MATLAB Script 節點的方法,實現LabVIEW 和MATLAB 的混合編程。用選項卡將整個仿真分為瞌睡檢測信號分析、瞌睡檢測識別與預警2 個模塊界面。
如圖4 所示,在瞌睡檢測信號分析模塊中,可以加載不同個體的腦電信號,對其進行濾波預處理,并將信號波形展示在虛擬儀器前面板。用戶可操縱滑動桿以設置濾波器的不同參數。該界面依次展示了原始腦電信號波形、濾波后清醒和疲勞信號的小波包能量譜均值對比。在虛擬儀器前面板右側區域對特征提取結果予以展示,分別為示例信號WPD法提取的特征參量數值及AttnEn 特征值。

圖4 瞌睡檢測信號分析模塊界面Fig.4 Interface of the drowsiness detection signal analysis module
如圖5 所示,瞌睡檢測識別與預警模塊中,首先分別采用SVM 分類器和Logistic 分類器實現對樣本腦電信號的模式分類,顯示出分類結果及分類評價度指標。可以看到,所有指標都已達到100%,說明該仿真模型可以準確地識別駕駛員的瞌睡狀態。接著通過視覺、聽覺兩種方式實現瞌睡預警。當用戶輸入待識別的測試集信號序號時,該界面將展示對應信號的原始波形、小波包相對能量譜密度,并顯示對應信號的識別結果。一旦識別結果為瞌睡狀態,隨即觸發預警。在視覺預警方面,預警指示燈由正常的綠色狀態轉為紅色。考慮到駕駛員對不同聲音刺激的敏感問題,本文利用ActiveX 容器節點調用Windows Media Player 控件,設計了多種聲音的預警喚醒方式。在聲音文件已加載該仿真模塊前提下,用戶可點擊選擇ALARM 報警聲或喚醒疲勞的不同音樂,使駕駛員在疲勞的前期得到及時的提醒。同時,在Windows Media Player 中,用戶也可以調節聲音的音量,控制聲音的暫停與播放。

圖5 瞌睡檢測識別與預警模塊界面Fig.5 Drowsiness detection recognition and warning module interface
本文搭建了融合注意力熵與小波包能量特征的瞌睡檢測與預警系統。首次在瞌睡檢測的腦電信號特征提取中使用了注意力熵方法,無需調節參數,計算代價小。在利用小波包分解方法提取相對能量特征時,將高頻Gamma 節律納入考慮,實驗結果表明了其有效性。此外,本文方法可自適應挑選出適合不同個體的時頻特征,增強了模型的泛化能力。最后在LabVIEW 上利用所提方法進行了虛擬儀器設計,表明所提方法為實際生活中駕駛人員的瞌睡檢測和預警系統開發提供了有效的模型。