郭珊山,吳朝暉,汪慶,李斌
(華南理工大學(xué)電子與信息學(xué)院,廣東廣州510640)
支氣管哮喘是危害人類健康的常見疾病,近年來發(fā)病率逐年提升,疾病造成的社會負(fù)擔(dān)不斷增加。目前全球高達(dá)3億哮喘患者,中國超過3 000萬人,目前尚無有效的根治方法[1]。世界衛(wèi)生組織制定的GINA(全球哮喘防治創(chuàng)議)和我國的《支氣管哮喘防治指南》均將PEF或FEV1以及FEV1%作為哮喘急性發(fā)作期和非急性發(fā)作期病情嚴(yán)重程度和判斷的金標(biāo)準(zhǔn)[2],對于支氣管哮喘疾病患者和高發(fā)人群來說,若能進(jìn)行實(shí)時PEF和FEV1以及FEV1%指標(biāo)監(jiān)測,在哮喘發(fā)作之前就可以發(fā)現(xiàn)征兆,及時采取治療措施,避免因哮喘突然發(fā)作引起生命危險,同時經(jīng)過長期監(jiān)測并結(jié)合專業(yè)治療,最終有望控制哮喘。針對哮喘病理指標(biāo)監(jiān)測,國內(nèi)外相關(guān)學(xué)者也進(jìn)行了深入的研究[3]。然而,在國內(nèi)市場上除了歐美等國家生產(chǎn)的便攜式監(jiān)測儀外鮮有國產(chǎn)的便攜家用的哮喘病監(jiān)測設(shè)備,根源在于精度問題是哮喘病病理指標(biāo)監(jiān)測的技術(shù)瓶頸。針對上述問題,本文提出了一種基于小波分析和BP神經(jīng)網(wǎng)絡(luò)結(jié)合的校準(zhǔn)方法,同時將該小波分析和神經(jīng)網(wǎng)絡(luò)算法與MSP430單片機(jī)結(jié)合,完成哮喘病監(jiān)測系統(tǒng)的校準(zhǔn)。該校準(zhǔn)算法收斂性好、實(shí)現(xiàn)方便、擬合精度高。
圖1為自主研發(fā)的基于小波分析和神經(jīng)網(wǎng)絡(luò)的便攜式哮喘病監(jiān)測系統(tǒng)。該系統(tǒng)中原始樣本數(shù)據(jù)來自于校準(zhǔn)實(shí)驗(yàn)平臺,具體在下一章節(jié)中將作出詳細(xì)描述。校準(zhǔn)實(shí)驗(yàn)平臺獲取的原始樣本數(shù)據(jù)帶有一定的高頻噪聲,利用小波分析可以有效濾除高頻噪聲[4]。濾除噪聲的校準(zhǔn)樣本數(shù)據(jù)進(jìn)行歸一化處理,使用MATLAB工具編寫神經(jīng)網(wǎng)絡(luò)算法,將歸一化處理后的校準(zhǔn)數(shù)據(jù)輸入到神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練,直到符合設(shè)定的精度要求為止。該網(wǎng)絡(luò)的各層權(quán)值以及閾值參數(shù)將采用C語言編寫神經(jīng)網(wǎng)絡(luò)計算程序嵌入到MSP430單片機(jī)中。該系統(tǒng)充分利用了MSP430單片機(jī)豐富的接口以及浮點(diǎn)運(yùn)算能力,單片機(jī)外掛病情采集系統(tǒng)實(shí)時采集哮喘患者的病情狀況,將采集的數(shù)據(jù)進(jìn)行小波去噪、歸一化處理后調(diào)用神經(jīng)網(wǎng)絡(luò)計算程序診斷分析,將采集的電壓信號映射成便于理解的哮喘患者病理指標(biāo)信號,并由LCD實(shí)時顯示監(jiān)測結(jié)果。
圖1 基于小波分析和神經(jīng)網(wǎng)絡(luò)的便攜式哮喘病監(jiān)測系統(tǒng)
本文需要完成哮喘患者呼氣峰流速(PEF)和一秒呼氣量(FEV1)以及用力呼氣量占用力肺活量比值(FEV1%)的校準(zhǔn),針對PEF參數(shù),計算公式為:
其中N為有效采樣次數(shù),flow(N)為第N次氣體流量數(shù)據(jù)。單片機(jī)可通過式(2)計算PEF。
對于FEV1參數(shù),其表達(dá)式為:
式中Δt為采樣間隔,N為計時滿一秒的有效采樣次數(shù),根據(jù)FEV1的醫(yī)學(xué)定義,可知Δt=1/N。對于FEV1%參數(shù),運(yùn)算公式為[5]:
其中,F(xiàn)VC為用力肺活量,其運(yùn)算表達(dá)式為:
式中M為監(jiān)測開始至結(jié)束內(nèi)所有有效采樣次數(shù)。flow()是關(guān)于電壓-氣流量的函數(shù)關(guān)系模型,對PEF、FEV1、FEV1%3個監(jiān)測指標(biāo)的精度起決定性作用,本文主要工作就是基于MSP430和小波分析以及神經(jīng)網(wǎng)絡(luò)算法來建立和校準(zhǔn)該函數(shù)模型。
1988年,Mallat將計算機(jī)的多尺度分析思想引入小波分析中,提出了多分辨率分析的概念[6]。同時提出了相應(yīng)的小波分解和重構(gòu)算法,也就是Mallat算法。本文將采用該算法來對原始樣本數(shù)據(jù)去噪,根據(jù)多分辨率原理,對原始樣本數(shù)據(jù)x[n]進(jìn)行多分辨率分析,即將信號序列分解成一個低頻的平滑部分和一個高頻的細(xì)節(jié)部分,分解后的低頻部分可繼續(xù)進(jìn)行分解如圖2所示。設(shè)第j級的平滑信號為第j+1級平滑信號為細(xì)節(jié)信號為具體分解公式為[7]:
式中hd(n)和gd(n)為由小波函數(shù)和尺度函數(shù)確定的分解低通和高通濾波系數(shù)。該系數(shù)可由MATLAB工具求得,文中采用db3小波進(jìn)行3層小波分解。由于本文中使用的原始樣本數(shù)據(jù)是低頻信號,在原始數(shù)據(jù)采集過程中由于系統(tǒng)和環(huán)境的干擾,夾雜著高頻噪聲,利用Mallat分解算法可有效對信號進(jìn)行多分辨率分析,將低頻信號和高頻信號分解出來。
圖2 Mallat算法多層分解結(jié)構(gòu)圖
基于平穩(wěn)白噪聲的正交小波變換仍然是平穩(wěn)的白噪聲這一結(jié)論,Donoho和Johnstone提出了小波硬、軟閾值去噪的方法[8],該方法的思路簡單:通過設(shè)定一個閾值,與各層小波的細(xì)節(jié)信號和平滑信號比較絕對值大于閾值的保留,小于閾值的直接剔除。本文中采用該閾值去噪的方法進(jìn)行信號去噪。
去掉噪聲的細(xì)節(jié)信號和平滑信號可以通過公式(7)重構(gòu),來獲取校準(zhǔn)樣本數(shù)據(jù)。
圖3 Mallat算法多層重構(gòu)結(jié)構(gòu)圖
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是 1986年由Rumelhart和McCelland提出的,它是一種誤差按反向傳播的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一[9]。BP神經(jīng)網(wǎng)絡(luò)由輸入層、隱含層、輸出層構(gòu)成,具有非常強(qiáng)的非線性映射能力,三層神經(jīng)網(wǎng)絡(luò)可以模擬任意復(fù)雜的非線性問題[10]。針對本文所研究的哮喘病理參數(shù)的校準(zhǔn),需要精確映射電壓信號與呼吸氣流信號的函數(shù)關(guān)系,因此本文采用如圖4所示的三層BP網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。其核心思想是每個神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)的輸出值是由上層所有節(jié)點(diǎn)的輸出值、當(dāng)前節(jié)點(diǎn)與上一層所有節(jié)點(diǎn)的權(quán)值和當(dāng)前節(jié)點(diǎn)的閥值以及激活函數(shù)來決定,其理論分析詳見文獻(xiàn)[11]。近年來,將BP神經(jīng)網(wǎng)絡(luò)應(yīng)用到疾病的分析和診斷也是一大熱點(diǎn),取得了很多豐碩成果[12]。
圖4 三層BP網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖
文中,輸入層維數(shù)為1,輸出層維數(shù)為1,隱含層維數(shù)通過MATLAB實(shí)驗(yàn)來確定。通過設(shè)置不同隱含層神經(jīng)元個數(shù)進(jìn)行MATLAB仿真,進(jìn)行多次實(shí)驗(yàn)并取收斂步數(shù)均值最少的隱含層神經(jīng)元個數(shù)為本文的隱含層維數(shù)。根據(jù)實(shí)驗(yàn)本文選取隱含層神經(jīng)元維數(shù)為5。根據(jù)上述理論以及MATLAB實(shí)驗(yàn)確認(rèn)的各項(xiàng)參數(shù)編寫神經(jīng)網(wǎng)絡(luò)計算程序嵌入到MSP430單片機(jī)中,具體實(shí)現(xiàn)公式如下:
其中,xi為神經(jīng)網(wǎng)絡(luò)輸入層輸入信號,aj為網(wǎng)絡(luò)隱含層輸出信號,b1為神經(jīng)網(wǎng)絡(luò)輸出層輸出信號,w1j為神經(jīng)網(wǎng)絡(luò)隱含層神經(jīng)元權(quán)重,w2j為神經(jīng)網(wǎng)絡(luò)輸出層神經(jīng)元權(quán)重,b1j為神經(jīng)網(wǎng)絡(luò)隱含層神經(jīng)元閾值,b2j為神經(jīng)網(wǎng)絡(luò)輸出層神經(jīng)元閾值。f1()為隱含層激活函數(shù),f2()為輸出層激活函數(shù),具體表達(dá)式分別如式(11)、(12):
由于神經(jīng)網(wǎng)絡(luò)計算程序需要嵌入到MSP430單片機(jī)中,一方面,單片機(jī)運(yùn)行指數(shù)函數(shù)需要耗費(fèi)大量的單片硬件資源,降低單片機(jī)運(yùn)算速度,另一方面,指數(shù)函數(shù)運(yùn)算結(jié)果也需要大量的數(shù)據(jù)存儲空間,若不完全存儲,勢必影響神經(jīng)網(wǎng)絡(luò)輸出數(shù)據(jù)精度[13]。由于單片機(jī)處理多項(xiàng)式函數(shù)不管是硬件資源使用以及數(shù)據(jù)存儲空間占用都優(yōu)于指數(shù)函數(shù)。
基于此,本文將采用多項(xiàng)式函數(shù)來替代(11)式,通過數(shù)據(jù)擬合的方式進(jìn)行分段擬合,具體擬合方法詳見文獻(xiàn)[14],經(jīng)過擬合處理,可明顯提高單片機(jī)的運(yùn)算速度。
本文的校準(zhǔn)樣本數(shù)據(jù)來源于圖5所示的校準(zhǔn)實(shí)驗(yàn)平臺,該平臺由空壓機(jī)、減壓閥、通道選擇器、流量控制器組、中央控制器組成??諌簷C(jī)產(chǎn)生穩(wěn)定氣源,流量控制器組分別由4臺不同量程的流量控制器組成,由單片機(jī)電路控制通道選擇器選擇合適通道,完成不同氣流量的大小控制,結(jié)合監(jiān)測設(shè)備完成氣流量-電壓的映射關(guān)系的原始樣本數(shù)據(jù)采集。
圖5 便攜式哮喘病監(jiān)測系統(tǒng)校準(zhǔn)實(shí)驗(yàn)平臺原理框圖
下面以300LPM為例進(jìn)行分析。在校準(zhǔn)階段,校準(zhǔn)實(shí)驗(yàn)平臺產(chǎn)生300LPM的氣流量,激勵監(jiān)測設(shè)備產(chǎn)生電壓值。理論上分析,在其他條件不變的情況下恒定的氣流將激勵出恒定的電壓信號,但在實(shí)際測量中不免受到系統(tǒng)本身以及外界環(huán)境影響,信號中混雜了高頻噪聲,如圖6(a)所示。這些噪聲將嚴(yán)重影響監(jiān)測系統(tǒng)的校準(zhǔn)精度。從圖6(b)及表1可以看出本文中采用的小波分析算法具有良好的噪聲濾除效果,濾除噪聲后的信號將作為校準(zhǔn)樣本數(shù)據(jù)送入神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí)訓(xùn)練。
圖6 標(biāo)準(zhǔn)值300LPM情況下信號小波去噪對比圖
在監(jiān)測系統(tǒng)工作狀態(tài)時,患者用力呼氣的同時依然受到系統(tǒng)本身以及環(huán)境的影響,導(dǎo)致真實(shí)波形上夾雜了噪聲,這些噪聲若不濾掉,系統(tǒng)調(diào)用校準(zhǔn)函數(shù)模型時同時對噪聲進(jìn)行計算,將嚴(yán)重產(chǎn)生誤判,這對系統(tǒng)監(jiān)測精度產(chǎn)生重要影響。因此,將小波分析嵌入到MSP430系統(tǒng),患者的呼氣信號經(jīng)過小波閾值去噪后才進(jìn)行采樣,如圖7所示,信號質(zhì)量得到了明顯提升。
在校準(zhǔn)階段,經(jīng)過去噪后的信號首先進(jìn)行數(shù)據(jù)歸一化處理,然后通過BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練,訓(xùn)練目標(biāo)設(shè)置為0.001,也就是信號的訓(xùn)練值與樣本值誤差小于0.001。
表1 信號去噪前后對比分析
圖7 便攜式哮喘病監(jiān)測測系統(tǒng)實(shí)時采樣去噪前后對比
圖8 函數(shù)逼近結(jié)果圖
圖8為采用MATLAB編程,經(jīng)過神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練后的函數(shù)逼近結(jié)果,各個擬合點(diǎn)滿足誤差小于0.001,具有較高的擬合精度。根據(jù)該擬合結(jié)果,確定該神經(jīng)網(wǎng)絡(luò)各權(quán)重以及閾值參數(shù)為便攜式哮喘病監(jiān)測系統(tǒng)的校準(zhǔn)參數(shù)。將該參數(shù)結(jié)合小波算法嵌入到MSP430中,然后對該系統(tǒng)重新激勵,分析比較結(jié)果,如表2所示。本實(shí)驗(yàn)選取了100LPM、200LPM、300LPM、400LPM、500LPM、600LPM為測試點(diǎn),將上述標(biāo)準(zhǔn)流量經(jīng)過便攜式哮喘病監(jiān)測系統(tǒng),直接映射出流量值輸出。實(shí)驗(yàn)結(jié)果表明,在低流量時偏差較大,隨著流量增大偏差減小,這符合傳感器實(shí)際的非線性特性,根據(jù)實(shí)驗(yàn)結(jié)果,本文研究的便攜哮喘病檢測系統(tǒng)的校準(zhǔn)系統(tǒng)完全符合我國發(fā)布的《肺功能儀器校準(zhǔn)規(guī)范》偏差10%的要求[15]。
表2 測試結(jié)果分析表(單位:LPM)
相比較于傳統(tǒng)濾波器,本文中采用Mallat小波算法具有品質(zhì)因數(shù)恒定,分解尺度靈活可控,結(jié)合MALAB和MSP430單片機(jī)系統(tǒng)實(shí)現(xiàn)起來方便,運(yùn)算量小等優(yōu)點(diǎn)。實(shí)驗(yàn)表明本文將小波分析應(yīng)用到便攜哮喘病檢測系統(tǒng)的校準(zhǔn)獲得了良好的效果,對提升監(jiān)測系統(tǒng)精度起到了重要作用。同時對小波分析后的信號采用BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練,對未知值的預(yù)測和對校準(zhǔn)函數(shù)模型的建立準(zhǔn)確性顯著,為后續(xù)實(shí)現(xiàn)高精度哮喘病理指標(biāo)采集奠定了堅(jiān)實(shí)的基礎(chǔ)。將小波分析與BP神經(jīng)網(wǎng)絡(luò)結(jié)合,利用MSP430單片機(jī)離線實(shí)現(xiàn)信號的小波去噪以及神經(jīng)網(wǎng)絡(luò)的分析與處理應(yīng)用于實(shí)際系統(tǒng)實(shí)驗(yàn)結(jié)果表明完全可行,如對系統(tǒng)和算法做進(jìn)一步改進(jìn),系統(tǒng)的精度還能進(jìn)一步提升。該校準(zhǔn)算法可廣泛應(yīng)用于便攜式生物醫(yī)學(xué)信號采集系統(tǒng)。
[1]孫海平,華偉,倪淮亮,等.槐杞黃顆粒對毛細(xì)支氣管炎后哮喘的預(yù)防作用[J].江蘇醫(yī)藥,2012,7(12):17-27.
[2]中華醫(yī)學(xué)會呼吸病學(xué)分會哮喘學(xué)組.中國支氣管哮喘防治指南(基層版)[J].中國實(shí)用內(nèi)科雜志,2013,8(8):615-622.
[3]胡廣書,汪夢蝶.生物醫(yī)學(xué)信號處理研究綜述[J].數(shù)據(jù)采集與處理,2015,30(5):915-932.
[4]楊智,羅國,袁芳芳.平穩(wěn)小波變換在膈肌肌電降噪中的應(yīng)用[J].數(shù)據(jù)采集與處理,2013,28(5):546-552.
[5]李京鵬,魏紅.呼氣峰流速監(jiān)測在社區(qū)兒童哮喘管理中的應(yīng)用分析[J].山西醫(yī)藥雜志,2013,42(12):1390-1391.
[6]MALLATS.A theory for multi-re solution signal decomposition:the wavelet rep resentation [J].IEEE T ransactionon Pattern Analysis and Machine Intelligence,1989,11(4):674-693.
[7]王江云,曾瓊,王會霞.基于小波分析的地形多分辨率建模方法[J].北京航空航天大學(xué)學(xué)報,2014,40(8):1121-1126.
[8]張國偉,黃建國,李力.一種改進(jìn)型閾值去噪算法的FPGA設(shè)計與實(shí)現(xiàn)[J].電子測量技術(shù),2010,33(7):80-83.
[9]張寶堃,張寶一.基于BP神經(jīng)網(wǎng)絡(luò)的非線性函數(shù)擬合[J].人工智能及識別技術(shù),2012(27):6579-6583.
[10]張翼鵬,陳亮,郝歡.一種改進(jìn)的量子神經(jīng)網(wǎng)絡(luò)訓(xùn)練算法[J].電子與信息學(xué)報,2013(7):1630-1635.
[11]周金海,申剛磊,丁小麗,等.BP神經(jīng)網(wǎng)絡(luò)在疾病分析影響因素中的作用[J].中國組織工程研究,2011,15(9):1702-1705.
[12]郭永琪.生物醫(yī)學(xué)中的智能信號處理方法研究[D].武漢:武漢理工大學(xué),2010.
[13]彭丹,楊磊,楊家強(qiáng).熱膜式氣流量傳感器指數(shù)過渡分段擬合方法[J].浙江大學(xué)學(xué)報(工學(xué)版),2015,49(10):1990-1998.
[14]求是科技.單片機(jī)典型模塊設(shè)計實(shí)例導(dǎo)航[M].2版.北京:人民郵電出版社,2008.
[15]馬建民,羅崢.肺功能儀校準(zhǔn)方法[J].上海計量測試,2013(6):33-35.