亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xiugai.m

?? 讀入mit庫的心電信號
?? M
字號:
clc; clear all;
%------ SPECIFY DATA ------------------------------------------------------
PATH= 'e:\bp'; % path, where data are saved
HEADERFILE= '100.hea';      % header-file in text format
ATRFILE= '100.atr';         % attributes-file in binary format
DATAFILE='100.dat';         % data-file
SAMPLES2READ=3000;         % number of samples to be read
% in case of more than one signal:
% 2*SAMPLES2READ samples are read
%------ LOAD HEADER DATA --------------------------------------------------
fprintf(1,'\\n$> WORKING ON %s ...\n', HEADERFILE);
signalh= fullfile(PATH, HEADERFILE);
fid1=fopen(signalh,'r');
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d',[1,3]);
nosig= A(1);  % number of signals
sfreq=A(2);   % sample rate of data
clear A;
for k=1:nosig
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d %d %d',[1,5]);
dformat(k)= A(1);           % format; here only 212 is allowed
gain(k)= A(2);              % number of integers per mV
bitres(k)= A(3);            % bitresolution
zerovalue(k)= A(4);         % integer value of ECG zero point
firstvalue(k)= A(5);        % first integer value of signal (to test for errors)
end;
fclose(fid1);
clear A;
%------ LOAD BINARY DATA --------------------------------------------------
if dformat~= [212,212], error('this script does not apply binary formats different to 212.'); end;
signald= fullfile(PATH, DATAFILE);            % data in format 212
fid2=fopen(signald,'r');
A= fread(fid2, [3, SAMPLES2READ], 'uint8')';  % matrix with 3 rows, each 8 bits long, = 2*12bit
fclose(fid2);
M2H= bitshift(A(:,2), -4);        %字節向右移四位,即取字節的高四位
M1H= bitand(A(:,2), 15);          %取字節的低四位
PRL=bitshift(bitand(A(:,2),8),9);     % sign-bit   取出字節低四位中最高位,向右移九位
PRR=bitshift(bitand(A(:,2),128),5);   % sign-bit   取出字節高四位中最高位,向右移五位
M( : , 1)= bitshift(M1H,8)+ A(:,1)-PRL;
M( : , 2)= bitshift(M2H,8)+ A(:,3)-PRR;
if M(1,:) ~= firstvalue, error('inconsistency in the first bit values'); end;
switch nosig
case 2
M( : , 1)= (M( : , 1)- zerovalue(1))/gain(1);
M( : , 2)= (M( : , 2)- zerovalue(2))/gain(2);
TIME=(0:(SAMPLES2READ-1))/sfreq;
case 1
M( : , 1)= (M( : , 1)- zerovalue(1));
M( : , 2)= (M( : , 2)- zerovalue(1));
M=M';
M(1)=[];
sM=size(M);
sM=sM(2)+1;
M(sM)=0;
M=M';
M=M/gain(1);
TIME=(0:2*(SAMPLES2READ)-1)/sfreq;
otherwise  % this case did not appear up to now!
% here M has to be sorted!!!
disp('Sorting algorithm for more than 2 signals not programmed yet!');
end;
clear A M1H M2H PRR PRL;
fprintf(1,'\\n$> LOADING DATA FINISHED \n');
%------ LOAD ATTRIBUTES DATA ----------------------------------------------
atrd= fullfile(PATH, ATRFILE);      % attribute file with annotation data
fid3=fopen(atrd,'r');
A= fread(fid3, [2, inf], 'uint8')';
fclose(fid3);
ATRTIME=[];
ANNOT=[];
sa=size(A);
saa=sa(1);
i=1;
while i<=saa
annoth=bitshift(A(i,2),-2);
if annoth==59
ANNOT=[ANNOT;bitshift(A(i+3,2),-2)];
ATRTIME=[ATRTIME;A(i+2,1)+bitshift(A(i+2,2),8)+...
bitshift(A(i+1,1),16)+bitshift(A(i+1,2),24)];
i=i+3;
elseif annoth==60
% nothing to do!
elseif annoth==61
% nothing to do!
elseif annoth==62
% nothing to do!
elseif annoth==63
hilfe=bitshift(bitand(A(i,2),3),8)+A(i,1);
hilfe=hilfe+mod(hilfe,2);
i=i+hilfe/2;
else
ATRTIME=[ATRTIME;bitshift(bitand(A(i,2),3),8)+A(i,1)];
ANNOT=[ANNOT;bitshift(A(i,2),-2)];
end;
i=i+1;
end;
ANNOT(length(ANNOT))=[];       % last line = EOF (=0)
ATRTIME(length(ATRTIME))=[];   % last line = EOF
clear A;
ATRTIME= (cumsum(ATRTIME))/sfreq;
ind= find(ATRTIME <= TIME(end));
ATRTIMED= ATRTIME(ind);
ANNOT=round(ANNOT);
ANNOTD= ANNOT(ind);
%------ DISPLAY DATA ------------------------------------------------------
figure(1); clf, box on, hold on
plot(TIME, M(:,1),'r');
if nosig==2
plot(TIME, M(:,2),'b');
end;
for k=1:length(ATRTIMED)
text(ATRTIMED(k),0,num2str(ANNOTD(k)));
end;
xlim([TIME(1), TIME(end)]);
xlabel('Time / s'); ylabel('Voltage / mV');
string=['ECG signal ',DATAFILE];
title(string);
fprintf(1,'\\n$> DISPLAYING DATA FINISHED \n');
% -------------------------------------------------------------------------
fprintf(1,'\\n$> ALL FINISHED \n');
%------ SPECIFY DATA ------------------------------------------------------
PATH= 'e:\bp'; % path, where data are saved
HEADERFILE= '100.hea';      % header-file in text format
ATRFILE= '100.atr';         % attributes-file in binary format
DATAFILE='100.dat';         % data-file
SAMPLES2READ=3000;         % number of samples to be read
% in case of more than one signal:
% 2*SAMPLES2READ samples are read
%------ LOAD HEADER DATA --------------------------------------------------
fprintf(1,'\\n$> WORKING ON %s ...\n', HEADERFILE);
signalh= fullfile(PATH, HEADERFILE);
fid1=fopen(signalh,'r');
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d',[1,3]);
nosig= A(1);  % number of signals
sfreq=A(2);   % sample rate of data
clear A;
for k=1:nosig
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d %d %d',[1,5]);
dformat(k)= A(1);           % format; here only 212 is allowed
gain(k)= A(2);              % number of integers per mV
bitres(k)= A(3);            % bitresolution
zerovalue(k)= A(4);         % integer value of ECG zero point
firstvalue(k)= A(5);        % first integer value of signal (to test for errors)
end;
fclose(fid1);
clear A;
%------ LOAD BINARY DATA --------------------------------------------------
if dformat~= [212,212], error('this script does not apply binary formats different to 212.'); end;
signald= fullfile(PATH, DATAFILE);            % data in format 212
fid2=fopen(signald,'r');
A= fread(fid2, [3, SAMPLES2READ], 'uint8')';  % matrix with 3 rows, each 8 bits long, = 2*12bit
fclose(fid2);
M2H= bitshift(A(:,2), -4);        %字節向右移四位,即取字節的高四位
M1H= bitand(A(:,2), 15);          %取字節的低四位
PRL=bitshift(bitand(A(:,2),8),9);     % sign-bit   取出字節低四位中最高位,向右移九位
PRR=bitshift(bitand(A(:,2),128),5);   % sign-bit   取出字節高四位中最高位,向右移五位
M( : , 1)= bitshift(M1H,8)+ A(:,1)-PRL;
M( : , 2)= bitshift(M2H,8)+ A(:,3)-PRR;
if M(1,:) ~= firstvalue, error('inconsistency in the first bit values'); end;
switch nosig
case 2
M( : , 1)= (M( : , 1)- zerovalue(1))/gain(1);
M( : , 2)= (M( : , 2)- zerovalue(2))/gain(2);
TIME=(0:(SAMPLES2READ-1))/sfreq;
case 1
M( : , 1)= (M( : , 1)- zerovalue(1));
M( : , 2)= (M( : , 2)- zerovalue(1));
M=M';
M(1)=[];
sM=size(M);
sM=sM(2)+1;
M(sM)=0;
M=M';
M=M/gain(1);
TIME=(0:2*(SAMPLES2READ)-1)/sfreq;
otherwise  % this case did not appear up to now!
% here M has to be sorted!!!
disp('Sorting algorithm for more than 2 signals not programmed yet!');
end;
clear A M1H M2H PRR PRL;
fprintf(1,'\\n$> LOADING DATA FINISHED \n');
%------ LOAD ATTRIBUTES DATA ----------------------------------------------
atrd= fullfile(PATH, ATRFILE);      % attribute file with annotation data
fid3=fopen(atrd,'r');
A= fread(fid3, [2, inf], 'uint8')';
fclose(fid3);
ATRTIME=[];
ANNOT=[];
sa=size(A);
saa=sa(1);
i=1;
while i<=saa
annoth=bitshift(A(i,2),-2);
if annoth==59
ANNOT=[ANNOT;bitshift(A(i+3,2),-2)];
ATRTIME=[ATRTIME;A(i+2,1)+bitshift(A(i+2,2),8)+...
bitshift(A(i+1,1),16)+bitshift(A(i+1,2),24)];
i=i+3;
elseif annoth==60
% nothing to do!
elseif annoth==61
% nothing to do!
elseif annoth==62
% nothing to do!
elseif annoth==63
hilfe=bitshift(bitand(A(i,2),3),8)+A(i,1);
hilfe=hilfe+mod(hilfe,2);
i=i+hilfe/2;
else
ATRTIME=[ATRTIME;bitshift(bitand(A(i,2),3),8)+A(i,1)];
ANNOT=[ANNOT;bitshift(A(i,2),-2)];
end;
i=i+1;
end;
ANNOT(length(ANNOT))=[];       % last line = EOF (=0)
ATRTIME(length(ATRTIME))=[];   % last line = EOF
clear A;
ATRTIME= (cumsum(ATRTIME))/sfreq;
ind= find(ATRTIME <= TIME(end));
ATRTIMED= ATRTIME(ind);
ANNOT=round(ANNOT);
ANNOTD= ANNOT(ind);
%------ DISPLAY DATA ------------------------------------------------------
figure(1); clf, box on, hold on
subplot(211);plot(TIME, M(:,1),'r');
f_N=360;
%f_p=[49,300];R_p=3;f_s=[49.9,100];R_s=30;     %按要求設定參數
%Ws=f_s/(f_N/2);Wp=f_p/(f_N/2);                %計算歸一化角頻率
%[n,Wn]=cheb1ord(Wp,Ws,R_p,R_s); %計算階數和截止頻率
%[b,a]=cheby1(n,R_p,Wn,'stop');   %計算帶阻H(z)系數
FS=360;
[n,Wn]=buttord(20/(FS/2),25/(FS/2),1,25); 
[b,a]=butter(n,Wn); 
t=0:1/360:8.3306;
y=filter(b,a,M(:,1));                %濾波后的輸出信號
subplot(212);plot(t,y);

 [c,l]=wavedec(M(:,1),3,'db4');   %用db4在尺度3下分解分解

