Summary of "ECG Filtration and Normalization in MATLAB | MATLAB Digital Signal Processing"
The video provides a tutorial on ECG signal filtration and normalization using MATLAB, focusing on Digital Signal Processing techniques applied to physiological data.
Key Technological Concepts and Procedures:
- Loading ECG Data:
- The ECG data is sourced from the PhysioNet open-source dataset.
- Data is loaded from a local file (
100.dat) using MATLAB’sfopen,fread(with 16-bit integer format), andfclosefunctions. - Sampling frequency (Fs) is 360 Hz.
- A time vector is created based on the sampling rate and signal length for plotting.
- Raw ECG Signal Visualization:
- The raw ECG waveform is plotted for a 5-second segment to avoid clutter and improve interpretability.
- Bandpass Filtering:
- A Butterworth bandpass filter is applied to remove noise outside the typical ECG frequency range.
- Passband frequencies are set between 5 Hz (low cutoff) and 15 Hz (high cutoff).
- MATLAB’s built-in
butterfunction is used to compute filter coefficients. - The filter is applied using
filtfiltfor zero-phase filtering to avoid phase distortion.
- R-Peak Detection:
- Normalization of ECG Signal:
- The amplitude of the filtered ECG is normalized to a range of -1 to 1.
- Normalization formula:
Normalized = 2 × (signal - min(signal)) / (max(signal) - min(signal)) - 1 - This standardizes the signal amplitude for easier analysis and comparison.
- Plotting Normalized Signal:
- The normalized ECG signal is plotted for visualization.
- The tutorial suggests using global variables to avoid repeating code for plotting multiple segments.
- Additional Notes:
- The presenter briefly mentions simulating ECG signals using sine wave functions but does not delve into details.
- Code snippets are made available on the presenter’s website with a link provided in the video description.
- Viewers are encouraged to ask questions in the comments.
Summary of Tutorial Features:
- Step-by-step guide to load, filter, and normalize ECG signals in MATLAB.
- Use of PhysioNet dataset for real patient ECG data.
- Application of Butterworth bandpass filter to isolate ECG frequency components.
- Detection of R-peaks using peak-finding algorithms.
- Normalization of signal amplitude for standardized output.
- Visualization of raw, filtered, and normalized ECG signals.
- Mention of simulation techniques for synthetic ECG generation.
Main Speaker/Source:
- The tutorial is presented by an unnamed MATLAB instructor or content creator who demonstrates the MATLAB code live and explains each step in detail.
Category
Technology