曹偉 單華鋒 譚震宇 王桂鋒
麒盛科技股份有限公司,浙江嘉興 314000
人的生命有三分之一的時(shí)間是在睡眠中度過的,睡眠質(zhì)量對人的健康至關(guān)重要[1]。得益于自動化技術(shù)的普及,及對老年人生理健康愈加關(guān)注,研發(fā)了一種非介入式睡眠監(jiān)測設(shè)備。該設(shè)備安裝在智能床床架上,接觸床墊,可測量人平躺時(shí)的生理狀態(tài),如心率、呼吸、體動次數(shù)等體征參數(shù),用于監(jiān)測使用者的健康狀態(tài),并提供必要的報(bào)警功能。該睡眠監(jiān)測系統(tǒng)使用壓電傳感器壓電效應(yīng)原理,將人平躺時(shí)人體傳遞的振動信號轉(zhuǎn)化為壓電模片兩極正負(fù)相反的電荷信號,并通過信號調(diào)理電路,ADC模數(shù)轉(zhuǎn)換模塊,輸入到微機(jī)系統(tǒng),并由微機(jī)系統(tǒng)算法進(jìn)行處理,提取體征參數(shù)。項(xiàng)目通過大量測試,對采集的信號數(shù)據(jù)特征進(jìn)行對比分析,按照采樣信號特征分為3種類型,同時(shí)基于該微機(jī)系統(tǒng)設(shè)計(jì)并實(shí)現(xiàn)了一種心率算法。
ECG、BCG信號特征如圖1所示。其中,R峰為ECG(Electrocardiogram)信號正向最大值,J峰為BCG(Ballistocardiogram)信號正向最大值(與心臟射血過程有關(guān))?;趬弘姳∧さ腂CG信號已被驗(yàn)證可以用于心動周期檢測、心率變異性分析以及心功能檢測等方面[2]。然而,由于床墊厚度及材質(zhì)差異、傳感器安裝位置、人體睡姿等因素影響,項(xiàng)目中微機(jī)系統(tǒng)采樣BCG信號波形差異很大,主要有如圖2所示的3種情況。
圖2(a)所示是心率信號特征比較明顯情況,可以直接通過提取極值點(diǎn)來計(jì)算心率周期;圖2(b)所示是心率呼吸并存;圖2(c)所示為心率信號不明顯的情況。針對后兩種情況,需要通過提取心率信號特征后再做計(jì)算。為此,基于上述3類信號設(shè)計(jì)了一種心率算法,實(shí)現(xiàn)了在各種情況下的心率體征參數(shù)提取。
信號預(yù)處理主要是濾除采樣信號中由傳感器高阻抗特性、電磁干擾、運(yùn)放電路等帶來的干擾信號。預(yù)處理算法包括對采樣信號趨勢項(xiàng)消除及低通濾波,用來消除信號中的基線漂移及高頻信號噪聲。
高阻抗的壓電傳感器信號通過放大電路會產(chǎn)生零點(diǎn)漂移,從而對采樣信號疊加一個趨勢項(xiàng)。為了消除這個趨勢項(xiàng),使用方程y=mx+b進(jìn)行最小二乘擬合采樣數(shù)據(jù),余項(xiàng)(即為消除了趨勢項(xiàng)的信號)如下:
其中,fi(x)——處理后信號;
yi——輸入信號;
m、b——使用一次函數(shù)進(jìn)行最小二乘擬合的函數(shù)的參數(shù)。
方程中,對于m和b有下式的唯一解:
設(shè)計(jì)采樣率為200 Hz,截止頻率10 Hz的6階低通巴特沃斯濾波器濾除采樣信號的工頻噪聲及其他高頻信號噪聲。
當(dāng)采樣的心率信號如圖2(a)所示,心率特征體現(xiàn)比較明顯時(shí),可按下述方法直接計(jì)算BCG信號J波周期:
(1)提取預(yù)處理后信號的極大值點(diǎn)(x0,y0),(x1,y1),...,(xn,yn),使用3次樣條插值函數(shù)求包絡(luò),得到相對光滑的曲線,即在每個子區(qū)間[xi,xi+1]中,使用公式(3)的插值函數(shù)描繪包絡(luò)線。
(2)提取包絡(luò)線大于平均值的極大值點(diǎn)(每個極大值所在位置時(shí)間間隔即為心動周期),如圖3所示。
(3)統(tǒng)計(jì)矩形窗內(nèi)所有極大值點(diǎn)的鄰近點(diǎn)距離,得到一組J-J波的時(shí)間寬度,對應(yīng)了J波周期數(shù)值,取中值作為心率值。
當(dāng)心率呼吸信號重疊(如圖2(b)所示),或者心率信號特征不明顯時(shí)(如圖2(c)所示),則需要先剝離出心率信號,通過計(jì)算信號周期來得到心率參數(shù),具體如下:
(1)利用BCG信號J波加速度相對呼吸信號較大的特征,采用下式二階微分器計(jì)算信號二階導(dǎo)數(shù),突出J波信號特征。
其中,h——信號的采樣時(shí)間間隔;
f(i)——采樣時(shí)間序列的值;
——離散時(shí)間采樣信號的二階導(dǎo)數(shù)。
(2)使用HUANG N E[3]提出的經(jīng)驗(yàn)?zāi)B(tài)分解算法進(jìn)一步濾除信號中殘留的呼吸信號成分,方法如下:
提取初始信號的極值點(diǎn),通過3次樣條插值函數(shù)分別將極大值點(diǎn)和極小值點(diǎn)連接起來,生成上下包絡(luò)線g1(x)和g2(x)。通過式(6)完成一次信號篩選過程。圖4所示為使用經(jīng)驗(yàn)?zāi)B(tài)分解算法完成一次信號篩選處理后的信號波形。
其中,fi——濾除后信號;
yi——原信號;
g1——上包絡(luò);
g2——下包絡(luò)。
(3)使用希爾伯特變換[4]求心率包絡(luò),同時(shí)可進(jìn)一步使用3次樣條插值函數(shù)求二次包絡(luò),使曲線更光滑。
其中,Δt——采樣周期
希爾伯特變換算法輸出包絡(luò)信號公式如下:
其中,fi——處理后信號;
yi——實(shí)離散信號;
(4)對包絡(luò)信號求解信號序列自相關(guān)函數(shù),進(jìn)而判斷其周期特性,圖5所示為算法處理后的波形。
pxx(t)計(jì)算方式如下:
其中,rxx——自相關(guān)序列;
x——采樣值。
(5)統(tǒng)計(jì)矩形窗內(nèi)所有極大值點(diǎn)的鄰近點(diǎn)距離,得到一組J波周期數(shù)值,取中值作為心率值。
上述心率算法程序是在信號采樣頻率為200 Hz,矩形窗長度為10 s,計(jì)算頻率為1次/秒的條件下運(yùn)行。經(jīng)測試,在心率特征體現(xiàn)比較明顯時(shí),采用直接計(jì)算J波周期的方法得到準(zhǔn)確的心率參數(shù)概率更高;而在心率呼吸信號重疊或心率信號特征不明顯時(shí),在使用者平躺靜息的狀態(tài)下,采用剝離心率信號計(jì)算BCG信號周期,可得到準(zhǔn)確的心率參數(shù)。
然而,在實(shí)際的應(yīng)用場景中,如果使用者在非靜息狀態(tài)下,比如發(fā)生體動、翻身等動作,使初始信號中疊加了振幅較大的振動信號,導(dǎo)致算法輸出無效的數(shù)據(jù),對于這種情況,需要增加一些約束條件,濾除掉無效數(shù)據(jù),方法如下:
(1)計(jì)算心率結(jié)果需要在35~110次/分之間,如果計(jì)算結(jié)果不能滿足要求,舍棄當(dāng)前運(yùn)算結(jié)果;
(2)對于矩形窗內(nèi)統(tǒng)計(jì)的每一個極大值點(diǎn),需大于包絡(luò)線平均值,同時(shí)臨近的兩個極小值點(diǎn)須小于平均值,標(biāo)記不能滿足要求的該極值點(diǎn),標(biāo)記數(shù)據(jù)超過一定比例,則認(rèn)為當(dāng)前處理的信號序列為非穩(wěn)定狀態(tài),舍棄當(dāng)前的運(yùn)算結(jié)果;
(3)對于算法得到的一組J波周期數(shù)值,分別計(jì)算這組數(shù)值與中值的偏差值,標(biāo)記與中值偏差≥10%的值,標(biāo)記數(shù)據(jù)超過一定比例,則認(rèn)為當(dāng)前處理的信號序列為非穩(wěn)定狀態(tài),舍棄當(dāng)前的運(yùn)算結(jié)果。
因此,為了得到盡可能準(zhǔn)確的心率參數(shù),一方面,通過算法得到可能的心率參數(shù);另一方面,通過增加合適的約束條件,濾除掉不合適的運(yùn)算結(jié)果。
非介入睡眠監(jiān)測技術(shù)是目前睡眠監(jiān)測系統(tǒng)開發(fā)的一個熱點(diǎn)和趨勢。如何搭建睡眠傳感監(jiān)測裝置,實(shí)時(shí)采集人體振動信號并獲得準(zhǔn)確心率、呼吸、體動參數(shù)是我們追求的目標(biāo)。通過采集的心率數(shù)據(jù),可進(jìn)一步分析心率不均勻系數(shù),心率與睡眠周期的關(guān)系,呼吸與睡眠周期的關(guān)系,進(jìn)而分析整晚睡眠的情況。另外,BCG在心臟疾病、心衰等方面也有潛在的應(yīng)用價(jià)值。通過算法,提取采樣數(shù)據(jù)的極值點(diǎn),得到的BCG信號的J波來計(jì)算心率,可進(jìn)一步分析對應(yīng)的BCG信號其他波峰的特征,構(gòu)建基于類關(guān)聯(lián)規(guī)則的分類器,判斷該BCG信號是否為高血壓信號。
該項(xiàng)目可為分析用戶健康水平提供參考,在醫(yī)療健康應(yīng)用方面展開更深入的研究。