--- a +++ b/preprocessOfApneaECG/computeFeatures.m @@ -0,0 +1,41 @@ +function a = computeFeatures(file_path) +% https://doi.org/10.21105/joss.00671 +% https://zenodo.org/badge/latestdoi/128659224 +addpath(genpath('G:\python project\apneaECGCode\preprocessOfApneaECG\BioSigKit')) +read_path = strcat(file_path, '\denoised_ecg_data.mat'); +ecg_data = load(read_path); +ecg_data_1 = ecg_data.denoised_ecg_data; +a = 0; + +Analysis = RunBioSigKit(ecg_data_1, 100, 0); % Uses ECG1 as input,Fs=250 +%-------------------- Call Pan Tompkins Algorithm ------------------- % +% Analysis.MTEO_qrstAlg; % Runs MTEO algorithm +% QRS = Analysis.Results.R; % Stores R peaks in QRS +%-------------------- Call MTEO QRS ------------------- % +try + Analysis.MTEO_qrstAlg; % Runs MTEO algorithm + Qwave = Analysis.Results.Q; + Rwave = Analysis.Results.R; + Swave = Analysis.Results.S; + Twave = Analysis.Results.T; + Pwave = Analysis.Results.P; + EDR = Analysis.EDR_comp; + save_path = strcat(file_path, '\Qwave.mat'); + save(save_path, 'Qwave'); + save_path = strcat(file_path, '\Rwave.mat'); + save(save_path, 'Rwave'); + save_path = strcat(file_path, '\Swave.mat'); + save(save_path, 'Swave'); + save_path = strcat(file_path, '\Twave.mat'); + save(save_path, 'Twave'); + save_path = strcat(file_path, '\Pwave.mat'); + save(save_path, 'Pwave'); + save_path = strcat(file_path, '\EDR.mat'); + save(save_path, 'EDR'); + disp('Successfully.'); +catch + disp('it is noise.'); +end + +end +