# How to implement Pass Band Filter?

20 views (last 30 days)
Explorer on 25 Jan 2016
Commented: Star Strider on 25 Jan 2016
I am following necessary pre-preocessing steps for arrhythmia classification as mentioned below.
I have re-sampled dataset of ECG signals to 200 Hz. Now, these signals need to filtered with Band-Pass Filter.
Sampling frequency of ECG signals = 200 Hz
How to implement PassBand filter on my resampled signals in MATLAB for following specifications.
-> Passband frequency range = 1 to 100 Hz (In above paper it is 2-48 but I want to design with 1 to 100 Hz)
-> Filter Type = Chebyshev II

Star Strider on 25 Jan 2016
The 200 Hz sampling frequency was the reason they could use the 2-40 Hz bandpass filter. If you’re dealing with atrial or ventricular tachyarrhythmias, and you need a 2-100 Hz passband, you will have to resample your signals at greater than 200 Hz. I would use 256 Hz, since that is a relatively common sampling frequency for EKGs, so you may be able to use some of them without resampling them at all.
##### 2 CommentsShowHide 1 older comment
Star Strider on 25 Jan 2016
Ws = Wp .* [0.5 1.2]; % Filter Stopband (Normalised)
This design works, and produces a stable filter with good characteristics:
Fs = 256; % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
Wp = [2 95]/Fn; % Filter Passband (Normalised)
Ws = Wp .* [0.5 1.2]; % Filter Stopband (Normalised)
Rp=1;
Rs= 50;
[n,Ws] = cheb2ord(Wp,Ws,Rp,Rs);
[b,a] = cheby2(n, Rs, Ws);
[sos,g] = tf2sos(b,a);
figure(1)
freqz(sos, 1024, Fs)
I changed some of the parameters because I prefer these results for an EKG filter. You can see in figure(1) that the passband works.

### Community Treasure Hunt

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

Start Hunting!

Translated by