<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP Builder的腦電信號小波處理

          基于DSP Builder的腦電信號小波處理

          作者: 時間:2009-10-20 來源:網(wǎng)絡(luò) 收藏

          設(shè)信號為:

          本文引用地址:http://www.ex-cimer.com/article/152315.htm


          由于φ(-t)和φ(t-s)為構(gòu)造正交的多分辨率分析尺度函數(shù),因此上述分解和重構(gòu)公式中取h(n)為h(-n)或h(n-s)均可。為了討論方便,且不失一般性,可將上述分解公式和重構(gòu)公式重寫為:

          帶入式(9)得:


          則c0(k)=c0(k-2N-1),式(13)得到的信號是式(12)得到信號的延遲。由于序列h(n)和g(n)為因果序列,所以式(13)對應(yīng)的濾波器為因果濾波器。采用式(7)和式(8)繼續(xù)分解信號低頻分量或低頻分量與高頻分量.可得多級分解或包分解。

          3 變換設(shè)計實現(xiàn)
          考慮到瞬態(tài)脈沖信號的短時性,選擇具有緊支集的Daubenchies小波作為分析小波,這樣有利于突出瞬態(tài)信號特征,DB小波函數(shù)具有良好的正交性和緊支撐性,可較好地表現(xiàn)頻域信號的連續(xù)性和突變性,在實際工程應(yīng)用中效果較好。故這里采用DB小波對腦進行4級分解重構(gòu)。濾除腦中存在的直流成分或緩慢基線漂移。選取DB2小波,此時M=3,且低通濾波系數(shù)(尺度函數(shù)系數(shù))如下:


          由于浮點數(shù)在FPGA中實現(xiàn)比較復(fù)雜,為了減少FPGA的運算量和資源,可將濾波計算轉(zhuǎn)換為整數(shù)運算和移位運算,為此首先需將以上濾波器系數(shù)轉(zhuǎn)化為整數(shù),對每個濾波器系數(shù)采用16位字長進行量化,即乘以215后取整數(shù),而對濾波器的輸出信號有移15位即得到實際輸出。
          為平臺,對式(7)、式(8)和式(13)算法進行系統(tǒng)級建模、仿真,再利用Signal Compiler生成HDL文件,然后利用Quartus II進行時序仿真驗證。
          3.1 實現(xiàn)lD-DWT分解
          分解模塊的結(jié)構(gòu)如圖1所示。信號并行從4級延遲線輸出,與FIR濾波器系數(shù)進行卷積,然后再偶抽取便可得到近似部分和細節(jié)部分的結(jié)果。二次抽取模塊采用DSP Builder的下采樣模塊,利用Signal Compiler生成HDL文件。

          為了減少系統(tǒng)耗用的硬件資源,舍去輸出結(jié)果的低8位,保證分解前后信號保持同樣能量級。從圖1中可知,各個子模塊并行工作,子模塊之間無需任何交叉信號,數(shù)據(jù)從輸入端以流水線的方式向后傳遞,實現(xiàn)實時流水線工作。二級分解模塊的設(shè)計原理同一級分解模塊。



          關(guān)鍵詞: 小波 處理 電信號 Builder DSP 基于 DSP

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();