Signal Segmentation Task
Overview
Section titled “Overview”The objective of segmentation is to delineate key segments of the signal. In the context of ECG signals, this involves identifying the different components of the cardiac cycle, including the P-wave, QRS complex, and T-wave. These segments are used to compute a number of clinically relevant metrics, including heart rate, PR interval, QRS duration, QT interval, and QTc interval. For PPG, the task involves segmenting the systolic and diastolic phases of the cardiac cycle. Segmentation models are useful for detecting arrhythmias, heart rate variability, and other cardiac abnormalities.
ECG Characteristics
Section titled “ECG Characteristics”-
Annotated ECG Signal
-
ECG Segments/Fiducials
- P-Wave: Reflects atrial depolarization
- QRS Complex: Reflects ventricular depolarization
- T-Wave: Reflects ventricular repolarization
- U-Wave: Reflects papillary muscle repolarization
- PR Interval: Time from atrial depolarization to ventricular depolarization
- QT Interval: Time from ventricular depolarization to repolarization
- QTc Interval: Corrected QT interval
- ST Segment: Time between ventricular depolarization and repolarization
- J-Point: Junction between QRS complex and ST segment
PPG Characteristics
Section titled “PPG Characteristics”- Systolic Phase: Reflects the contraction of the heart
- Diastolic Phase: Reflects the relaxation of the heart
- Dicrotic Notch: Reflects the closure of the aortic valve
Dataloaders
Section titled “Dataloaders”Dataloaders are available for the following datasets:
Pre-Trained Models
Section titled “Pre-Trained Models”The following table provides the latest performance and accuracy results for segmentation models. Additional result details can be found in Model Zoo → Segmentation.
| NAME | DATASET | FS | DURATION | # CLASSES | MODEL | PARAMS | FLOPS | METRIC |
|---|---|---|---|---|---|---|---|---|
| SEG-2-TCN-SM | LUDB, Synthetic | 100Hz | 2.5s | 2 | TCN | 2K | 0.42M | 96.6% F1 |
| SEG-4-TCN-SM | LUDB, Synthetic | 100Hz | 2.5s | 4 | TCN | 7K | 2.1M | 86.3% F1 |
| SEG-4-TCN-LG | LUDB, Synthetic | 100Hz | 2.5s | 4 | TCN | 10K | 3.9M | 89.4% F1 |
| SEG-PPG-2-TCN-SM | Synthetic | 100Hz | 2.5s | 2 | TCN | 4K | 1.43M | 98.6% F1 |
Target Classes
Section titled “Target Classes”Below outlines the classes available for segmentation. When training a model, the number of classes, mapping, and names must be provided. This allows for the most flexibility in the segmentation task.
| CLASS | LABELS |
|---|---|
| 0 | None |
| 1 | P-wave |
| 2 | QRS |
| 3 | T-wave |
| 4 | U-wave |
| 5 | Noise |
| 6 | Systolic |
| 7 | Diastolic |
Class Mapping Example
Below is an example of a class mapping for a 3-class segmentation model. The class map keys are the original class labels, and the values are the new class labels. Any class not included will be skipped.
{ "num_classes": 3, "class_names": ["None", "QRS", "Noise"], "class_map": { "0": 0, // Map None to None "1": 0, // Map P-wave to None "2": 1, // Map QRS to QRS "3": 0, // Map T-wave to None "4": 0, // Map U-wave to None "5": 2 // Map Noise to Noise }}