《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于DSP的癲癇腦電信號(hào)處理
基于DSP的癲癇腦電信號(hào)處理
摘要: 癲癇的診斷主要依靠臨床病史,腦電圖檢查可作為一種極有價(jià)值的輔助診斷手段。據(jù)統(tǒng)計(jì),80%左右的癲癇病人都具有確定性的腦電異常,而只有5~20%左右的癲癇病人腦電圖表現(xiàn)正常。尤其對臨床診斷困難的非典型癲癇發(fā)作、各種異型癲癇和隱匿型癲癇,腦電圖檢查的重要性更加突出,甚至起著決定性的作用。
Abstract:
Key words :

  1引 言

  癲癇的診斷主要依靠臨床病史,腦電圖檢查可作為一種極有價(jià)值的輔助診斷手段。據(jù)統(tǒng)計(jì),80%左右的癲癇病人都具有確定性的腦電異常,而只有5~20%左右的癲癇病人腦電圖表現(xiàn)正常。尤其對臨床診斷困難的非典型癲癇發(fā)作、各種異型癲癇和隱匿型癲癇,腦電圖檢查的重要性更加突出,甚至起著決定性的作用[1]。

  腦電(EEG)是超高斯或亞高斯信號(hào),通常都含有噪聲、偽跡和串?dāng)_。通常,腦電活動(dòng)總體上被劃分成4個(gè)頻帶成分(β,α,θ和δ等節(jié)律),這些成分的頻率都很低(在0.5~40 Hz范圍)。而臨床分析表明癲癇患者發(fā)病時(shí)以3 Hz棘慢綜合波為多見。換句話說,腦電中有意義的成分基本上都是低頻信號(hào)。這意味著,我們可以通過小波分解將混迭在腦電中的高頻成分濾除后再重構(gòu),從而濾除噪聲和偽跡。通過研究癲癇病人的腦電信號(hào),有助于藥物選擇、劑量調(diào)整和藥物停用的決定,有助于外科手術(shù)治療病例的選定,有助于癲癇和其他發(fā)作性疾病的鑒別。

  本文選用基于TI公司的TMS320C54X系列的DSP芯片開發(fā)平臺(tái)。借助DSP快速數(shù)據(jù)處理的優(yōu)點(diǎn),對癲癇腦電信號(hào)進(jìn)行小波變換,然后濾除小尺度(高頻)成分,保留大尺寸(低頻)成分,最后再對處理后的信號(hào)進(jìn)行重建。實(shí)現(xiàn)流程如圖1所示。

實(shí)現(xiàn)流程

  2離散小波變換算法

  離散小波變換的一個(gè)突破性成果是S.Mallat于1989年在多分辨分析的基礎(chǔ)上提出的快速算法一一Mallat算法[2]。Mallat算法在小波分析中的作用相當(dāng)于快速傅里葉變換(FFT)在傅里葉分析中的作用,他標(biāo)志著小波分析走上了寬闊的應(yīng)用領(lǐng)域。Mallat算法又稱為塔式算法,他由小波濾波器H,G和h,g對信號(hào)進(jìn)行分解和重構(gòu)[3]。分解算法為:

離散小波變換算法

  式中,t為離散時(shí)間序列號(hào),t=1,2,…,N;f(t)為原始信號(hào);j為層數(shù)或小波尺度,j=1,2,…,J,J=log2N;H,G

 

為時(shí)域中的小波分解濾波器,實(shí)際上是濾波器系數(shù);Aj為信號(hào)f(t)在第j層的逼近部分(即低頻成分)的小波系數(shù);Dj為信號(hào)f(t)在第j層的細(xì)節(jié)部分(即高頻部分)的小波系數(shù)。

 

  式(1)的含義是:假定所檢測的離散信號(hào)f(t)為A。信號(hào),信號(hào)f(t)在第2j尺度(第j層)的近似部分,即低頻部分的小波系數(shù)Aj是通過第2j-1尺度(第j-1層)的逼近部分的小波系數(shù)Aj-1與濾波器H卷積,然后將卷積的結(jié)果隔點(diǎn)采樣得到的;而信號(hào)f(t)在第2j尺度(第j層)的細(xì)節(jié)部分,即高頻部分的小波系數(shù)Dj是通過第2j-1尺度(第j-1層)的逼似部分的小波系數(shù)與分解濾波器G卷積,然后將卷積的結(jié)果隔點(diǎn)采樣得到的。

  通過式(1)的分解,在每一尺度2j上(或第j層上)信號(hào)f(t)被分解為近似部分的小波系數(shù)Aj(在低頻子帶上)和細(xì)節(jié)部分的小波系數(shù)D,(在高頻子帶上)。

  重構(gòu)算法為:

