基于TTS技術(shù)和腦電采集設(shè)備的精神疲勞實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
精神疲勞是現(xiàn)代社會(huì)中的重要問題,嚴(yán)重影響了人們的生命和健康。在交通駕駛、航天航空、實(shí)時(shí)監(jiān)控、高風(fēng)險(xiǎn)作業(yè)等行業(yè),許多事故的發(fā)生都與精神疲勞有關(guān),因此,對(duì)精神疲勞的分析及評(píng)價(jià)就顯得非常必要。
自對(duì)疲勞進(jìn)行研究以來,精神疲勞的測(cè)定經(jīng)歷了生理生化法、主觀評(píng)定法、生理反應(yīng)測(cè)定法等方法。這些傳統(tǒng)方法因有很大的局限性而很難做到客觀和定量化。隨著現(xiàn)代電子技術(shù)和醫(yī)學(xué)信號(hào)檢測(cè)與處理技術(shù)的發(fā)展,基于生理參數(shù)信號(hào)(腦電信號(hào)、心電信號(hào)等)的精神疲勞測(cè)定技術(shù)的研究受到越來越多的關(guān)注。
在精神疲勞的研究中,受試者的精神疲勞狀態(tài)一般通過不同的精神疲勞實(shí)驗(yàn)來產(chǎn)生,并對(duì)相應(yīng)的精神疲勞狀態(tài)進(jìn)行量化標(biāo)定。其中,讓受試者進(jìn)行某種作業(yè),通過統(tǒng)計(jì)每次的完成時(shí)間或成功率來對(duì)受試者的疲勞狀態(tài)進(jìn)行標(biāo)定是一種廣泛采用的方法。Atsuo Murata等在其研究中讓受試者根據(jù)CRT顯示的兩個(gè)三位數(shù)做加法,根據(jù)其完成時(shí)間和正確率給出疲勞狀態(tài)的標(biāo)定,該方法中,受試者對(duì)計(jì)算機(jī)給出的操作命令需要經(jīng)過一定的心算或者判斷過程來完成。文獻(xiàn)中通過聽覺操作命令為實(shí)驗(yàn)任務(wù)的方法,在按一定時(shí)間間隔播放的聲音序列中,隨機(jī)插入動(dòng)作命令集合(上下左右)中的某一個(gè),受試者聽到聲音命令后按下鍵盤上預(yù)先設(shè)定好的鍵,依據(jù)受試者操作正確率來標(biāo)定其疲勞狀態(tài)。隨著實(shí)驗(yàn)進(jìn)行受試者精神達(dá)到一定疲勞狀態(tài),由于操作命令相對(duì)簡(jiǎn)單,這種情況下,依照操作正確率標(biāo)定的疲勞狀態(tài)不能準(zhǔn)確反映受試者的疲勞狀態(tài)。本文采用基于腦電信號(hào)的精神疲勞測(cè)定技術(shù),將TTS技術(shù)應(yīng)用到精神疲勞實(shí)驗(yàn)系統(tǒng)中,嘗試通過控制大腦認(rèn)知問題的難度來提高精神疲勞實(shí)驗(yàn)的可控性,為后續(xù)精神疲勞的研究提供更可信有效的數(shù)據(jù)。
1 實(shí)驗(yàn)系統(tǒng)總體設(shè)計(jì)
1.1 實(shí)驗(yàn)系統(tǒng)總體設(shè)計(jì)思路
TTS技術(shù),又稱文語轉(zhuǎn)換技術(shù),它是將計(jì)算機(jī)自己產(chǎn)生的或外部輸入的文字信息轉(zhuǎn)換為能被人理解的、流利的語言輸出的技術(shù)。Microso ft Speech SDK 5.1全面支持中文語音應(yīng)用程序的開發(fā)。SDK中的底層協(xié)議都以COM組件的形式完全獨(dú)立于應(yīng)用程序?qū)?,語音相關(guān)的工作由COM組件來完成,程序員只需根據(jù)應(yīng)用程序的需要調(diào)用相關(guān)的語音應(yīng)用程序接口(SAPI)就可以實(shí)現(xiàn)語音功能。通過編制相應(yīng)的軟件程序,調(diào)用Microsoft Speech SDK 5.1的動(dòng)態(tài)鏈接庫(kù),利用系統(tǒng)中安裝的TTS引擎將精神疲勞實(shí)驗(yàn)中隨機(jī)生成的一個(gè)等式判斷命令語句由文本轉(zhuǎn)換為語音讀出來,受試者以聽覺判斷命令為實(shí)驗(yàn)任務(wù),同時(shí)由腦電采集設(shè)備采集腦電信號(hào),然后根據(jù)受試者完成作業(yè)的質(zhì)量對(duì)相應(yīng)腦電信號(hào)數(shù)據(jù)進(jìn)行疲勞狀態(tài)的定量標(biāo)定。
基于TTS技術(shù)和腦電采集設(shè)備的精神疲勞實(shí)驗(yàn)系統(tǒng)的總體設(shè)計(jì)流程如圖1所示。
1.2 硬件配置及開發(fā)環(huán)境
硬件配置條件:
1)計(jì)算機(jī)
實(shí)驗(yàn)用標(biāo)準(zhǔn)配置計(jì)算機(jī)一臺(tái),另有耳塞式耳機(jī)或音箱。
2)腦電信號(hào)采集設(shè)備
腦電信號(hào)的采集要通過專用的儀器設(shè)備完成,以實(shí)現(xiàn)安全、有效、可靠的獲取人的腦電信號(hào)數(shù)據(jù)供進(jìn)一步的分析處理。腦電采集設(shè)備種類繁多,文中使用由g.tec公司生產(chǎn)的g.USBamp信號(hào)放大采集設(shè)備,電極位置按照國(guó)際10—20標(biāo)準(zhǔn)導(dǎo)聯(lián)系統(tǒng)的電極安放,詳細(xì)電極位置見文獻(xiàn)。
開發(fā)環(huán)境配置條件:
軟件運(yùn)行環(huán)境為Win7系統(tǒng),安裝有Microsoft Simplified Chinese語音引擎,開發(fā)工具為VC6.0。
2 實(shí)驗(yàn)系統(tǒng)各模塊設(shè)計(jì)與實(shí)現(xiàn)
本實(shí)驗(yàn)系統(tǒng)的目的是完成標(biāo)定有相應(yīng)精神疲勞狀態(tài)的腦電信號(hào)數(shù)據(jù)的采集存儲(chǔ),實(shí)驗(yàn)系統(tǒng)主要包括兩個(gè)部分:腦電采集和聽警覺作業(yè)。
腦電采集是通過腦電采集設(shè)備完成對(duì)受試者腦電信號(hào)的采集,聽警覺作業(yè)是讓受試者對(duì)聽到的判斷命令進(jìn)行判斷選擇,同時(shí)系統(tǒng)會(huì)記下受試者每次選擇判斷的時(shí)間和正誤,最后依據(jù)作業(yè)完成質(zhì)量對(duì)疲勞狀態(tài)進(jìn)行量化標(biāo)定。實(shí)驗(yàn)首先進(jìn)行腦電信號(hào)的采集,在腦電信號(hào)開始采集的初始階段,只采集受試者的腦電信號(hào),直到聽警覺作業(yè)開始的同時(shí)才進(jìn)行腦電數(shù)據(jù)的存儲(chǔ)。這樣即丟棄了開始采集腦電信號(hào)時(shí)因設(shè)備不穩(wěn)定而獲取的不準(zhǔn)確數(shù)據(jù),同時(shí)保證了存儲(chǔ)下來的數(shù)據(jù)是受試者在作業(yè)過程中的腦電信號(hào)數(shù)據(jù)。這兩部分工作分別由2個(gè)線程來完成。
2.1 腦電采集模塊
腦電信號(hào)采集部分由數(shù)據(jù)采集線程來完成,其主要實(shí)現(xiàn)過程如圖2所示。
m_EEGRunFlag為數(shù)據(jù)采集狀態(tài)標(biāo)志,開始腦電采集后,開啟腦電數(shù)據(jù)采集線程。腦電信號(hào)的獲取是由g.tec公司提供的API函數(shù)編程實(shí)現(xiàn)的,創(chuàng)建overlapped結(jié)構(gòu)事件對(duì)象的目的是避免阻塞線程,系統(tǒng)調(diào)用獲取數(shù)據(jù)的函數(shù)時(shí)可以立即返回,但是直到overlapped結(jié)構(gòu)中事件被觸發(fā)數(shù)據(jù)才是有效的,用WaitForSingleObject()函數(shù)來判斷數(shù)據(jù)傳輸是否結(jié)束,用GetOvedappedResuk()函數(shù)來檢索獲取的有效字節(jié)數(shù)目。此時(shí)在線程中只獲取而不存儲(chǔ)腦電數(shù)據(jù),直到m_RunFlag為TRUE才開始腦電數(shù)據(jù)的存儲(chǔ)。
2.2 聽警覺作業(yè)模塊
聽警覺作業(yè)部分由作業(yè)線程來完成,其主要實(shí)現(xiàn)過程如圖3所示。
m_RunFlag為聽警覺作業(yè)狀態(tài)標(biāo)志,開始作業(yè)后,開啟作業(yè)線程。開始聽警覺作業(yè)的同時(shí)開始數(shù)據(jù)采集線程中數(shù)據(jù)的存儲(chǔ)。受試者聽到聲音后,對(duì)判斷命令進(jìn)行選擇判斷,兩次朗讀判斷命令時(shí)間間隔由定時(shí)器控制,受試者操作結(jié)束后,等待定時(shí)器被觸發(fā)系統(tǒng)朗讀下一次判斷命令。當(dāng)判斷命令達(dá)到50次時(shí),m_RunFlag置為FAISE,同時(shí)數(shù)據(jù)采集線程中不再存儲(chǔ)數(shù)據(jù),保存受試者作業(yè)信息,作業(yè)線程結(jié)束。其中,TTS朗讀判斷命令和受試者選擇操作的實(shí)現(xiàn)過程如圖4所示。
a、b、c為隨機(jī)生成的整數(shù),a、b、c的范圍可自由調(diào)整,通過調(diào)整a、b的范圍可以調(diào)整作業(yè)的復(fù)雜度,圖4中選擇進(jìn)行20以內(nèi)整數(shù)的加法。c由a、b隨機(jī)得到,最終生成的文本內(nèi)容可能正確可能錯(cuò)誤(如:可能是3+5=8或者15+7=19)。受試者在聽到判斷命令后,經(jīng)過心算判斷系統(tǒng)讀出的判斷命令的正誤,然后按下鍵盤上預(yù)先設(shè)定好的鍵(如:錯(cuò)誤按←,正確按→)。受試者在聽到判斷命令后的1.5 s內(nèi)按鍵視為有效操作,如果受試者沒有在有效時(shí)間內(nèi)按鍵或者沒有按鍵視為此次操作錯(cuò)誤。如果判斷正確,對(duì)應(yīng)正確操作次數(shù)m_Tnum加1。
評(píng)論