• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Labview和Matlab混合編程方法在生物醫(yī)學信號分析中的應用

      2011-03-22 08:53:25于璐張勇德沙憲政
      中國醫(yī)療器械雜志 2011年1期
      關(guān)鍵詞:折線虛擬儀器生物醫(yī)學

      【作 者】于璐,張勇德,沙憲政*

      中國醫(yī)科大學生物醫(yī)學工程系,遼寧,沈陽,110001

      Labview和Matlab混合編程方法在生物醫(yī)學信號分析中的應用

      【作 者】于璐,張勇德,沙憲政*

      中國醫(yī)科大學生物醫(yī)學工程系,遼寧,沈陽,110001

      介紹了Labview和Matlab混合編程的方法,并用于脈搏信號的預處理及特征點識別過程中。實驗表明,該方法具有便捷、高效和結(jié)果準確的特點,為生物醫(yī)學信號的分析提供了一種有效的新方法。

      Labview;Matlab;混合編程;生物醫(yī)學信號檢測與分析;脈搏信號

      0 前言

      近年來,隨著計算機技術(shù)的不斷進步和完善,虛擬儀器技術(shù)越來越多的被應用到生物醫(yī)學信號的檢測與分析中來。虛擬儀器技術(shù)是計算機技術(shù)與儀器技術(shù)相結(jié)的產(chǎn)物,它由計算機、儀器硬件和相應的應用軟件組成,利用PC機強大的圖形環(huán)境建立圖形化的虛擬儀器面板,完成對儀器的控制及數(shù)據(jù)的采集、分析和顯示。目前使用最為廣泛的虛擬儀器開發(fā)環(huán)境是美國NI公司推出的Labview軟硬件平臺,而且許多生理信號的識別與分析等研究工作也是在此系統(tǒng)框架下進行的[1]。

      1 Labview和Matlab混合編程的提出及實現(xiàn)方法

      雖然Labview具有開發(fā)便捷、效率高、形象直觀和易于掌握等優(yōu)點,但是由于它對各種算法支持的工具箱不多且功能單一,使Labview在數(shù)學計算方面的功能十分有限,因此對于一些虛擬儀器中需要進行大量數(shù)據(jù)運算處理的復雜應用就顯得有些力不從心。Matlab是美國MathWorks公司開發(fā)的一種直觀高效的計算機語言,它為數(shù)據(jù)分析和數(shù)據(jù)可視化、算法和應用程序開發(fā)提供了最核心的數(shù)學和高級圖形工具,在信號和圖像處理等領(lǐng)域具有無可比擬的優(yōu)勢。但它的界面開發(fā)及流程控制能力較差,并且數(shù)據(jù)采集、網(wǎng)絡(luò)通信和硬件控制等方面比較繁瑣,而且腳本文件不能脫離Matlab這個應用程序環(huán)境,這就制約了程序的可移植性和通用性。因此,我們提出了Labview和Matlab混合編程[2],利用Matlab Script節(jié)點技術(shù),使它們在功能上互補,充分發(fā)揮兩者的優(yōu)勢,具有很高的實用價值。

      利用Matlab Script節(jié)點技術(shù),實際上是通過ActiveX控件與Matlab server進行的通信。調(diào)用Matlab函數(shù)或命令,實質(zhì)是將Matlab當作一個ActiveX服務器,并建立ActiveX通道,然后將這個函數(shù)或命令通過ActiveX通道發(fā)送給Matlab,由Matlab在后臺執(zhí)行。Labview提供的Matlab Script節(jié)點具有多輸入、多輸出的特點,一次處理的信息量可以很大。Matlab腳本可以現(xiàn)在Matlab下調(diào)試,無誤后再導入到Matlab Script節(jié)點中,執(zhí)行Matlab命令并使用功能豐富的各種工具箱。使用Matlab Script節(jié)點的方法實現(xiàn)混合編程既簡單又實用,當需要使用時,可將其模塊化,采用主程序動態(tài)加載,用戶比較容易掌握,也是Labview開發(fā)組推薦使用的方式[3]。

      2 應用舉例

      脈搏波中包含了許多生理信息,對其進行檢測和分析,在心血管疾病的預防與臨床診斷治療有著重要的意義和作用[4]?;贛atlab強大的計算功能和Labview良好的人機控制界面,我們可以實現(xiàn)對脈搏信號的預處理、識別和特征提取。

      在對脈搏波進行去噪預處理時,我們采用了模3均值濾波來實現(xiàn)去噪功能。實驗和理論分析結(jié)果都表明,前向平均使脈搏相位右移,后向平均使脈搏相位左移,因此為了避免此類相移,在對脈搏波形進行平滑去噪時,我們采用前向平均和后向平均交替進行的方式[5]。在Labview中用可視化VI實現(xiàn)此功能非常繁瑣,而使用Matlab只需要幾條語句即可實現(xiàn),非常方便,見圖1。通過此方法實現(xiàn)的去噪效果非常理想,波形的“毛刺”絕大部分被去除,波形也沒有失真,可以進行后續(xù)處理與分析,結(jié)果見圖2。

      圖1 平滑去噪源程序圖Fig.1 Program for smoothing filtering of pulse wave

      圖2 去噪前后脈搏波Fig.2 Comparison of pre and post smoothing filtering of pulse wave

      基線漂移是大部分生理信號采集過程中都存在的一種低頻干擾。在對脈搏進行識別及特征提取時,它的存在會使以上工作的進行產(chǎn)生較大誤差,我們采用插值擬合法對其進行調(diào)整[6],原理如圖3所示。

      圖3 去基線漂移原理圖示Fig.3 Principle of removing baseline drift

      在單周期識別結(jié)束后,我們可以確定每個脈搏波起始點的位置及幅值,然后將這些點③、④、⑤、⑥連接起來,構(gòu)造一條漂移折線,將脈搏信號與漂移信號相減,就可以達到去除基線漂移的目的。但是在具體實現(xiàn)時,圖中的漂移折線其實一開始并不存在,它只是用兩個數(shù)組A和B表示出來(A數(shù)組用來保存構(gòu)成漂移折線的各點②~⑧的位置,B數(shù)組用來保存②~⑧的幅值),無法真正實現(xiàn)脈搏信號的各點與漂移折線各點相減,因此需要根據(jù)A、B數(shù)組構(gòu)造真正的漂移折線。構(gòu)造漂移折線的過程用Labview現(xiàn)有的功能模塊無法實現(xiàn),而利用Matlab靈活的數(shù)學功能則可以非常簡單地完成。具體實現(xiàn)原理及方法如下:若已知平面上兩點坐標為(X1,Y1),(X2,Y2),則兩點確定的直線方程為Y=((Y2-Y1)/(X2-X1))*X +(X2*Y1-X1*Y2)/(X2-X1),由于我們知道②~⑧各點的位置及幅值,也就是相當于知道了各點的坐標,利用該公式,可求出各條直線②~③、③~④、④~⑤、⑤~⑥、⑥~⑧中每個點的值了,從而構(gòu)造出真正的漂移折線。圖4為構(gòu)造漂移折線及基線調(diào)整的完整程序。

      圖4 基線調(diào)整源程序圖Fig.4 Program for baseline adjustment

      圖5 展示的就是利用這種方法所得到的實驗結(jié)果,其中上圖為去漂移前的脈搏波形,中圖為去漂移后的脈搏波形,下圖為漂移折線。從圖中可以看出,利用這種方法去除基線漂移效果非常理想。

      脈搏波最具代表性的特征點就是降中峽和重博波,在對脈搏波進行特征提取時,這兩點確定后,就可以準確地求出一系列脈搏特征值,從而反映人體生理病理信息。兩點的識別可采用二階導數(shù)方法[7],如圖6所示,脈搏的降中峽和重博波可以通過其二階導數(shù)在一個脈搏周期的中間位置對應出的一對波峰和波谷來標識。

      圖5 去基線漂移的效果對照Fig.5. Pre and post comparison of baseline adjustment of pulse wave

      可是由于脈搏下降支上的波動較多,再加上重博前波的存在,使得二階導結(jié)果中往往會有多個波峰存在,如圖6所示。此時,我們可以利用心臟生理學知識在多個波峰中對應出正確的降中峽。正常情況下成人的心動周期約為0.8 s,其中約有0.35 s為收縮期,另外0.45 s為舒張期,降中峽作為收縮期的終點,舒張期的起點,在時間上應該比重搏前波更靠近心動周期的二分之一處。當識別出兩個波峰點時,就對這兩個波峰點進行時間上的比較,哪一個最靠近心動周期的二分之一,哪一個就確定為降中峽對應的波峰。

      圖6 脈搏波及其二階導數(shù)Fig.6 Pusle wave and its second-order derivative

      同樣,把時間限制的方法引入到降中峽和重博波識別后,現(xiàn)有的Labview功能無法實現(xiàn),因此,我們再一次利用了Matlab和Labview混合編程的方法。圖7為降中峽及重博波識別源程序圖。框圖中MATLAB Script里填寫的Matlab語言代碼如下:

      p=[]; i=1; xia=0;

      while (peak(i)-time)<0

      p(i)=time-peak(i); i=i+1;

      if i>length(peak)

      break; end

      end

      xia=time-min(p);

      f=[]; i=1; j=1;

      while (valleys(i)-xia)<0

      i=i+1; end

      while (valleys(i)-xia)>0

      f(j)=valleys(i); i=i+1;

      j=j+1; end

      其中,peak為二階導結(jié)果中各個波峰處的時間,以數(shù)組形式存放;valleys為二階導結(jié)果中各個波谷處的時間,以數(shù)組形式存放;time為脈搏波對應的心動周期二分之一處的時間;xia為識別出的降中峽處對應的時間;f為識別出的重博波處對應的時間。

      圖7 降中峽及重博波識別源程序圖Fig.7 Program for dicrotic notch and wave recognization

      經(jīng)過對大量不同類型脈象的處理實驗表明,利用以上混合編程方法實現(xiàn)的脈搏特征點識別系統(tǒng)具有速度快、結(jié)果準確的特點。圖8為脈搏波降中峽和重博波的識別情況。值得一提的是,我們還可以通過對Matlab代碼的修改方便地實現(xiàn)對其他特征點(如重博前波)的識別,這對更加全面地揭示脈搏信號蘊含的生理信息也非常有意義。特征點確定后,就可以進行脈搏信號特征值的提取,從而根據(jù)特征值反映人體心血管系統(tǒng)的生理病理信息,為相關(guān)疾病的預防與診斷治療提供支持。

      圖8 脈搏波的降中峽和重博波識別情況Fig.8 Results of dicrotic notch and wave recognization

      3 結(jié)語

      在生物醫(yī)學工程領(lǐng)域中,Labview和Matlab是風靡世界的兩種語言,倍受科研工作者和相關(guān)程序開發(fā)人員的青睞。本文研究了利用ActiveX自動化技術(shù)和Matlab Script節(jié)點技術(shù)實現(xiàn)Labview和Matlab混合編程的方法,并以脈搏信號的預處理及特征點識別為實例,說明了將Matlab引入到虛擬儀器平臺下進行生理信號分析是可行的,而且兩者的混合編程將會使整個系統(tǒng)的搭建更加方便、快捷和高效,并會使整個系統(tǒng)的功能更加完善且易于擴展。由于Matlab還有很多有待在對更多類型生理信號的分析及識別過程中,Labview和Matlab混合編程的方法將有更為廣泛的應用。

      [1] 應俊, 陳廣飛, 何史林. 基于虛擬儀器技術(shù)數(shù)字化腦電采集系統(tǒng)的研制[J]. 中國醫(yī)療器械雜志, 2009, 33(5):332-335.

      [2] 柴敬安, 廖克儉, 潘德輝, 等. Labview和Matlab混合編程方法的研究與實現(xiàn)[J]. 計算機測量與控制, 2008, 16(5):737-739.

      [3] 陳錫輝, 張銀鴻. Labview 8.20程序設(shè)計從入門到精通[M]. 北京:清華大學出版社, 2007

      [4] Michael F. O’Rourke. Time domain analysis of the arterial pulse in clinical medicine[J]. Med Biol Eng Comput, 2009, 47(2): 119–129.

      [5] 孫欣. 動脈壓變順應性無創(chuàng)檢測關(guān)鍵技術(shù)研究[D]. 山東大學碩士學位論文, 2007

      [6] 孔令鋒, 謝錫城, 盧志遠. 矯正心電信號中基線漂移的數(shù)字濾波技術(shù)及其實現(xiàn)[J]. 中國醫(yī)療器械信息, 2003, 9(6): 12-14.

      [7] Korpas D, Hálek J, Dolezal L. Parameters describing the pulse wave[J]. Physiol Res, 2009, 58(4): 473-479.

      Application of the Mixed Programming with Labview and Matlab in Biomedical Signal Analysis

      【 Writers 】Yu Lu, Zhang Yongde, Sha Xianzheng*
      Department of Biomedical Engineering, China Medical University, Shenyang, Liaoning, 110001

      Labview, Matlab, mixed programming, biomedical signal detection and analysis, pulse wave signal

      R318

      A

      10.3969/j.isnn.1671-7104.2011.01.004

      1671-7104(2011)01-0015-04

      2010-08-24

      于璐,講師,碩士研究生,研究方向:生物醫(yī)學信號檢測與處理

      沙憲政,教授,研究方向:生物醫(yī)學傳感器及其在醫(yī)學上的應用;生物醫(yī)學信號檢測與處理;遠程醫(yī)療及家庭監(jiān)護系統(tǒng)。E-mail: xzsha@mail.cmu.edu.cn

      【 Abstract】This paper introduces the method of mixed programming with Labview and Matlab, and applies this method in a pulse wave pre-processing and feature detecting system. The method has been proved suitable, efficient and accurate, which has provided a new kind of approach for biomedical signal analysis.

      猜你喜歡
      折線虛擬儀器生物醫(yī)學
      折線統(tǒng)計圖
      芻議“生物醫(yī)學作為文化”的研究進路——兼論《作為文化的生物醫(yī)學》
      科學與社會(2022年4期)2023-01-17 01:20:04
      靈長類生物醫(yī)學前沿探索中的倫理思考
      科學與社會(2021年4期)2022-01-19 03:29:50
      國外生物醫(yī)學文獻獲取的技術(shù)工具:述評與啟示
      折線的舞臺——談含絕對值的一次函數(shù)的圖象
      PCB 刻制機功能開發(fā)及在虛擬儀器實驗室建設(shè)中的應用
      電子制作(2017年13期)2017-12-15 09:00:26
      折線
      虛擬儀器及其在電工電子實驗中的應用
      電子制作(2017年1期)2017-05-17 03:54:33
      虛擬儀器技術(shù)在農(nóng)業(yè)裝備測控中的應用
      LED光源在生物醫(yī)學中的應用分析
      紫金县| 游戏| 乌恰县| 巴彦淖尔市| 怀宁县| 穆棱市| 舞钢市| 隆尧县| 绥中县| 华安县| 扶沟县| 门源| 望都县| 元氏县| 满洲里市| 木兰县| 苏尼特左旗| 兰溪市| 黑龙江省| 外汇| 时尚| 米林县| 株洲市| 壤塘县| 光山县| 洪江市| 广州市| 广南县| 桂阳县| 株洲县| 裕民县| 利川市| 凤凰县| 龙海市| 景谷| 汉源县| 嘉荫县| 宁国市| 黑水县| 元谋县| 乐陵市|