Back to projects

Projects/04

CardioLeather

Smart Leather for Automotive Vital Signs

2022–2023Lisbon, Portugal

I developed an ECG processing pipeline and LSTM models for driver drowsiness detection and arrhythmia screening as part of CardioLeather, in collaboration with CardioID and academic and industry partners. The work combined filtering, R-peak detection and RR-interval analysis, with model evaluation on the DROZY dataset.

Drowsiness DetectionArrhythmiaAutomotiveIndustry Collaboration

Project overview

Problem
Use ECG signals to assess driver drowsiness and screen for arrhythmias.
My contribution
Built the ECG processing pipeline and LSTM models in collaboration with CardioID.
Approach
Filtering, R-peak detection and RR-interval modelling with BioSPPy and TensorFlow.
Constraints
Work with ECG acquired through steering-wheel sensors and short RR sequences.
Result
87.3% accuracy and 91.8% AUC for drowsiness detection in 5-fold cross-validation.

Problem

Drowsy driving and undetected cardiac events like Atrial Fibrillation (AFib), bradycardia, or tachycardia increase road risks. Current solutions wait for behavioral signs like steering drift, missing early warnings. CardioID aimed to expand CardioWheel drowsiness tech into full health monitoring using steering-wheel ECG to detect Autonomic Nervous System (ANS) changes and arrhythmias early through HRV analysis.

Heart rate variability (HRV) changes during drowsiness and arrhythmias, providing early warning signs before behavioral symptoms appear.

Methods

  • Created end-to-end ECG pipeline with BioSPPy: high-pass filtering, Hamilton R-peak detection, RR-interval extraction.
  • Processed ULg DROZY multimodal dataset along with Karolinska Sleepiness Scale (KSS>6 = drowsy).
  • Proposed sequential RR-interval analysis with LSTM models (vanilla, stacked, bidirectional, stacked bidirectional) on 20-RR windows using TensorFlow, Adam optimizer, and binary cross-entropy loss to capture temporal dynamics of drowsiness.
  • Extended HRV features for arrhythmia classification.
LSTM architectures tested for drowsiness detection using sequential RR-interval data.

Results

  • Stacked bidirectional LSTM achieved 87.3% accuracy and 91.8% AUC for drowsiness detection, validated with 5-fold cross-validation.
  • Surpassed traditional and feature extraction methods (Accuracy/F1-Score: SVM 69%, RF 85%, GBT 70%, ANN 69%, LSTM-AE 85%).
  • Full pipeline enabled real-time arrhythmia detection (AFib, bradycardia, tachycardia), powering CardioLeather's conductive leather for automotive health and safety.
ComponentAccuracyPrecisionRecallF1-scoreAUC
Drowsiness Detection86.0%81.1%77.0%79.0%89.8%
Atrial Fibrillation98.4%95.6%99.0%97.3%99.7%
Read the article(opens in a new tab)Visit the project website(opens in a new tab)

Next project

YOUR-Lead