曹偉 單華鋒 譚震宇 王桂鋒
麒盛科技股份有限公司,浙江嘉興 314000
人的生命有三分之一的時(shí)間是在睡眠中度過(guò)的,睡眠質(zhì)量對(duì)人的健康至關(guān)重要[1]。得益于自動(dòng)化技術(shù)的普及,及對(duì)老年人生理健康愈加關(guān)注,研發(fā)了一種非介入式睡眠監(jiān)測(cè)設(shè)備。該設(shè)備安裝在智能床床架上,接觸床墊,可測(cè)量人平躺時(shí)的生理狀態(tài),如心率、呼吸、體動(dòng)次數(shù)等體征參數(shù),用于監(jiān)測(cè)使用者的健康狀態(tài),并提供必要的報(bào)警功能。該睡眠監(jiān)測(cè)系統(tǒng)使用壓電傳感器壓電效應(yīng)原理,將人平躺時(shí)人體傳遞的振動(dòng)信號(hào)轉(zhuǎn)化為壓電模片兩極正負(fù)相反的電荷信號(hào),并通過(guò)信號(hào)調(diào)理電路,ADC模數(shù)轉(zhuǎn)換模塊,輸入到微機(jī)系統(tǒng),并由微機(jī)系統(tǒng)算法進(jìn)行處理,提取體征參數(shù)。項(xiàng)目通過(guò)大量測(cè)試,對(duì)采集的信號(hào)數(shù)據(jù)特征進(jìn)行對(duì)比分析,按照采樣信號(hào)特征分為3種類(lèi)型,同時(shí)基于該微機(jī)系統(tǒng)設(shè)計(jì)并實(shí)現(xiàn)了一種心率算法。

ECG、BCG信號(hào)特征如圖1所示。其中,R峰為ECG(Electrocardiogram)信號(hào)正向最大值,J峰為BCG(Ballistocardiogram)信號(hào)正向最大值(與心臟射血過(guò)程有關(guān))。基于壓電薄膜的BCG信號(hào)已被驗(yàn)證可以用于心動(dòng)周期檢測(cè)、心率變異性分析以及心功能檢測(cè)等方面[2]。然而,由于床墊厚度及材質(zhì)差異、傳感器安裝位置、人體睡姿等因素影響,項(xiàng)目中微機(jī)系統(tǒng)采樣BCG信號(hào)波形差異很大,主要有如圖2所示的3種情況。

圖2(a)所示是心率信號(hào)特征比較明顯情況,可以直接通過(guò)提取極值點(diǎn)來(lái)計(jì)算心率周期;圖2(b)所示是心率呼吸并存;圖2(c)所示為心率信號(hào)不明顯的情況。針對(duì)后兩種情況,需要通過(guò)提取心率信號(hào)特征后再做計(jì)算。為此,基于上述3類(lèi)信號(hào)設(shè)計(jì)了一種心率算法,實(shí)現(xiàn)了在各種情況下的心率體征參數(shù)提取。
信號(hào)預(yù)處理主要是濾除采樣信號(hào)中由傳感器高阻抗特性、電磁干擾、運(yùn)放電路等帶來(lái)的干擾信號(hào)。預(yù)處理算法包括對(duì)采樣信號(hào)趨勢(shì)項(xiàng)消除及低通濾波,用來(lái)消除信號(hào)中的基線漂移及高頻信號(hào)噪聲。
高阻抗的壓電傳感器信號(hào)通過(guò)放大電路會(huì)產(chǎn)生零點(diǎn)漂移,從而對(duì)采樣信號(hào)疊加一個(gè)趨勢(shì)項(xiàng)。為了消除這個(gè)趨勢(shì)項(xiàng),使用方程y=mx+b進(jìn)行最小二乘擬合采樣數(shù)據(jù),余項(xiàng)(即為消除了趨勢(shì)項(xiàng)的信號(hào))如下:

其中,fi(x)——處理后信號(hào);
yi——輸入信號(hào);
m、b——使用一次函數(shù)進(jìn)行最小二乘擬合的函數(shù)的參數(shù)。
方程中,對(duì)于m和b有下式的唯一解:

設(shè)計(jì)采樣率為200 Hz,截止頻率10 Hz的6階低通巴特沃斯濾波器濾除采樣信號(hào)的工頻噪聲及其他高頻信號(hào)噪聲。
當(dāng)采樣的心率信號(hào)如圖2(a)所示,心率特征體現(xiàn)比較明顯時(shí),可按下述方法直接計(jì)算BCG信號(hào)J波周期:
(1)提取預(yù)處理后信號(hào)的極大值點(diǎn)(x0,y0),(x1,y1),...,(xn,yn),使用3次樣條插值函數(shù)求包絡(luò),得到相對(duì)光滑的曲線,即在每個(gè)子區(qū)間[xi,xi+1]中,使用公式(3)的插值函數(shù)描繪包絡(luò)線。


(2)提取包絡(luò)線大于平均值的極大值點(diǎn)(每個(gè)極大值所在位置時(shí)間間隔即為心動(dòng)周期),如圖3所示。
(3)統(tǒng)計(jì)矩形窗內(nèi)所有極大值點(diǎn)的鄰近點(diǎn)距離,得到一組J-J波的時(shí)間寬度,對(duì)應(yīng)了J波周期數(shù)值,取中值作為心率值。
當(dāng)心率呼吸信號(hào)重疊(如圖2(b)所示),或者心率信號(hào)特征不明顯時(shí)(如圖2(c)所示),則需要先剝離出心率信號(hào),通過(guò)計(jì)算信號(hào)周期來(lái)得到心率參數(shù),具體如下:
(1)利用BCG信號(hào)J波加速度相對(duì)呼吸信號(hào)較大的特征,采用下式二階微分器計(jì)算信號(hào)二階導(dǎo)數(shù),突出J波信號(hào)特征。

