楊榮 李增勇 魏鵬緒 王麗 張寧 宋亮
腦力疲勞是一種復(fù)雜的生理心理現(xiàn)象,以工作效率的下降和工作的厭煩為標(biāo)志,是人體介于清醒和睡眠之間的一種過度狀態(tài)。隨著科技和經(jīng)濟(jì)的發(fā)展,越來越多的人從體力勞動(dòng)者轉(zhuǎn)為腦力勞動(dòng)者,持續(xù)的工作、睡眠的不足以及各種心理因素的影響導(dǎo)致腦力疲勞的出現(xiàn)愈加頻繁,因腦力疲勞引發(fā)的工作事故和各種心理疾病也逐年增加,尤其對于駕駛員、機(jī)械操作、飛行員等要求超高反應(yīng)速度與注意力集中程度的特殊職業(yè)[1-2],一旦出現(xiàn)腦力疲勞,會引發(fā)非常嚴(yán)重的事故。因此,開發(fā)便攜的腦力疲勞檢測裝置具有重要的現(xiàn)實(shí)意義。
目前關(guān)于腦力疲勞的相關(guān)研究多基于實(shí)驗(yàn)室腦電設(shè)備采集數(shù)據(jù)后的離線分析,而傳統(tǒng)的腦電采集裝置普遍存在體積大、價(jià)格昂貴、不易搬動(dòng)、操作復(fù)雜等局限性[3],不利于用戶腦力疲勞狀態(tài)的快速監(jiān)測。隨著通信技術(shù)的發(fā)展以及低成本、高性能智能平板、手機(jī)等設(shè)備的逐漸普及,為實(shí)現(xiàn)腦力疲勞的快速與高效檢測提供了可能。
當(dāng)前常用的腦力疲勞評價(jià)手段分為主觀檢測和客觀檢測兩種[4]。主觀檢測即疲勞量表評價(jià)方式[5],客觀檢測主要通過相關(guān)儀器對被測者進(jìn)行客觀評價(jià),評價(jià)指標(biāo)包括腦電(electroencephalogram,EEG)、肌電、心電、血壓、呼吸、眨眼頻率[6]等。由于主觀檢測存在個(gè)人因素影響大、評分標(biāo)準(zhǔn)無法統(tǒng)一等問題,實(shí)際使用中多使用客觀評測或?qū)⒖陀^評測與主觀評測結(jié)合使用[7]。
由于人體腦力疲勞狀態(tài)時(shí),會出現(xiàn)精神渙散、記憶力下降、注意力不集中、思考力下降等現(xiàn)象,這些情緒現(xiàn)象受大腦皮質(zhì)支配,最終表現(xiàn)為大腦皮質(zhì)電信號的變化[8],因此EEG的很多成分和特征參數(shù)可以作為腦力疲勞的評價(jià)指標(biāo),比如α節(jié)律波活動(dòng)的增加[9]、不同頻率段基本尺度熵和排列熵的差異[10]、功率譜重心頻率的變化[11]、事件相關(guān)電位(event-related potential, ERP)中P300的幅值變化等。早期疲勞研究主要集中在P300上。P300是ERP中研究最多也最成熟的成分,一般出現(xiàn)在刺激后300~500 ms之間,代表了工作記憶和主動(dòng)注意的實(shí)時(shí)加工,對于腦力疲勞的研究具有重要的價(jià)值。
目前,利用聽覺誘發(fā)P300進(jìn)行腦力檢測的研究也十分廣泛。喬延云等[7]利用聽覺誘發(fā)P300評價(jià)持續(xù)認(rèn)知任務(wù)前后的腦力疲勞狀態(tài),結(jié)果證明P300中P3a、P3b成分的幅值可以作為腦力疲勞的評定指標(biāo)。宋國萍等[12]同樣發(fā)現(xiàn)聽覺誘發(fā)P300中P3a、P3b成分的幅值變化可以用于駕駛疲勞程度的評價(jià)。
因此,考慮到Android平臺的開放性、無界性、便攜性、擴(kuò)展性以及良好的數(shù)據(jù)兼容性和同步性[13],本研究搭建基于Java平臺的便攜式客觀腦力疲勞檢測系統(tǒng),利用TGAM腦電采集芯片采集聽覺誘發(fā)EEG信號,將EEG信號通過Android移動(dòng)端傳輸至服務(wù)器端的數(shù)據(jù)解析平臺后,通過小波分析、基于噪聲統(tǒng)計(jì)的經(jīng)驗(yàn)?zāi)J椒纸?empirical mode decomposition, EMD)、多元線性回歸(multiple linear regression with dispersion terms, MLRD)、支持向量機(jī)(support vector machine,SVM)等算法提取P300中P3b成分的幅值進(jìn)行分析,實(shí)現(xiàn)腦力疲勞的便攜與實(shí)時(shí)檢測。
系統(tǒng)的總體架構(gòu)如圖1所示,主要由腦電采集端、Android移動(dòng)端、服務(wù)器端組成。由于EEG解析算法以Matlab語言進(jìn)行開發(fā),轉(zhuǎn)換成Java語言移植到Android移動(dòng)端存在困難,并且Android移動(dòng)端計(jì)算能力相對較弱,因此本研究將腦電信號解析部分設(shè)置在服務(wù)器端完成,分析結(jié)果返回移動(dòng)端進(jìn)行顯示。
腦電采集端包括TGAM腦電采集模塊、藍(lán)牙模塊、電源模塊、干電極、耳夾、屏蔽線等。Android移動(dòng)端功能包括用戶登錄管理、數(shù)據(jù)接收、數(shù)據(jù)顯示、數(shù)據(jù)傳輸及腦力疲勞結(jié)果顯示等。服務(wù)器端對用戶數(shù)據(jù)、腦電信號數(shù)據(jù)進(jìn)行存儲,通過小波分析、EMD自相關(guān)去噪、MLRD、SVM等算法對腦電信號中的P300特征成分進(jìn)行提取并分類,最后將腦力疲勞分析結(jié)果反饋至Android移動(dòng)端進(jìn)行顯示。
采用P300對用戶腦力疲勞狀態(tài)進(jìn)行分析,用戶需提前完成非疲勞正常狀態(tài)下的聽覺刺激實(shí)驗(yàn),將采集到的腦電數(shù)據(jù)傳輸至服務(wù)器端進(jìn)行數(shù)據(jù)解析,存儲為用戶正?;A(chǔ)數(shù)據(jù)。用戶進(jìn)行腦力疲勞測試時(shí),需完成同樣的聽覺刺激實(shí)驗(yàn),將采集到的腦電數(shù)據(jù)記為測試狀態(tài)下腦電數(shù)據(jù)。服務(wù)器端將測試狀態(tài)下腦電數(shù)據(jù)進(jìn)行解析后,將提取到的P3b波幅與用戶正?;A(chǔ)數(shù)據(jù)進(jìn)行比對,評估用戶腦力疲勞狀態(tài)。
聽覺刺激實(shí)驗(yàn)?zāi)J交贠ddball模式[14],實(shí)驗(yàn)流程為:用戶將采集電極布置于頭頂頂葉Cz電極處,左耳耳垂用耳夾布置參考電極,同時(shí)佩戴耳機(jī),短音刺激通過雙側(cè)耳機(jī)同時(shí)傳出,標(biāo)準(zhǔn)刺激(概率為80%)為1000 Hz、0 dB,聲音為“嘟”聲,靶刺激(概率為20%)為2 000 Hz、0 dB,聲音為“嗶”聲。刺激呈現(xiàn)時(shí)間均為50 ms,相鄰兩個(gè)聲音刺激出現(xiàn)間隔為 400 ms,2種刺激以隨機(jī)順序出現(xiàn)。一個(gè)聲音周期都是由1次靶刺激、4次非靶刺激構(gòu)成,20個(gè)聲音周期構(gòu)成一個(gè)聲音刺激序列。用戶每次需完成1個(gè)序列的刺激實(shí)驗(yàn),在聽到靶刺激聲音時(shí)點(diǎn)擊Android端屏幕中的“+”,系統(tǒng)自動(dòng)進(jìn)行計(jì)數(shù)。
1.3.1 腦電數(shù)據(jù)特征解析
本部分的核心算法包括小波分析、疊加平均、EMD自相關(guān)去噪、MLRD、SVM算法。
由于P300信號的有用成分主要集中在低頻段[15],為在減少疊加平均次數(shù)的同時(shí)最大限度保留信號中的細(xì)節(jié)特征,將原始腦電信號進(jìn)行 3 層小波分解[16],小波基選擇db10,得到 0~3.75 Hz子頻帶的腦電信號。在該子頻段進(jìn)行樣條插值后,再通過樣條插值后的小波系數(shù)重構(gòu)信號,然后將信號進(jìn)行3次疊加平均。
為提高P300信號的信噪比,采用基于噪聲統(tǒng)計(jì)的EMD算法進(jìn)行信號去噪處理[17]。EMD依據(jù)信號的內(nèi)在特征,將信號分解為有限個(gè)具有不同特征尺度的IMF函數(shù)。基于噪聲統(tǒng)計(jì)的EMD算法自相關(guān)去噪過程如下。
(1)設(shè)完成小波分析和疊加平均后的腦電信號為x(t),t為腦電時(shí)長,則EMD分解算法的實(shí)現(xiàn)步驟[18]包括:
第1步,求取信號極大值點(diǎn)與極小值點(diǎn),利用插值法形成上包絡(luò)曲線x1(t)和下包絡(luò)線x2(t);
第2步,求取上、下包絡(luò)曲線的平均曲線,其公式為:
(1)
第3步,在原始信號中分解出平均曲線,得到剩余信號,其公式為:
s1(t)=x(t)-y1(t)
(2)
第4步,判斷剩余信號s1(t)的所有局部極值點(diǎn)和過零點(diǎn)數(shù)是否相同,或至多相差1,或者s1(t)上下包絡(luò)線的均值為0,若不滿足以上條件,則令x(t)=s1(t),重復(fù)以上步驟,直到得到的剩余信號s1k(t)滿足該條件,則c1(t)=s1k(t)為第一個(gè)IMF分量。
第5步,從原始信號中去除c1(t),得到剩余分量,將剩余分量重復(fù)第1~5步,直到最終剩余分量rn(t)成為單調(diào)函數(shù),則得到n個(gè)IMF。分解完成后原始信號可表示為n個(gè)IMF分量與最終剩余分量之和,即:
(3)
(2)令:
(4)
對第一個(gè)IMF分量c1(t)進(jìn)行隨機(jī)排序、累加、平均后得到c′1(t),將c′1(t)與x1(t)一起重構(gòu)得到新信號xnew(t)。
(3)重復(fù)以上步驟k次,將每次得到的xnew(t)累加求平均后得到新信號N(t)。
(4)對N(t)再次進(jìn)行EMD分解,分別計(jì)算得到各IMF分量的歸一化自相關(guān)函數(shù)方差。根據(jù)預(yù)先設(shè)定的閾值,IMF分量中方差大于閾值的分量即為噪聲成分比較大的成分。
(5)對噪聲成分較大的分量采用小波軟閾值消噪,并與含噪聲低的IMF分量一起重構(gòu)信號,得到最終的信號f(t)。
腦電信號經(jīng)過EMD自相關(guān)去噪后,引入MLRD算法進(jìn)行P300特征的估計(jì)。MRLD算法可以自動(dòng)獲取數(shù)據(jù)潛伏期和幅值無偏估計(jì),已成功應(yīng)用于腦電誘發(fā)電位峰值潛伏期與幅值的時(shí)域估計(jì)中[19]。
由于本研究采集的腦電為誘發(fā)電位,含有包括P300在內(nèi)的多種響應(yīng)成分,可以反映不同因素差異,因此對各響應(yīng)成分進(jìn)行建模,公式為:
f(t)=kNyN(t+aN)+kPyP(t+aP)
(5)
式中:f(t)為去噪后的腦電序列;kPyP(t+aP)為P300成分;kNyN(t+aN)為其他響應(yīng)成分;kN和kP為波形權(quán)重;aN和aP為時(shí)間偏移。引入誘發(fā)電位波形形態(tài)進(jìn)行精準(zhǔn)估計(jì),即為MLRD方法,其公式為:
f(t)=kNyN(sNt+aN)+kPyP(sPt+aP)
(6)
式中:sN與sP用于確定波形寬度。
1.3.2 腦電數(shù)據(jù)結(jié)果分析
SVM算法是根據(jù)統(tǒng)計(jì)學(xué)習(xí)理論提出的一種具有最優(yōu)分類能力和推廣能力的機(jī)器學(xué)習(xí)方法[20],以結(jié)構(gòu)風(fēng)險(xiǎn)最小化準(zhǔn)則為理論基礎(chǔ),可將采樣樣本映射到一個(gè)高維度或無限維度的空間中,將非線性可分的問題轉(zhuǎn)換為線性可分。本研究采用基于徑向基核函數(shù)的SVM分類器進(jìn)行分類,將測試中提取到的P300波幅與非疲勞正常狀態(tài)下的波幅進(jìn)行比對,利用分類結(jié)果評估用戶腦力疲勞狀態(tài)。
腦電采集端實(shí)現(xiàn)基于TGAM腦電采集模塊,對EEG進(jìn)行采集、放大、濾波及傳輸。使用的TGAM模塊是NeuroSky為大眾市場設(shè)計(jì)的成熟商用腦波傳感器采集模塊,價(jià)格低廉。它與人體的接觸只需要一個(gè)簡單的干電極,可以將原始腦電波進(jìn)行濾波、放大、去噪、A/D轉(zhuǎn)換、去干擾等處理后以512 Hz輸出原始腦波以及各頻段腦波數(shù)據(jù)[8]。本研究使用TGAM模塊輸出的原始腦波數(shù)據(jù)進(jìn)行分析。
由于P3b的波幅通常在中央頂頭皮最大,隨著與該腦區(qū)距離的增大而逐步衰減[15],因此,使用TGAM模塊與干電極相連,通過單個(gè)腦電采集電極、參考電極、地線、藍(lán)牙模塊、電源模塊等搭建腦電采集端,腦電采集電極根據(jù)國際10-20系統(tǒng),布置于頂葉Cz電極處,左耳處布置參考電極。通過藍(lán)牙模塊實(shí)現(xiàn)TGAM模塊與Android移動(dòng)端的通信,收集采集模塊的狀態(tài)及其傳輸來的數(shù)據(jù)信號。
Android系統(tǒng)是一個(gè)主要應(yīng)用在手機(jī)、平板、電視等移動(dòng)終端設(shè)備上的應(yīng)用操作系統(tǒng),是基于Linux構(gòu)架的純開源操作系統(tǒng)[21]。本研究系統(tǒng)平臺依托Android移動(dòng)端應(yīng)用操作系統(tǒng),通過Java語言開發(fā)設(shè)計(jì)應(yīng)用功能,構(gòu)建包括用戶登錄界面、聽覺刺激實(shí)驗(yàn)呈現(xiàn)界面、數(shù)據(jù)顯示界面、歷史數(shù)據(jù)顯示界面等功能的APP。
2.2.1 用戶登錄界面
用戶登錄界面如圖2所示。用戶進(jìn)行姓名、性別、年齡、工作時(shí)長等基本信息登記,每次登錄需輸入用戶名和密碼,新用戶需進(jìn)行注冊。注冊成功后,用戶數(shù)據(jù)保存在服務(wù)器端數(shù)據(jù)庫中用于查詢。
2.2.2 聽覺刺激實(shí)驗(yàn)呈現(xiàn)界面
設(shè)計(jì)基于Android系統(tǒng)的聽覺刺激實(shí)驗(yàn),整體程序流程如圖3所示。點(diǎn)擊計(jì)數(shù)界面如圖4所示,用戶選擇測試開始后,關(guān)注靶刺激(“嗶”聲)出現(xiàn)的時(shí)間并點(diǎn)擊Android移動(dòng)端的屏幕上的“+”,屏幕顯示用戶識別的靶刺激個(gè)數(shù)。
2.2.3 數(shù)據(jù)顯示界面
移動(dòng)端APP數(shù)據(jù)顯示界面主要通過Activity嵌套Fragement實(shí)現(xiàn),包括原始腦電數(shù)據(jù)顯示、P300波形顯示、腦力疲勞分析結(jié)果顯示等功能。如圖5所示,原始腦電數(shù)據(jù)通過藍(lán)牙傳輸技術(shù)進(jìn)行讀取,以波形曲線圖形式顯示,動(dòng)態(tài)刷新,橫軸為時(shí)間,縱軸為腦電幅值。通過與服務(wù)器端進(jìn)行通信,從服務(wù)器端數(shù)據(jù)庫中下載解析完成的數(shù)據(jù),并進(jìn)行P300波形繪制、腦力疲勞分析結(jié)果顯示,如圖6所示。
圖6 P300波形與腦力疲勞分析結(jié)果顯示界面
2.2.4 歷史數(shù)據(jù)顯示界面
本研究在后臺服務(wù)器端,使用Java服務(wù)程序接收移動(dòng)應(yīng)用端發(fā)送的完整的原始腦電數(shù)據(jù),經(jīng)過數(shù)據(jù)清洗、轉(zhuǎn)換、整合、統(tǒng)計(jì)、分析、計(jì)算等一系列操作,將結(jié)果數(shù)據(jù)存儲在MySQL數(shù)據(jù)庫中,形成每個(gè)用戶的基本數(shù)據(jù)?;诖祟悢?shù)據(jù)為用戶提供必要的可視化展示,用戶可通過選擇歷史記錄從服務(wù)器端下載對應(yīng)的歷史數(shù)據(jù)在Android移動(dòng)端進(jìn)行查看,如圖7所示。
圖7 歷史數(shù)據(jù)顯示圖
服務(wù)器端的功能包括接收與存儲腦電信號、解析腦電數(shù)據(jù)特征、計(jì)算腦力疲勞結(jié)果并將分析結(jié)果返回Android移動(dòng)端進(jìn)行展示。
采用IntelliJ IDEA開發(fā)工具,開發(fā)基于Java平臺的后臺數(shù)據(jù)處理程序,實(shí)現(xiàn)Android移動(dòng)端與服務(wù)器端的數(shù)據(jù)交互功能。服務(wù)器端分為應(yīng)用服務(wù)器和數(shù)據(jù)處理服務(wù)器兩部分。Android移動(dòng)端與應(yīng)用服務(wù)器中Tomcat容器通過HTTP數(shù)據(jù)接口進(jìn)行數(shù)據(jù)傳輸,數(shù)據(jù)為JSON格式。Tomcat容器為后臺數(shù)據(jù)處理程序,負(fù)責(zé)處理Android移動(dòng)端發(fā)送的各種結(jié)構(gòu)化數(shù)據(jù),并將數(shù)據(jù)落地至MySQL數(shù)據(jù)庫內(nèi)。
數(shù)據(jù)處理服務(wù)器執(zhí)行基于Matlab開發(fā)的腦電數(shù)據(jù)解析程序,從MySQL數(shù)據(jù)庫內(nèi)讀取相應(yīng)的數(shù)據(jù)后進(jìn)行數(shù)據(jù)運(yùn)算、處理與分類模型建立。計(jì)算腦力疲勞分析結(jié)果后,分析結(jié)果落地MySQL數(shù)據(jù)庫。用戶查看分析結(jié)果時(shí),可在Android移動(dòng)端選擇結(jié)果查詢,通過HTTP數(shù)據(jù)接口與Tomcat通信,查看分析結(jié)果。服務(wù)器端原始腦電數(shù)據(jù)展示、數(shù)據(jù)處理與結(jié)果顯示如圖8、圖9所示。
圖8 服務(wù)器端原始腦電數(shù)據(jù)展示
圖9 服務(wù)器端數(shù)據(jù)處理與結(jié)果展示
隨著移動(dòng)智能終端設(shè)備的普及,腦機(jī)接口技術(shù)逐步走向便攜化。本研究利用Android系統(tǒng)平臺開放、普及等優(yōu)勢,針對便攜腦力疲勞檢測系統(tǒng)應(yīng)用設(shè)計(jì)進(jìn)行了探索性研究。基于TGAM模塊采集用戶頂葉Cz處腦電,并利用聽覺刺激誘發(fā)的P300電位中P3b的波幅差異,評估用戶腦力疲勞狀態(tài)。目前雖然具有結(jié)構(gòu)精簡、成本低廉的優(yōu)點(diǎn),但仍需進(jìn)一步提高疲勞評估準(zhǔn)確度。由于腦電信號是一種非常復(fù)雜的隨機(jī)性生理信號,利用單導(dǎo)聯(lián)上的特征信息進(jìn)行腦力狀態(tài)評估存在一定的局限性,且不同的受試者存在個(gè)體差異性,如何優(yōu)化算法模型,進(jìn)一步提高算法的識別效果,同時(shí)減輕個(gè)體差異性對評估準(zhǔn)確度的影響,是下一步研究的重點(diǎn)。