Automatic Detection of Cardiac Conditions from Photos of Electrocardiogram (ECG) Captured by Smartphones
preprint
OA: closed
Abstract
ABSTRACT Background Artificial intelligent electrocardiogram (ECG) diagnostic algorithms can achieve cardiologist-level accuracy, but their clinical use is limited as they cannot be installed in older ECG machines. Objective To develop a smartphone application that extracts and analyzes ECG waveforms from photos using machine learning techniques. Methods A smartphone application was developed to automatically extract ECG waveforms from photos taken by clinicians using computer vision and machine learning. Custom designed machine learning models were developed to perform waveform identification, gridline removal, and scale calibration. The extracted voltage-time series waveforms were analyzed using a pre-trained machine learning-based diagnostic algorithms, and the accuracy of the proof-of-concept application was assessed. Results Waveforms from 40,516 scanned and 444 photographed ECGs were automatically extracted. 12,828 of 13,258 (96.8%) scanned and 5,399 of 5,743 (94.0%) photographed waveforms were correctly cropped and labelled. 11,604 of 12,735 (91.1%) scanned and 5,062 of 5,752 (88.0%) photographed waveforms achieved successful voltage-time signal extraction after automatic gridline and background noise removal. The AF diagnostic algorithm achieved 91.3% sensitivity, 94.2% specificity, 95.6% positive predictive value, 88.6% negative predictive value and 93.4% F1 score. Conclusion Using computer vision and machine learning techniques to detect cardiac conditions from photos of ECGs taken with smartphones is feasible. This platform can enable widespread deployment of the latest machine learning-based ECG diagnostic algorithms.
My notes (saved in your browser only)
Citation neighborhood (no data yet)
We don't have any in-corpus citations linked to this paper yet. The paper's references may be in our DB but unresolved to ``paper_id`` (resolution happens at ingest when the cited DOI matches a row we already have). Run the cross-source citation reconcile pass to retry.
Source provenance
- europepmc
- last seen: 2026-05-19T01:45:01.086888+00:00