Can anyone tell me why this error is occurring and how to solve it? Thank you.

10 views (last 30 days)
I am getting modwt (line138) error saying invalid transform level. I have tried using different ecg data files in mat format from physionet atm.
Code:
%program to get QRS peaks and Heart Rate from ECG signal
[filename,pathname]=uigetfile('*.*','Select the ECG Signal');
filewithpath=strcat(pathname,filename);
Fs=input('Enter Sampling Rate: ');
ecg=load(filename); %Reading ECG signal
wecg=(ecg.val)./200; %Normalize gain
t=1:length(wecg); %No. of samples
tx=t./Fs; %Getting Time vector
wtecg= modwt(wecg,4,'sym4'); %4-level undecimated DWT using sym4 //this is where the error is occurring//
wtrec=zeros(size(wtecg));
wtrec(3:4,:)= wtecg(3:4,:); %Extracting only d3 and d4 coefficients.

Answers (1)

William Rose
William Rose on 24 Feb 2023
@Rafia Noshin, please include a sample ecg data file so we can run the code.
What error do you get? When I run that line, I get no error:
wecg=rand(1,2000);
wtecg= modwt(wecg,4,'sym4');
disp(size(wtecg))
5 2000
It runs without error for me.
  7 Comments

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!