項方康,呂勇,姚容,周正馳,巫溢濱
(嘉興學院機電工程學院,浙江 嘉興 314001)
情緒健康與兒童的成長密切相關。通過對兒童情緒的識別,可以更加有效地了解兒童的情緒狀態(tài),幫助他們處理成長中遇到的問題。目前周知的情緒識別主要有兩種方法:印象法、表現(xiàn)法。印象法是通過談話或者問答來了解被試者的情緒體驗。而表現(xiàn)法是通過將有機體的生理和行為作為情緒分類的指標加以測量記錄。表現(xiàn)法情緒分析常用的情緒分類指標有面部表情、心電信號、呼吸率、體表溫度、皮膚電阻等。本系統(tǒng)針對情緒判別表現(xiàn)法,選取了心電信號、體表溫度和皮膚電阻作為前端信號,利用數(shù)字信號處理技術實現(xiàn)信號特征提取,為后端情緒分類器判別情緒提供了數(shù)據(jù)基礎。
見圖1。
圖1 系統(tǒng)框圖
系統(tǒng)的前端信號分別來自BMD101心電芯片模塊、體溫檢測放大模塊、皮膚電阻檢測模塊,利用DSP對三個前端數(shù)據(jù)進行處理,提取各通道數(shù)據(jù)的特征值,再將多維特征信息發(fā)給后端分類器,同時儲存原始數(shù)據(jù)。
一般人體正常心電信號頻率范圍在0.05~100 Hz之間,90%的心電圖(electrocardiogram,ECG)頻譜能量集中在0.25~35 Hz之間。其噪聲來源通常有工頻干擾、電極接觸噪聲、人為運動、肌電干擾等。本系統(tǒng)心電信號由BMD101 SoC模塊電路采集。BMD101心電芯片中集成了模擬高通濾波器AHPF(濾除直流成分)、數(shù)字50/60 Hz的工頻陷波器DNF(濾除工頻干擾信號)以及數(shù)字低通濾波器DLPF(濾除100 Hz以上的干擾成分)。經(jīng)過這一系列的濾波之后,從BMD101發(fā)回的數(shù)據(jù)包里提取出的數(shù)據(jù)波形仍存在部分基線漂移及波形毛刺。本系統(tǒng)采用巴特沃茲低通濾波法去除心電信號的高頻噪聲,快速中值濾波法濾除心電信號尚存的基線漂移。
3.1.1巴特沃茲低通濾波法 巴特沃茲濾波器具有通帶內極大平坦,過渡帶與阻帶單調衰減的良好幅頻特性,故心電信號低通平滑濾波選用巴特沃茲濾波器。情緒識別需要的信號為ECG中的QRS波群,其頻譜能量主要集中在36.5 Hz以下,故將巴特沃茲低通濾波器的通帶截止頻率定為36.5 Hz,阻帶下限頻率定為50 Hz。為了得到更好的濾波效果,選定通帶最大衰減為1 dB,阻帶最小衰減為40 dB。用Matlab的buttord、butter函數(shù)求得濾波器階數(shù)N及濾波器分子分母系數(shù),再用DSP器件實現(xiàn)該低通濾波器。圖2為濾波前后波形上的差別。
圖2 巴特沃茲低通濾波效果圖
由效果圖可以看出,ECG波形毛刺大幅減少,但仍存在少量波形毛刺。參考文獻[3],在巴特沃茲低通濾波器的處理基礎上,引入均值濾波,進一步平滑心電信號。經(jīng)過幾組參數(shù)調試,確定均值濾波窗口大小為31。均值濾波的效果見圖3中值濾波前曲線。
算法的快速性體現(xiàn)在前后兩個中心點的窗口范圍具有2N個點的交集。排序操作不需要機械重復的進行,只需要根據(jù)前一個中心點的窗口排序結果移除、插入一個元素即可。由文獻[7]可知,此濾波算法可以使計算量遠小于傳統(tǒng)中值濾波算法的O(n〗log2n)。
此算法中參數(shù)N的選取尤為關鍵,如果窗口選擇過窄,P波、T波可能會被濾除;如果窗口選擇的過寬,將得不到基線漂移的抑制效果。BMD101 Soc的采樣頻率為512 Hz,經(jīng)過多組數(shù)據(jù)的調試,最終選取N=200。下圖為濾波前后的效果圖,可以看到基線漂移現(xiàn)象得到了良好的抑制,并且較之傳統(tǒng)窗口均值濾波最大幅度的保留了原始心電波形的有用信息,避免了P波、T波的能量衰減。
圖3 快速中值濾波效果圖
3.1.3心電信號特征提取
(1)心率
BMD101 SoC集成了數(shù)字心率檢測模塊。通過在負載數(shù)據(jù)包中提取[code]類型代碼為0x03的負載代碼,即可得到實時心率數(shù)據(jù)。
(2)R波定位
對于R波定位,采用自適應的差分閾值法,對ECG信號序列X(n)的連續(xù)八個點作如下差分運算:
若滿足Y(n)>δ1、Y(n+1)>δ2、Y(n+x)<-δ3同時成立,則可以判定n+x0點處于QRS波群內。其中x0為一個可接受的整數(shù),使得兩點時間間隔小于一個QRS波群的寬度。
對于閾值δ1、δ2、δ3在定位檢測算法開始前,先對20 s的心電數(shù)據(jù)進行自學習。具體算法如下:(1)將20 s的心電數(shù)據(jù)分為均等的5段,將每段長度為4 s的數(shù)據(jù)按照上述差分運算方式求取差分最大值ym1~yms。(2)求取去最大值、最小值后的算術平均值ym0。(3)計算δ1=0.3ym0+Δδ;δ2=0.3ym0+10+Δδ;δ3=0.2ym0+Δδ。(Δδ初值為0.1ym0)
定位檢測算法成功定位QRS波群后,在n+x0點附近鄰域內,搜索R波波峰點,并利用y(n)峰值來自適應調整Δδ=0.1y/mx。
(3)R波幅度與寬度
對于R波的幅度,上述算法已成功準確定位R波波峰,該點相對基線的電壓為R波的峰值電壓即幅度。將R波相鄰的Q波和S波波谷的距離,定義為R波的寬度。在R波精確定位后,沿著R波兩側進行極小值查找定位,就可以得到R波寬度計算的兩個基準點。
圖4 兩名受試者心電數(shù)據(jù)特征提取
從已采集的心電數(shù)據(jù)中,隨機抽選的兩名受試者的心電信號利用上述算法進行特征提取。提取結果見圖4,用方形框描記了每個QRS波群的三個特征點(R波峰值點及其左右兩側極值點)。實踐表明,該算法對QRS波群具有較高的識別率,并能夠根據(jù)多變的心電信號自適應的調整差分閾值,具有較好的魯棒性。
前端體表溫度參數(shù)來自于由AD590及放大電路組成的溫度采集模塊,由AD量化獲得。體表溫度參數(shù)是一個緩變量,所以,本系統(tǒng)對體表溫度的采樣頻率為20 Hz。但是由于檢測電路存在噪聲,使得采集到的體表溫度參數(shù)存在小幅度波動。本研究選擇使用窗口均值濾波器平滑體表溫度信號。
圖5 體表溫度預處理效果圖
如圖5所示,窗口均值濾波預處理之后,溫度參數(shù)平滑,可直接用于特征參數(shù)提取。參考文獻[9],對于體表溫度參數(shù),本研究選擇提取的特征包括30 s間隔內的均值、中值、標準差、最大值、最小值及最值溫度差相對于時間的變化率。
前端皮膚電阻參數(shù)是由兩個觸點間的阻抗參量經(jīng)過阻-壓轉換調理電路及A/D轉換電路后得到的數(shù)據(jù)量,參數(shù)采樣頻率為200 Hz。由于檢測電路電源來自市電,皮膚電阻信號波形上成周期變化,對該信號進行頻譜分析后,該周期信號是來自50 Hz的工頻干擾。因此,對皮膚電阻信號進行特征提取之前,先進行前置低通濾波。低通濾波器的實現(xiàn)方法和心電信號低通濾波器類似,利用matlab計算出數(shù)字濾波器的系數(shù),再在DSP上實現(xiàn)。
同時集成電路兩觸點與皮膚的連接方式為貼身極片連接,故皮膚電阻參數(shù)將存在極片脫落、接觸電阻變化等誤差。由于檢測電路極片脫落和接觸電阻變化時,皮膚電阻的差分值會出現(xiàn)一個極大的峰值,本研究通過尋找差分極值,并在其鄰域內查找脫落點和恢復點。對于兩點間的皮膚電阻數(shù)據(jù),本研究選擇線性近似擬合的方式進行數(shù)據(jù)插值。
圖6 皮膚電阻預處理效果圖
如圖6所示,預處理前后曲線噪聲明顯變小,低通濾波器對工頻噪聲有較好的抑制作用。原始信號中出現(xiàn)的兩個尖峰為極片脫落所產(chǎn)生的瞬時極大值電壓,算法檢測出的脫落點及恢復點用紅色方形框進行了描記。兩點間的電壓做線性擬合。對于預處理后的皮膚電阻特征參數(shù),參考文獻[5],本研究提取其30 s間隔內的均值、最大值、最小值、最值相對時間的變化率、一階差分均值、一階差分最大值、一階差分最小值、一階差分最值相對時間的變化率。
發(fā)送模塊利用HC-06藍牙模塊與上位主機通訊,將生理參數(shù)的特征信息實時發(fā)給上位機。上位機中的情緒判別分類器對多維生理特征參數(shù)進行情緒擬合。儲存模塊利用SPI接口,將實時生理參數(shù)寫入到micro SD卡中保存,以便在藍牙不可使用時進行離線情緒分類擬合。
本研究針對多維生理參數(shù)的前端嵌入式數(shù)據(jù)處理系統(tǒng)進行了探討,利用多種濾波器對ECG信號、皮膚電阻信號和體表溫度信號進行了預處理,提高了數(shù)據(jù)的可用性。并利用自適應差分閾值法對ECG信號的QRS波群進行了定位,實現(xiàn)了R波寬度和幅度的特征提取。在穿戴設備高速發(fā)展的今天,多維生理參數(shù)的前端數(shù)據(jù)處理系統(tǒng)具有很高的應用價值。