資源簡介
運用tompkins方法,通過設置閾值,檢測R波,排除誤檢,計算R波間期,從而計算心率
代碼片段和文件信息
fs=200;?
sigtemp=y;??
siglen=length(y);?
sigmax=[];??
yabs=abs(y);
rate=1/fs;
for?i=1:siglen-2?????
????if??(y(i+1)>y(i)&y(i+1)>y(i+2))|(y(i+1) ????????sigmax=[sigmax;abs(sigtemp(i+1))i+1];?????
????end;?
end;?
%取閾值閾值為相對幅值的差的60%???
%最大幅度平均值,8個最大幅值點的平均值????
thrtemp=sort(sigmax);?
thrlen=length(sigmax);?
thr=0;??
for?i=(thrlen-7):thrlen?????
????thr=thr+thrtemp(i);?
end;??
thrmax=thr/8;???????????????
?%最小幅度平均值,對消幅度,100個最小幅值點的平均值??
zerotemp=sort(y);?
zerovalue=0;?
for?i=1:100??????
????zerovalue=zerovalue+zerotemp(i);?
end;??
zerovalue=zerovalue/100;???
??
thr=(thrmax-zerovalue)*0.3;?%最大、最小幅度的差值的30%為判別R波的閾值??
%定位R波??
rvalue=[];??
for?i=1:thrlen??????
????if?sigmax(i1)>thr?????????
????????rvalue=[rvalue;?sigmax(i2)];?????
????end;?
- 上一篇:基于MATLAB的心電信號預處理
- 下一篇:S7-200PLC經典練習程序
評論
共有 條評論