其中,h——信號(hào)的采樣時(shí)間間隔;
f(i)——采樣時(shí)間序列的值;
——離散時(shí)間采樣信號(hào)的二階導(dǎo)數(shù)。
(2)使用HUANG N E[3]提出的經(jīng)驗(yàn)?zāi)B(tài)分解算法進(jìn)一步濾除信號(hào)中殘留的呼吸信號(hào)成分,方法如下:
提取初始信號(hào)的極值點(diǎn),通過(guò)3次樣條插值函數(shù)分別將極大值點(diǎn)和極小值點(diǎn)連接起來(lái),生成上下包絡(luò)線g1(x)和g2(x)。通過(guò)式(6)完成一次信號(hào)篩選過(guò)程。圖4所示為使用經(jīng)驗(yàn)?zāi)B(tài)分解算法完成一次信號(hào)篩選處理后的信號(hào)波形。



其中,fi——濾除后信號(hào);
yi——原信號(hào);
g1——上包絡(luò);
g2——下包絡(luò)。
(3)使用希爾伯特變換[4]求心率包絡(luò),同時(shí)可進(jìn)一步使用3次樣條插值函數(shù)求二次包絡(luò),使曲線更光滑。

其中,Δt——采樣周期
希爾伯特變換算法輸出包絡(luò)信號(hào)公式如下:

其中,fi——處理后信號(hào);
yi——實(shí)離散信號(hào);
(4)對(duì)包絡(luò)信號(hào)求解信號(hào)序列自相關(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ù)值,取中值作為心率值。

上述心率算法程序是在信號(hào)采樣頻率為200 Hz,矩形窗長(zhǎng)度為10 s,計(jì)算頻率為1次/秒的條件下運(yùn)行。經(jīng)測(cè)試,在心率特征體現(xiàn)比較明顯時(shí),采用直接計(jì)算J波周期的方法得到準(zhǔn)確的心率參數(shù)概率更高;而在心率呼吸信號(hào)重疊或心率信號(hào)特征不明顯時(shí),在使用者平躺靜息的狀態(tài)下,采用剝離心率信號(hào)計(jì)算BCG信號(hào)周期,可得到準(zhǔn)確的心率參數(shù)。
然而,在實(shí)際的應(yīng)用場(chǎng)景中,如果使用者在非靜息狀態(tài)下,比如發(fā)生體動(dòng)、翻身等動(dòng)作,使初始信號(hào)中疊加了振幅較大的振動(dòng)信號(hào),導(dǎo)致算法輸出無(wú)效的數(shù)據(jù),對(duì)于這種情況,需要增加一些約束條件,濾除掉無(wú)效數(shù)據(jù),方法如下:
(1)計(jì)算心率結(jié)果需要在35~110次/分之間,如果計(jì)算結(jié)果不能滿足要求,舍棄當(dāng)前運(yùn)算結(jié)果;
(2)對(duì)于矩形窗內(nèi)統(tǒng)計(jì)的每一個(gè)極大值點(diǎn),需大于包絡(luò)線平均值,同時(shí)臨近的兩個(gè)極小值點(diǎn)須小于平均值,標(biāo)記不能滿足要求的該極值點(diǎn),標(biāo)記數(shù)據(jù)超過(guò)一定比例,則認(rèn)為當(dāng)前處理的信號(hào)序列為非穩(wěn)定狀態(tài),舍棄當(dāng)前的運(yùn)算結(jié)果;
(3)對(duì)于算法得到的一組J波周期數(shù)值,分別計(jì)算這組數(shù)值與中值的偏差值,標(biāo)記與中值偏差≥10%的值,標(biāo)記數(shù)據(jù)超過(guò)一定比例,則認(rèn)為當(dāng)前處理的信號(hào)序列為非穩(wěn)定狀態(tài),舍棄當(dāng)前的運(yùn)算結(jié)果。
因此,為了得到盡可能準(zhǔn)確的心率參數(shù),一方面,通過(guò)算法得到可能的心率參數(shù);另一方面,通過(guò)增加合適的約束條件,濾除掉不合適的運(yùn)算結(jié)果。
非介入睡眠監(jiān)測(cè)技術(shù)是目前睡眠監(jiān)測(cè)系統(tǒng)開(kāi)發(fā)的一個(gè)熱點(diǎn)和趨勢(shì)。如何搭建睡眠傳感監(jiān)測(cè)裝置,實(shí)時(shí)采集人體振動(dòng)信號(hào)并獲得準(zhǔn)確心率、呼吸、體動(dòng)參數(shù)是我們追求的目標(biāo)。通過(guò)采集的心率數(shù)據(jù),可進(jìn)一步分析心率不均勻系數(shù),心率與睡眠周期的關(guān)系,呼吸與睡眠周期的關(guān)系,進(jìn)而分析整晚睡眠的情況。另外,BCG在心臟疾病、心衰等方面也有潛在的應(yīng)用價(jià)值。通過(guò)算法,提取采樣數(shù)據(jù)的極值點(diǎn),得到的BCG信號(hào)的J波來(lái)計(jì)算心率,可進(jìn)一步分析對(duì)應(yīng)的BCG信號(hào)其他波峰的特征,構(gòu)建基于類(lèi)關(guān)聯(lián)規(guī)則的分類(lèi)器,判斷該BCG信號(hào)是否為高血壓信號(hào)。
該項(xiàng)目可為分析用戶健康水平提供參考,在醫(yī)療健康應(yīng)用方面展開(kāi)更深入的研究。