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

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

?? gdfread.m

?? matlab下實現
?? M
字號:
function [S,count]=gdfread(EDF,chan,Mode,NoR,StartPos)% Loads selected Records of an EDF File (European Data Format for Biosignals)% [S]=gdfread(EDF_Struct, CHAN, Mode, NoR, StartPos)%% Functions of EDFREAD: % - Channel selection,           CHAN is list of selected channels, CHAN=0 [default] selects all channels% - Segment selection            NoR reads NoR units%                                StartPos sets the begin of reading, if not given reading starts at current position %                                      units can be blocks or seconds depending on Mode% - {R}ereferencing                Mode = 'R' (8), CHAN is the referencing Matrix % - Ra{W} vs. Channel order        Mode = 'W' (4), S is Raw EDF format with one block per column%                                                  size(S)=[samples_per_record x number_of_Records]%                                                  channel selection and Mode='S' not possible, % - {A}utoscaling (Calibration)      Mode = 'A' (2), defines whether Scaling should be applied or Not [default]. % - units {S}econds or blocks      Mode = 'S' (1), defines whether units of NoR & StartPos are seconds or blocks %                                                  'S' not recommended%% Mode can be string e.g. 'RAS' or integer e.g. 8+2+1; both are the same.% default Mode is '' (0+0+0+0), 'RW' not possible%% OUTPUT:%   S           data%   %	Copyright (c) 1997-99 by Alois Schloegl%	a.schloegl@ieee.org	%	Version 0.43%	11. Feb. 1999% 04 Feb 1999 V0.42 speed improved for reading EDF files% 11 Feb 1999 V0.43 bug fixed, count for EDF files corrected% This program is free software; you can redistribute it and/or% modify it under the terms of the GNU General Public License% as published by the Free Software Foundation; either version 2% of the  License, or (at your option) any later version.% % This program is distributed in the hope that it will be useful,% but WITHOUT ANY WARRANTY; without even the implied warranty of% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the% GNU General Public License for more details.% % You should have received a copy of the GNU General Public License% along with this program; if not, write to the Free Software% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USAOptiMEM=1;             % if you get low of memory (your CPU starts swapping), set this to oneOptiSPEED=~OptiMEM;GDF=strcmp(EDF.VERSION(1:3),'GDF');if nargin<1        fprintf(2,'error EDFREAD: missing input arguments\n');elseif nargin<2        chan=0;elseif nargin<3        Mode=0;elseif nargin<4         NoR=EDF.NRec;elseif nargin<5        StartPos=0;end;if chan==0                chan=1:EDF.NS;end;if ischar(Mode)         %%% not OCTAVE-compatible        arg3=upper(Mode);        Mode = any(arg3=='R')*8 + any(arg3=='W')*4 + (any(arg3=='A') & ~any(arg3=='N'))*2 + any(arg3=='S'); end;Mode_RAW=any(Mode==[4:7 12:15]);Mode_CAL=any(Mode==[2 3 6 7 10 11 14 15]);Mode_REF=any(Mode==[8:15]);Mode_SEC=any(Mode==[1:2:15]);% Position file pointer and calculate number of Recordsif Mode_SEC        if ~all(~rem([NoR StartPos],EDF.Dur))                fprintf(2,'Warning EDFREAD: NoR &/ StartPos do not fit to blocklength of EDF File of %i s.\n',EDF.Dur);        end;        StartPos=StartPos/EDF.Dur;        NoR=NoR/EDF.Dur;end;        if ~(nargin<5)         [status,POS]=gdfseek(EDF,StartPos,'bof'); end;if Mode_REF        ReRefMx=chan;        chan=find(any(chan,2))';else        chan=reshape(chan,1,prod(size(chan)));        ReRefMx=eye(length(chan));end;Mode_CHANSAME = ~all(EDF.SPR(chan)==EDF.SPR(chan(1)));%if any(EDF.SPR(chan)~=EDF.SPR(chan(1))) fprintf(2,'Warning EDFREAD: channels do not have the same sampling rate\n');end;bi=[0;cumsum(EDF.SPR)];Records=NoR;  % -1 if bodged to miss the last line in caseit is corruptedmaxspr=max(EDF.SPR(chan));count=0;if GDF        if Mode_RAW;                S=zeros(sum(EDF.SPR(chan)),Records);                bi=[0;cumsum(EDF.SPR(chan))];        else                S=zeros(maxspr*Records,1+length(chan));                S(:,1)=1;        end;                        l=0;        while (l<Records) & ~feof(EDF.FILE.FID), %               for K=1:length(chan), K=chan(k);                for k=1:EDF.NS,                                if EDF.GDFTYP(k)==0                                       [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'uchar');                                elseif EDF.GDFTYP(k)==1                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'int8');                                elseif EDF.GDFTYP(k)==2                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'uint8');                                elseif EDF.GDFTYP(k)==3                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'int16');                                elseif EDF.GDFTYP(k)==4                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'uint16');                                elseif EDF.GDFTYP(k)==5                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'int32');                                elseif EDF.GDFTYP(k)==6                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'uint32');                                elseif EDF.GDFTYP(k)==7                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'int64');                                elseif 0; EDF.GDFTYP(k)==8                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'uint64');                                elseif EDF.GDFTYP(k)==16                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'float32');                                elseif EDF.GDFTYP(k)==17                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'float64');                                elseif 0;EDF.GDFTYP(k)>255 & EDF.GDFTYP(k)< 256+64                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),['bit' int2str(EDF.GDFTYP(k))]);                                elseif 0;EDF.GDFTYP(k)>511 & EDF.GDFTYP(k)< 511+64                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),['ubit' int2str(EDF.GDFTYP(k))]);                                elseif EDF.GDFTYP(k)==256                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'bit1');                                elseif EDF.GDFTYP(k)==512                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'ubit1');                                elseif EDF.GDFTYP(k)==255+12                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'bit12');                                elseif EDF.GDFTYP(k)==511+12                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'ubit12');                                elseif EDF.GDFTYP(k)==255+22                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'bit22');                                elseif EDF.GDFTYP(k)==511+22                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'ubit22');                                elseif EDF.GDFTYP(k)==255+24                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'bit24');                                elseif EDF.GDFTYP(k)==511+24                                        [tmp,cnt]=fread(EDF.FILE.FID,EDF.SPR(k),'ubit24');                                else                                         fprintf(2,'Error GDFREAD: Invalid GDF channel type in %s at channel %i',EDF.FileName,k);                                end;                        if any(chan==k), K=find(chan==k);                                if Mode_RAW;                                        S(bi(K)+1:bi(K+1),l)=tmp;                                else                                         if Mode_CHANSAME                                                tmp=reshape(tmp(:,ones(1,maxspr/EDF.SPR(k)))',maxspr,1);                                        end;                                        %disp([size(tmp) size(S) k K l maxspr])                                        S(l*maxspr+(1:maxspr),K+1)=tmp;                                end;                          end;                              count=count+cnt;                end;         l=l+1;        end;        count=count/EDF.AS.spb;        if Mode_RAW                 if Mode_CAL          % Autocalib                         for k=1:EDF.NS,                                S(bi(k)+1:bi(k+1),:)=S(bi(k)+1:bi(k+1),:)*EDF.Cal(k)+EDF.Off(k);                        end;                end;        else                tmp = Mode_CAL + Mode_REF*2;                if tmp==0                        S=S(:,1+(1:length(chan)));                elseif tmp==1                        S=S*EDF.Calib([1 chan+1],chan);                elseif tmp==2                        S=S*[zeros(1,size(ReRefMx,2)); ReRefMx(chan,:)];                elseif tmp==3                        S=S*(EDF.Calib([1 chan+1],chan)*ReRefMx(chan,:));                end;        end;        else %%%%%%%%% if ~GDFif Mode_RAW;        [S, count]=fread(EDF.FILE.FID,[EDF.AS.spb, Records],'int16');        %count = floor(count/EDF.AS.spb);        count = (count/EDF.AS.spb);        if count<1; fprintf(2,'Warning EDFREAD: only %.1f blocks were read instead  of %.1f\n',count,Records); end;        if Mode_CAL          % Autocalib                 for k=chan,                        S(bi(k)+1:bi(k+1),:)=S(bi(k)+1:bi(k+1),:)*EDF.Cal(k)+EDF.Off(k);                end;        end;else        S=zeros(maxspr*Records,length(chan));        if all(EDF.SPR(chan)==EDF.SPR(chan(1)))                if ~OptiMEM % but OptiSPEED                        [s, count]=fread(EDF.FILE.FID,[EDF.AS.spb,Records],'int16');                        count = (count/EDF.AS.spb);                        for k=1:length(chan), K=chan(k);                                S(:,k)=reshape(s(bi(K)+1:bi(K+1),:),maxspr*Records,1);                        end;                else %OptiMEM % but ~OptiSPEED                        for l=1:Records;                                [s, count]=fread(EDF.FILE.FID,[EDF.AS.spb,1],'int16');                                count = (count/EDF.AS.spb);                                for k=1:length(chan), K=chan(k);                                        S((l-1)*maxspr+(1:maxspr),k)=s(bi(K)+1:bi(K+1));                                end;                        end;                end;        else                if ~OptiMEM % but OptiSPEED                        [s, count]=fread(EDF.FILE.FID,[EDF.AS.spb,Records],'int16');                        count = (count/EDF.AS.spb);                        for k=1:length(chan), K=chan(k);                                tmp=reshape(s(bi(K)+1:bi(K+1),:),EDF.SPR(K)*Records,1);                                S(:,k)=reshape(tmp(:,ones(1,maxspr/EDF.SPR(K)))',maxspr*Records,1);                        end;                else %OptiMEM % but ~OptiSPEED                        for l=1:Records;                                [s, count]=fread(EDF.FILE.FID,[EDF.AS.spb,1],'int16');                                count = (count/EDF.AS.spb);                                for k=1:length(chan), K=chan(k);                                        tmp=reshape(s(bi(K)+1:bi(K+1)),EDF.SPR(K),1);                                        S((l-1)*maxspr+(1:maxspr),k)=reshape(tmp(:,ones(1,maxspr/EDF.SPR(K)))',maxspr,1);                                end;                        end;                end;        end;                tmp = Mode_CAL + Mode_REF*2;        if tmp==0        elseif tmp==1                S=[ones(size(S,1),1) S]*EDF.Calib([1 chan+1],chan);        elseif tmp==2                S=S*ReRefMx(chan,:);        elseif tmp==3                S=[ones(size(S,1),1) S]*(EDF.Calib([1 chan+1],chan)*ReRefMx(chan,:));        end;end;end; % GDF

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91黄视频在线观看| 日韩精品一二三区| 国产精品福利影院| 亚洲日本在线天堂| 亚洲视频小说图片| 伊人色综合久久天天| 亚洲一区自拍偷拍| 日韩av中文在线观看| 免费日本视频一区| 狠狠色伊人亚洲综合成人| 国模无码大尺度一区二区三区| 国内外成人在线| 成人综合激情网| 在线观看日韩一区| 日韩网站在线看片你懂的| 精品国产123| 国产精品每日更新| 亚洲h动漫在线| 国产一区二区不卡| 91美女福利视频| 欧美一区二区三区日韩视频| 日韩欧美国产三级电影视频| 国产亚洲午夜高清国产拍精品| 亚洲欧洲性图库| 日本不卡在线视频| 成人综合婷婷国产精品久久 | 欧美一二三四在线| 亚洲精品一线二线三线无人区| 国产午夜精品久久久久久久 | 亚洲福利国产精品| 激情综合色播五月| 色又黄又爽网站www久久| 欧美日韩成人一区二区| 久久久久久久网| 亚洲一区av在线| 国内精品第一页| 欧美无乱码久久久免费午夜一区 | 亚洲高清三级视频| 国产成人免费视频一区| 欧美伊人久久久久久久久影院 | 亚洲男同性视频| 久久国产生活片100| 91浏览器在线视频| 精品99一区二区| 亚洲成人精品在线观看| 成人免费福利片| 日韩女同互慰一区二区| 一区二区三区在线观看视频| 久久精品国产成人一区二区三区| 色狠狠桃花综合| 国产精品视频看| 精品无码三级在线观看视频| 色综合久久88色综合天天6| 国产日韩欧美综合一区| 日韩av电影天堂| 欧美性大战久久久久久久蜜臀| 国产欧美日韩另类一区| 蜜臀精品久久久久久蜜臀| 在线观看免费成人| 亚洲免费电影在线| 99精品久久99久久久久| 国产丝袜在线精品| 国产乱子伦视频一区二区三区| 91精品国产91久久久久久一区二区| 亚洲欧美怡红院| 成人h动漫精品一区二区| 久久久久综合网| 国产在线观看免费一区| 精品国产精品网麻豆系列| 奇米影视在线99精品| 91精品国产综合久久久久久| 亚洲成va人在线观看| 欧美亚日韩国产aⅴ精品中极品| 国产精品丝袜在线| 99国产精品久| 亚洲青青青在线视频| 色婷婷av一区二区三区软件| 亚洲六月丁香色婷婷综合久久| 成人18视频日本| 亚洲猫色日本管| 在线观看免费亚洲| 青青草精品视频| 日韩欧美亚洲国产另类| 国产乱码精品一区二区三区av | 欧美电影免费观看完整版| 久久99久久99| 国产日韩欧美一区二区三区综合| 国产69精品久久99不卡| 国产精品短视频| 欧美日韩三级一区| 久久精品国产精品青草| 国产女人水真多18毛片18精品视频| 国产成人精品1024| 亚洲人亚洲人成电影网站色| 在线欧美日韩精品| 青青草视频一区| 中文字幕免费在线观看视频一区| 不卡电影免费在线播放一区| 一区二区三区在线看| 欧美日韩国产成人在线免费| 国产自产v一区二区三区c| 国产精品久久夜| 欧美放荡的少妇| 成人精品电影在线观看| 亚洲与欧洲av电影| 欧美精品一区二区三区四区| 成人黄页在线观看| 首页综合国产亚洲丝袜| 中文字幕欧美区| 91精品国产手机| 国产成人精品免费网站| 日韩av一二三| 亚洲精品视频免费观看| 精品国产91久久久久久久妲己 | 日韩极品在线观看| 亚洲欧美在线高清| 精品国产免费一区二区三区香蕉| av在线播放一区二区三区| 日韩精品1区2区3区| 国产精品成人网| 久久婷婷久久一区二区三区| 在线观看免费视频综合| 成人动漫视频在线| 国产一区二区在线电影| 亚洲成av人片一区二区梦乃| 日本一区二区三级电影在线观看| 91麻豆精品国产综合久久久久久| 99视频热这里只有精品免费| 日韩制服丝袜先锋影音| 亚洲男同性恋视频| 国产精品美女久久福利网站| 久久久久久一级片| 日韩一本二本av| 欧美日韩三级一区| 91福利在线看| 色综合一区二区| 91污片在线观看| 99国产精品久久久| 成人影视亚洲图片在线| 国产一区二区三区四| 久久91精品国产91久久小草| 偷拍一区二区三区四区| 亚洲电影一级片| 亚洲五月六月丁香激情| 亚洲成人资源网| 日本视频中文字幕一区二区三区| 亚洲成人av福利| 视频在线观看91| 日本女人一区二区三区| 蜜臂av日日欢夜夜爽一区| 免费人成精品欧美精品 | 国产精品久久久久影视| 国产欧美日韩在线看| 国产精品美女久久久久av爽李琼| 国产欧美日韩在线观看| 国产精品久久久久一区 | 蜜桃一区二区三区在线| 久久福利视频一区二区| 国产综合色产在线精品| 国产ts人妖一区二区| 成人av网在线| 91久久国产最好的精华液| 欧美三级在线视频| 日韩精品中文字幕在线不卡尤物| 久久综合视频网| 国产精品色一区二区三区| 亚洲欧洲综合另类| 亚洲444eee在线观看| 六月丁香婷婷久久| 成人免费毛片aaaaa**| 99国产欧美另类久久久精品| 在线视频一区二区三区| 制服丝袜在线91| 中文字幕乱码亚洲精品一区| 亚洲激情中文1区| 日韩二区在线观看| 懂色av一区二区三区免费观看| 91天堂素人约啪| 7777精品伊人久久久大香线蕉超级流畅| 337p亚洲精品色噜噜| 国产精品人成在线观看免费| 一区二区三区日韩欧美精品| 激情成人午夜视频| 91亚洲精品乱码久久久久久蜜桃 | 国产aⅴ精品一区二区三区色成熟| 成人国产精品免费观看| 欧美性高清videossexo| 国产日韩一级二级三级| 亚洲高清一区二区三区| 国产高清视频一区| 欧美日韩久久一区二区| 中文字幕av不卡| 日日骚欧美日韩| 成人毛片在线观看| 制服丝袜亚洲色图| 亚洲精品va在线观看| 大陆成人av片| 精品国产乱子伦一区| 亚洲国产精品尤物yw在线观看| 国产一区欧美一区|