重構(gòu)算法

  式中,j為分解的層數(shù),若分解的最高層即分解的深度為J,則j=J-1,J-2,…,1,0;h,g為時(shí)域中的小波重構(gòu)濾波器,實(shí)際上是濾波器系數(shù)。

  式(2)的含義是:信號(hào)f(t)在第2j尺度(第j層)的近似部分的小波系數(shù),即低頻部分的小波系數(shù)Aj是通過第2j+1尺度(第j+1層)的逼近部分的小波系數(shù)Aj+1隔點(diǎn)插零后與重構(gòu)濾波器h卷積以及第2j+1尺度(第j+1層)的細(xì)節(jié)部分的小波系數(shù)Dj+1隔點(diǎn)插零后與重構(gòu)濾波器g卷積,然后求和得到的。不斷重復(fù)這一過程,直到第2°尺度,得到重構(gòu)信號(hào)。

  3小波變換的DSP實(shí)現(xiàn)

  3.1 腦電信號(hào)在CCS 2.2上的輸入與輸出

  CCS 2.2(Code Composer Studio)是由TI公司推出的一種針對標(biāo)準(zhǔn)TMS320調(diào)試接口的集成開發(fā)環(huán)境(IDE),利用CCS集成開發(fā)環(huán)境,用戶可以完成工程定義、程序編輯、編譯鏈接、調(diào)試和數(shù)據(jù)分析等工作環(huán)節(jié)[4]。我們把十進(jìn)制的浮點(diǎn)數(shù)用兩個(gè)十六進(jìn)制數(shù)進(jìn)行表示,采用C語言實(shí)現(xiàn)。

程序

  再利用CCS中的File->Load Data將十六進(jìn)制的數(shù)據(jù)導(dǎo)入到DSP的相應(yīng)內(nèi)存中去。

  反過來,DSP處理之后的數(shù)據(jù)利用CCS的數(shù)據(jù)導(dǎo)出File->Save以文本文件形式保存,再用C語言進(jìn)行數(shù)據(jù)逆轉(zhuǎn)化,把兩個(gè)十六進(jìn)制數(shù)進(jìn)行轉(zhuǎn)化成十進(jìn)制的浮點(diǎn)數(shù)。

程序

  其中的result數(shù)組就是十進(jìn)制的浮點(diǎn)型,origin數(shù)組就是十六進(jìn)制的浮點(diǎn)型。

  3.2核心匯編程序介紹

  以下是以16位定點(diǎn)乘法實(shí)現(xiàn)32位浮點(diǎn)乘法的部分匯編程序:

程序

  3.3 實(shí)驗(yàn)結(jié)果與分析

  圖2(a)為待處理腦電信號(hào),經(jīng)小波分解后(b)~(f)依次為各級(jí)逼近波形圖,(g)~(k)則依次為對應(yīng)的細(xì)節(jié)波形圖。濾掉j=3的細(xì)節(jié)波形即圖2(i),再進(jìn)行小波重構(gòu)后得到圖2(1),從中發(fā)現(xiàn),原圖2(a)和重構(gòu)后的圖2(1)幾乎看不出明顯差別。

實(shí)驗(yàn)結(jié)果與分析

 

  4 結(jié) 語

  利用小波變換的Mallat算法對癲癇患者的腦電信號(hào)進(jìn)行小波分解,保留腦電的源信號(hào)信息,將高頻噪聲濾除,利于進(jìn)一步分析[5]。本文利用了DSP快速數(shù)據(jù)處理的優(yōu)點(diǎn),采用性價(jià)比高的定點(diǎn)型TMS320C54x DSP進(jìn)行浮點(diǎn)數(shù)據(jù)處理,結(jié)果表明,處理方法可行,效果明顯,文中介紹的方法具有一定的理論和實(shí)際應(yīng)用價(jià)值。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。