號中肌電噪聲;輸出裝置4與噪聲去除模塊3相連,用于輸出濾除噪聲后的數(shù)字心電信號。
[0051]延時模塊31與A/D轉(zhuǎn)換器2相連,用于對數(shù)字心電信號進行延時;濾波模塊32與延時模塊31相連,用于對延時后的數(shù)字心電信號進行濾波;斜率檢測模塊33與A/D轉(zhuǎn)換器2相連,用于檢測數(shù)字心電信號的斜率。
[0052]帶寬控制模塊34與斜率檢測模塊33、濾波模塊32分別相連,用于對濾波模塊32的濾波器帶寬進行控制。
[0053]請參考圖2,為圖1所示的心電信號濾波系統(tǒng)的心電信號濾波方法的流程圖,包括以下步驟:
[0054]S1、將接收到的模擬心電信號轉(zhuǎn)化為數(shù)字心電信號;具體的,輸入裝置I接收模擬心電信號并將該模擬心電信號傳送至與輸入裝置I相連的A/D轉(zhuǎn)換器2,將模擬心電信號轉(zhuǎn)換為如圖1所示的數(shù)字心電信號12,數(shù)字心電信號12包含了病人身上采集的所有導(dǎo)聯(lián)信號。
[0055]S2、對數(shù)字心電信號進行預(yù)處理;作為優(yōu)選實施方式,將數(shù)字心電信號12同時進入延時模塊31和斜率檢測模塊33 ;具體來說,所有的心電信號12都進入延時模塊31,而進入斜率檢測模塊33的心電信號12只選取十二導(dǎo)聯(lián)中的導(dǎo)聯(lián)I1、V2和V5三個導(dǎo)聯(lián)的信號,需要注意的是,所有導(dǎo)聯(lián)的信號均是并行處理,保證同一時刻內(nèi)所有導(dǎo)聯(lián)的時間偏移均相同,不會發(fā)生兩個導(dǎo)聯(lián)之間由于時間偏移量的不同而產(chǎn)生的信號錯位。
[0056]S3、對經(jīng)過預(yù)處理后的數(shù)字心電信號進行濾波處理,濾去所述數(shù)字心電信號中的肌電信號;作為較佳實施例,導(dǎo)聯(lián)I1、V2和V5信號通過斜率檢測模塊33后,進入帶寬控制模塊34,將通過延時模塊31處理后的心電信號與通過帶寬控制模塊34處理后的心電信號輸入濾波模塊32進行濾波,以帶寬控制模塊34確定的帶寬濾除心電信號中的肌電信號。
[0057]S4、輸出濾波后得到的結(jié)果;具體地,將經(jīng)過濾波處理的信號傳輸?shù)捷敵鲅b置4進行輸出。
[0058]請參考圖3,為圖1所示的心電信號濾波系統(tǒng)的斜率檢測模塊與帶寬控制模塊的產(chǎn)品結(jié)構(gòu)示意圖。
[0059]其中,斜率檢測模塊33包括:差分模塊331、取絕對值模塊332、取最大值模塊333。
[0060]差分模塊331與A/D轉(zhuǎn)換器2相連,用于對數(shù)字心電信號中的導(dǎo)聯(lián)I1、V2、V5信號進行差分處理得到差分信號,取絕對值模塊332與差分模塊331相連,用于對差分信號進行取絕對值、取最大值模塊333與取絕對值模塊332相連,用于求取絕對值后的信號中的最大值。
[0061]帶寬控制模塊34包括:腐蝕處理模塊341、膨脹處理模塊342、狀態(tài)機343、比值模塊344
[0062]腐蝕處理模塊341與取最大值模塊333相連,用于對求最大值后的信號進行腐蝕處理、膨脹處理模塊342與腐蝕處理模塊341相連,用于對腐蝕后的信號進行膨脹處理、狀態(tài)機343與腐蝕處理模塊341相連,用于選取腐蝕后的信號的最大斜率、比值模塊344與膨脹處理模塊342以及狀態(tài)機343分別相連,用于得到并輸出比率。
[0063]圖1所示的斜率檢測模塊與帶寬控制模塊的工作過程如下:
[0064]取數(shù)字心電信號的三個導(dǎo)聯(lián)信號,一般取十二導(dǎo)聯(lián)中的II導(dǎo)、V2導(dǎo)和V5導(dǎo)三個導(dǎo)聯(lián)信號,記為02A、02B和02C,通過差分模塊331得到差分信號331A、331B和331C,然后通過與差分模塊331相連的取絕對值模塊332對該差分信號取絕對值,得到信號332A、332B和332C。再通過與取絕對值模塊332相連的取最大值模塊333求三個絕對值332A、332B和332C中的最大值。通過與取最大值模塊333相連的腐蝕處理模塊341對這個求得的最大值作腐蝕處理,腐蝕是圖像處理中常用的一個技術(shù),作為較佳實施例,這里將腐蝕處理定義為取該最大值鄰域內(nèi)臨近的5個值中的最小值作為腐蝕結(jié)果。
[0065]腐蝕后的信號分別通過膨脹處理模塊342和狀態(tài)機343,膨脹處理模塊342和狀態(tài)機343并聯(lián)連接于腐蝕處理模塊341和比值輸出模塊344之間。膨脹也是圖像處理的常用技術(shù),作為較佳實施例,這里將膨脹處理定義為取鄰域內(nèi)臨近47個值的最大值。之所以選擇47個樣本是因為在采樣率為500Hz時,以秒為單位47/500寬度剛好比QRS綜合波寬一點。經(jīng)上處理后,膨脹模塊處理模塊342得到膨脹斜率D,并將膨脹斜率D輸入比值輸出模塊344中。
[0066]狀態(tài)機340用于將輸入的腐蝕信號處理后輸出一個控制值,由該控制值和膨脹處理輸出值共同得到帶寬控制信號,再由與膨脹處理模塊342和狀態(tài)機340分別相連的信號輸出模塊341將帶寬控制信號輸出,從而控制濾波模塊32中的線性濾波器的濾波帶寬。
[0067]正如之前所述,腐蝕處理模塊341的輸出腐蝕斜率S在進入膨脹處理模塊342的同時,還進入了狀態(tài)機343。狀態(tài)機343的作用是長時間保持心電信號濾波系統(tǒng)找到的、經(jīng)過腐蝕處理模塊341腐蝕的最大斜率,它的實現(xiàn)過程由如圖3所示的狀態(tài)機343完成:
[0068]如圖4所示,為圖3所示的心電信號濾波方法中狀態(tài)機343的工作原理圖,狀態(tài)機由“0”、“1”、“2”和“3”四個分別代表邏輯條件的狀態(tài)組成,邏輯條件取決于L (斜率閾值)、S (腐蝕斜率)和R (參考斜率)等相關(guān)值,以及狀態(tài)機中時鐘的值,當這些值改變時,狀態(tài)機將由一個狀態(tài)進入另一個狀態(tài),在接下來的內(nèi)容我們將對這點做詳細的描述。
[0069]在圖4中,我們使用“時鐘0-3”,分別對應(yīng)于“狀態(tài)0-3”。時鐘O在初始化后狀態(tài)O用來做一個時間暫停,保證系統(tǒng)不會由于突然的工作發(fā)生信號的突變,時鐘I是狀態(tài)機I在L為常量時的計時器,時鐘2是狀態(tài)2的計時器,時鐘3是狀態(tài)3找到一個新的L時的計時器。圖中“==”表示數(shù)學(xué)上的等于(=)。
[0070]狀態(tài)機開始于步驟40:初始化時鐘O為75,時鐘I為160,參考斜率R和斜率閾值L均初始化為O。初始化完成后,進入狀態(tài)O (標注為42),在狀態(tài)O中,不斷裳減時鐘O (標注為44),這個過程中完成樣本點收集等任務(wù),當時鐘O衰減到零時,狀態(tài)機由狀態(tài)O經(jīng)路徑45進入狀態(tài)I (標注為46)。
[0071]在狀態(tài)I中,斜率閾值L保持常量,腐蝕斜率S不斷與L做比較,當時鐘I大于零并且S小于L時,保持在狀態(tài)I并且衰減時鐘1,當S大于等于L時,狀態(tài)機將由狀態(tài)I經(jīng)路徑49進入過程58。若時鐘I衰減到零時,狀態(tài)機仍然處在狀態(tài)1,此時狀態(tài)機將由狀態(tài)I經(jīng)路徑47進入過程50。
[0072]過程50初始化時鐘2為1000,然后狀態(tài)機進入狀態(tài)2(標注為52)。狀態(tài)2中,同樣不斷比較腐蝕斜率S與斜率閾值L,當S小于L時,衰減時鐘2同時減小L,當S大于等于L時,狀態(tài)機由狀態(tài)I經(jīng)路徑57進入過程58。若時鐘2衰減到零時狀態(tài)機仍維持在狀態(tài)2,初始化時鐘2為1000同時令R和L為兩個比較小的值,重新進入狀態(tài)2,比較S和L的大小。
[0073]過程58初始化時鐘3為75同時令L等于S,然后狀態(tài)機進入狀態(tài)3 (標注為60)。狀態(tài)3中,不斷比較S與L的大小,當S小于L時,保持在狀態(tài)3并衰減時鐘3,當S大于等于L時,狀態(tài)機將由狀態(tài)3經(jīng)路徑59進入進程58。若時鐘3衰減到零時狀態(tài)機仍處在狀態(tài)3,將由路徑63進入進程64。
[0074]進程64初始化時鐘I為160并令R等于L,然后狀態(tài)機進入狀態(tài)1,開始新的比較判斷。
[0075]請參考圖3,狀態(tài)機343不斷輸出參考斜率R到比值輸出模塊344中。在比值輸出模塊344中,將由膨脹模塊處理模塊342得到的膨脹斜率D和狀態(tài)機343得到的參考斜率R這兩個值相比,得到比率r,最后將比率r傳輸給濾波模塊32以確定所需的濾波器帶寬。
[0076]濾波模塊32接收延時模塊31得到的各導(dǎo)聯(lián)心電信號,通過比值輸出模塊344傳遞的比率r,確定所需的濾波器帶寬(也即是確定圖5中參數(shù)CO到C12的值),之后使用濾波