%提取近似部分與細節部分系數

 Ca3=appcoef(c,l,'db4',3);  %從c中提取第三級近似部分系數  
 
%從c中提取尺度為3、2、1時的細節系數
 Cd3=detcoef(c,l,3);       
Cd2=detcoef(c,l,2);
Cd1=detcoef(c,l,1);  
A3=wrcoef('a',c,l,'db4',3);  %重建尺度3水平下的近似部分系數
%重建尺度為1、2及3時的細節系數 
D1=wrcoef('d',c,l,'db4',1);
D2=wrcoef('d',c,l,'db4',2);
D3=wrcoef('d',c,l,'db4',3);
% 顯示多尺度分解結果曲線
subplot(2,2,1);  plot(A3);  title('approximation A3');
subplot(2,2,2);  plot(D1);  title('detail D1');
subplot(2,2,3);  plot(D2);  title('detail D2');
subplot(2,2,4);  plot(D3);  title('detail D3');


for k=1:length(ATRTIMED)
text(ATRTIMED(k),0,num2str(ANNOTD(k)));
end;
xlim([TIME(1), TIME(end)]);
xlabel('Time / s'); ylabel('Voltage / mV');
string=['ECG signal ',DATAFILE];
title(string);
fprintf(1,'\\n$> DISPLAYING DATA FINISHED \n');
% -------------------------------------------------------------------------
fprintf(1,'\\n$> ALL FINISHED \n');

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久亚洲私人国产精品va媚药| 久久精品一区八戒影视| 偷拍日韩校园综合在线| 欧美精品一区二区三区在线| 色中色一区二区| 国产一区二区在线观看视频| 亚洲在线成人精品| 中文字幕欧美区| 91精品国产综合久久精品app| 国产精品一品二品| 日韩不卡一二三区| 国产精品久久久久久久岛一牛影视| 欧美在线免费观看视频| 国产精品香蕉一区二区三区| 午夜精品视频一区| 国产精品美女视频| 2欧美一区二区三区在线观看视频| 色呦呦国产精品| 国产成人综合亚洲网站| 天堂一区二区在线免费观看| 亚洲视频在线观看一区| 久久精品免视看| 日韩亚洲欧美一区二区三区| 在线观看日韩高清av| 97se狠狠狠综合亚洲狠狠| 国产福利精品一区二区| 免费av成人在线| 午夜电影网亚洲视频| 夜夜嗨av一区二区三区网页| 中文字幕中文字幕一区| 国产精品天天看| 久久青草欧美一区二区三区| 久久综合资源网| 精品国产一区二区三区av性色| 欧美一二三四在线| 91麻豆精品国产91久久久资源速度| 欧美视频在线观看一区二区| 一本到不卡精品视频在线观看| 成人污污视频在线观看| 高清成人免费视频| 成人性视频网站| 成人av影院在线| www.日韩av| 成人国产精品免费网站| 99国产精品久久久| 色婷婷综合在线| 在线观看日韩国产| 欧美猛男男办公室激情| 欧美三电影在线| 欧美巨大另类极品videosbest | 成人av电影在线| 大胆欧美人体老妇| 精品久久久久久最新网址| 日韩一本二本av| 日韩三级高清在线| 精品三级在线看| 国产欧美日韩激情| 综合自拍亚洲综合图不卡区| 日韩伦理电影网| 亚洲永久免费av| 日本aⅴ亚洲精品中文乱码| 看电视剧不卡顿的网站| 国产最新精品精品你懂的| 狠狠色丁香婷婷综合久久片| 福利电影一区二区| av亚洲精华国产精华| 日本韩国精品在线| 欧美一区在线视频| 久久影院午夜片一区| 中文字幕日韩一区二区| 午夜久久久久久久久| 日韩欧美一级二级三级久久久| 欧美一区二区久久久| 2023国产精华国产精品| 国产女同互慰高潮91漫画| 中文字幕在线观看一区| 亚洲成人免费在线观看| 精品系列免费在线观看| 99精品国产一区二区三区不卡| 欧美美女激情18p| 久久精品无码一区二区三区| 亚洲综合网站在线观看| 久久精品国产99国产精品| 97国产一区二区| 日韩欧美国产一区二区三区| 国产精品免费久久久久| 日本va欧美va欧美va精品| 成人三级伦理片| 欧美一区二区二区| 国产精品久久久久一区二区三区| 日本女人一区二区三区| 成人v精品蜜桃久久一区| 欧美美女网站色| 中文字幕中文字幕一区| 九九久久精品视频| 欧美在线小视频| 国产精品水嫩水嫩| 蜜桃91丨九色丨蝌蚪91桃色| 91在线国产观看| 精品国产成人系列| 亚洲成人自拍网| 91在线播放网址| 国产亚洲成av人在线观看导航| 天天色综合成人网| 99精品视频一区| 久久亚洲精精品中文字幕早川悠里| 亚洲午夜精品17c| 99久久精品情趣| 国产视频一区二区在线观看| 麻豆精品视频在线观看免费| 欧美日韩黄色一区二区| 亚洲免费视频成人| 国产精品1区2区3区在线观看| 欧美日韩视频在线一区二区| 亚洲欧美日韩国产一区二区三区 | 国产精品白丝在线| 国产精品18久久久久久久久久久久| 91精品国产全国免费观看| 一区二区三区精品在线| 91蜜桃网址入口| 欧美国产一区视频在线观看| 国产精品99久久久久久久女警| 欧美成人高清电影在线| 全部av―极品视觉盛宴亚洲| 在线看国产日韩| 亚洲在线观看免费视频| 欧美亚一区二区| 亚洲小少妇裸体bbw| 欧美特级限制片免费在线观看| 亚洲乱码日产精品bd| 91在线porny国产在线看| 自拍偷拍国产精品| 91免费看片在线观看| 亚洲欧美韩国综合色| 色婷婷精品大在线视频| 综合久久国产九一剧情麻豆| 91无套直看片红桃| 亚洲精品乱码久久久久| 欧美亚洲禁片免费| 亚洲午夜免费福利视频| 欧美福利视频一区| 日韩电影在线一区二区| 日韩美女视频一区二区在线观看| 激情文学综合丁香| 国产清纯在线一区二区www| 丁香婷婷综合激情五月色| 亚洲欧洲日产国码二区| 色综合一个色综合亚洲| 亚洲精品v日韩精品| 欧美色综合久久| 日韩avvvv在线播放| 久久天堂av综合合色蜜桃网| 丁香六月综合激情| 亚洲猫色日本管| 欧美欧美欧美欧美首页| 久久99精品视频| 国产精品免费av| 欧美亚洲综合网| 麻豆精品久久久| 国产精品日产欧美久久久久| 91精品办公室少妇高潮对白| 日本成人中文字幕| 国产欧美一区二区精品忘忧草| 91一区二区三区在线观看| 首页欧美精品中文字幕| 久久精品一区八戒影视| 在线观看亚洲成人| 久久激五月天综合精品| 中文字幕亚洲成人| 欧美日韩激情一区二区三区| 狠狠色丁香久久婷婷综合_中| 亚洲天堂2014| 日韩午夜精品视频| 不卡视频一二三四| 视频一区在线播放| 国产欧美日韩亚州综合| 欧美日韩国产色站一区二区三区| 国产在线乱码一区二区三区| 亚洲色图欧美偷拍| 欧美一区二区三区视频| 成人18视频在线播放| 日本aⅴ亚洲精品中文乱码| 国产精品久久久久久久浪潮网站| 欧美精品 日韩| 不卡的电视剧免费网站有什么| 琪琪一区二区三区| 亚洲乱码精品一二三四区日韩在线| 日韩一区二区麻豆国产| 99精品视频免费在线观看| 蜜桃一区二区三区在线| 一区二区在线看| 久久人人超碰精品| 欧美日韩国产综合久久| 99麻豆久久久国产精品免费| 久久精品久久久精品美女| 亚洲自拍偷拍图区| 国产精品每日更新| 精品国产精品一区二区夜夜嗨| 欧美日韩精品一区二区在线播放| 波多野结衣中文字幕一区|