• 大小: 8.29MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-05
  • 语言: 其他
  • 标签: matlab  

资源简介

心电信号QRS复波实时检测,软件主要是检测出R波波峰位置,采用双阈值法进行检测。配有GUI演示界面。所用数据为MIT,1986年心电数据库。 此为医学信号处理实验课程作业,与大家分享

资源截图

代码片段和文件信息

clear all;
close all;
clc;

PATH= ‘G:\matlab workspace\数字信号实验\ECG database‘; % path where data are saved
HEADERFILE= ‘121.hea‘;      % header-file in text format
ATRFILE= ‘121.atr‘;         % attributes-file in binary format
DATAFILE=‘121.dat‘;         % data-file
SAMPLES2READ=3000;         % number of samples to be read
                            % in case of more than one signal:
                            % 2*SAMPLES2READ samples are read

[TIME ECGDATA sfreq] = rdECGdata( PATHHEADERFILEATRFILEDATAFILESAMPLES2READ);%读取MIT-ECG数据

%------------------------------二阶低通录波器11HZ---------------------------%

DATA = ECGDATA(:1);
num = zeros(113);
den = zeros(113);
num(1) = 1;num(7) = -2;num(13) = 1;
den(1) = 1;den(2) = -2;den(3) = 1;

% w = [0:1:512]*pi/512;
% H = freqz(numdenw);
% figureplot(w/piabs(H));title(‘低通滤波器频响特性‘);

DATAafterLow = filter(numdenDATA)/36;

clear num;
clear den;

%-------------------------------------------------------------------------%

%--------------------------高通滤波器,15HZ--------------------------------%

num = zeros(133);
den = zeros(133);

num(1)=-1;num(17)=32;num(18)=-32; num(33) = 1;
den(1)=32; den(2) = -32;

% w = [0:1:512]*pi/512;
% H = freqz(numdenw);
% figureplot(w/piabs(H));title(‘高通滤波器频响特性‘);

DATAafterHigh = filter(numdenDATAafterLow);


figuresubplot(211)plot(TIMEDATA);title(‘原始信号‘);
subplot(212)plot(TIMEDATAafterHigh);title(‘带通滤波后信号‘);

clear num;
clear den;
%-------------------------------------------------------------------------%
%----------------------------微分-----------------------------------------%
num = zeros(15);
den = zeros(15);

num(1)=0.2;num(2)=0.1;num(4)=-0.1; num(5) = -0.2;
den(1)=1;
DATAafterDif = filter(numdenDATAafterHigh)*10;

figuresubplot(211)plot(TIMEDATAafterHigh);title(‘滤波后信号‘);
subplot(212)plot(TIMEDATAafterDif);title(‘微分后信号‘);

%-------------------------------------------------------------------------%
%-----------------------------平方----------------------------------------%

DATAafterSqu = DATAafterDif.*DATAafterDif;

% fftDATAafterDif = fftshift(fft(DATAafterDif));
% fftDATAafterSqu = fftshift(fft(DATAafterSqu));
fftDATAafterDif = (fft(DATAafterDif));
fftDATAafterSqu = (fft(DATAafterSqu));
figureplot(TIME(1:1000)DATAafterSqu(1:1000));
n = (0:1500)/1500*sfreq;
figuresubplot(211)plot(nabs(fftDATAafterDif(1:1501)));title(‘平方前信号频谱‘);
subplot(212)plot(nabs(fftDATAafterSqu(1:1501)));title(‘平方后信号频谱‘);

%-------------------------------------------------------------------------%
%--------------------------------移动窗口积分,150ms-----------------------%

% QRSTime = 100;
QRSTime = 150;
% QRSTime = 200;
% QRSTime = 250;
% QRSTime = 300;
nInte = floor(QRSTime/1000*sfreq);%150ms积分的离散值点数

DATAmoveWinInte = zeros(1length(DATAafterSqu));
for ii=nInte:length(DATAafterSqu)
    DATAmoveWinInte(ii) = sum(DATAafterSqu(ii-nInte+1:ii))/nInte;
end


figureplot(TI

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3774  1992-07-30 13:44  R波波峰检测\ECG database\121.atr

     文件    1950000  1992-07-30 21:44  R波波峰检测\ECG database\121.dat

     文件        150  1992-07-30 13:44  R波波峰检测\ECG database\121.hea

     文件       4970  1992-07-30 13:44  R波波峰检测\ECG database\122.atr

     文件    1950000  1992-07-30 21:44  R波波峰检测\ECG database\122.dat

     文件        221  1992-07-30 13:44  R波波峰检测\ECG database\122.hea

     文件       3046  1992-07-30 13:44  R波波峰检测\ECG database\123.atr

     文件    1950000  1992-07-30 21:44  R波波峰检测\ECG database\123.dat

     文件        183  1992-07-30 13:44  R波波峰检测\ECG database\123.hea

     文件       3360  1992-07-30 13:45  R波波峰检测\ECG database\124.atr

     文件    1950000  1992-07-30 21:45  R波波峰检测\ECG database\124.dat

     文件        219  1992-07-30 13:45  R波波峰检测\ECG database\124.hea

     文件       8114  1992-07-30 13:45  R波波峰检测\ECG database\200.atr

     文件    1950000  1992-07-30 13:45  R波波峰检测\ECG database\200.dat

     文件        306  1992-07-30 13:45  R波波峰检测\ECG database\200.hea

     文件       4322  1992-07-30 13:46  R波波峰检测\ECG database\201.atr

     文件    1950000  1992-07-30 13:46  R波波峰检测\ECG database\201.dat

     文件        284  1992-07-30 13:46  R波波峰检测\ECG database\201.hea

     文件       4388  1992-07-30 13:46  R波波峰检测\ECG database\202.atr

     文件    1950000  1992-07-30 13:46  R波波峰检测\ECG database\202.dat

     文件        277  1992-07-30 13:46  R波波峰检测\ECG database\202.hea

     文件       7092  1998-10-14 04:09  R波波峰检测\ECG database\203.atr

     文件    1950000  1992-07-30 13:46  R波波峰检测\ECG database\203.dat

     文件        423  1992-07-30 13:46  R波波峰检测\ECG database\203.hea

     文件       5436  1992-07-30 13:47  R波波峰检测\ECG database\205.atr

     文件    1950000  1992-07-30 13:47  R波波峰检测\ECG database\205.dat

     文件        222  1992-07-30 13:47  R波波峰检测\ECG database\205.hea

     文件       4958  1992-07-30 13:47  R波波峰检测\ECG database\207.atr

     文件    1950000  1992-07-30 13:47  R波波峰检测\ECG database\207.dat

     文件        546  1992-07-30 13:47  R波波峰检测\ECG database\207.hea

............此处省略15个文件信息

评论

共有 条评论