Katri Karhinoja, Antti Vasankari, Jukka-Pekka Sirkiä, Antti Airola, David Wong, Matti Kaisti
We developed a fully-annotated multi-modal framework for synthetic ECG and PPG generation. The code for the framework with a tutorial demonstrating its use has been released in https://github.com/UTU-Health-Research/framework_for_synthetic_biosignals.
BACKGROUND AND OBJECTIVE: By generating synthetic biosignals, the quantity and variety of health data can be increased. This is especially useful when training machine learning models by enabling data augmentation and introduction of more physiologically plausible variation to the data.
METHODS: For these purposes, we have developed a synthetic biosignal model for two signal modalities, electrocardiography (ECG) and photoplethysmography (PPG). The model produces realistic signals that account for physiological effects such as respiratory modulation and changes in heart rate due to physical stress. Arrhythmic signals can be generated with beat intervals extracted from real measurements. The model also includes a flexible approach to adding different kinds of noise and signal artifacts. The noise is generated from power spectral densities extracted from both measured noisy signals and from modeled power spectra. Importantly, the model also automatically produces labels for noise, segmentation (e.g. P and T waves, QRS complex, for electrocardiograms), and artifacts.
RESULTS: We assessed how this comprehensive model can be used in practice to improve the performance of models trained on ECG or PPG data. For example, we trained a convolutional neural network to detect ECG R-peaks using either real ECG signals or synthetic signals from our new generator. The F1 score of the peak detection was 0.87 using real data, in comparison to 0.98 using our generator. In addition, the synthetic biosignal model can be used for example in signal segmentation, quality detection and bench-marking detection algorithms.
CONCLUSIONS: We developed a fully-annotated multi-modal framework for synthetic ECG and PPG generation. The code for the framework with a tutorial demonstrating its use has been released in https://github.com/UTU-Health-Research/framework_for_synthetic_biosignals.