Skip to content

antonin-lfv/ECG_Generator

Repository files navigation


Logo

ECG Generator

An awesome streamlit app to generate ECGs!
Open application · Report Bug · Request Feature


About The Project

This application is a streamlit app that allows you to generate ECGs. It is based on a variational autoencoder with convolution where the architecture and implementation is detailed HERE.

preview

In this application, you are able to generate ECGs of different types:

  • NOR : Normal beat (NOR)
  • LBBB : Left bundle branch block beat (LBBB)
  • RBBB : Right bundle branch block beat (RBBB)
  • NE : Nodal (junctional) escape beat (NE)
  • AP : Atrial premature beat (AB)
  • aAP : Aberrated atrial premature beat (aAP)
  • NP : Nodal (junctional) premature beat (NP)
  • PVC : Premature ventricular contraction (PVC)
  • VE : Ventricular escape beat (VE)
  • fVN : Fusion of ventricular and normal beat (VF)

And export them in a csv file. You can choose the number of ECGs you want to generate.

How to run the application locally

Create the environment with uv (make sure you have uv installed):

uv sync

Then run the streamlit application:

uv run streamlit run main.py

Preview of the architecture of the VAE convolutional model

The encoder:

preview

The decoder:

preview

About

A Deep Learning application powered by Streamlit and VAE to simulate electrocardiogram anomalies (LBBB, PVC, RBBB...) for data augmentation.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages