wfdb.github.io

Waveform Database

Waveforms

About

Waveform Database (WFDB) is a set of file standards designed for reading and storing physiologic signal data, and associated annotations. See the WFDB Spec repository for the specification details.

Example signal types include ECG and EEG. Example annotation types include automated machine-labelled heart-beats, and clinician comments regarding specific signal artifacts.

There are several available software packages that implement the WFDB specifications. Consider using one of them if you want to conduct research or build algorithms using physiologic data.

History

The original WFDB Software Package, written in C, along with a set of new file specifications, was created by George B. Moody in 1989.

While working at the Lab for Computational Physiology (LCP) in the Harvard-MIT Division of Health Sciences and Technology, George also created PhysioNet, a platform that hosts many WFDB-related databases, software packages, and resources.

As the preferred programming tools of the scientific industry evolved over time, members of the LCP created more WFDB software packages to faciliate more effective research and usage.

Software Packages

The WFDB specification is openly-licensed, so anyone can implement and modify software according to the spec. Here are the main packages and implementations that we officially recognize:

There are also many WFDB-related software toolkits for analyzing waveform data hosted on http://physionet.org.

Why to Use WFDB

Availability of Data

There is a LOT of waveform data in WFDB format on http://physionet.org: tens of terrabytes, and growing. For this reason, WFDB is already very widely used.

Notable examples include:

Standards and Software

Trying to store many hours or days of multi-channel signals recorded at 100+ Hz in text formats such as CSV, is highly suboptimal, both for cost, and performance (even with 2022 levels of storage and compute). WFDB contains several binary formats for effective storage, data streaming, and direct/random access. In addition, the WFDB software provides many utilities for visualizing and analyzing the data, such as ECG peak detectors.

Signal file formats for physiologic waveforms are currently very scattered, and oftenly proprietary, closed-sourced, and application specific for their owning institutions. WFDB will always be open-source and continually developed for the benefit of the wider community. Its usage is not tied to any proprietary or paid software packages, platforms, or vendors.

PS: If you know of a better format for physiologic wavforms, tell us.

About Us

WFDB is under active development! A working group, composed of MIT-LCP members and external collaborators, has been formed to coordinate efforts in making WFDB more useful, popular, and accessible.

Methods include designing better APIS, improving performance, improving documentation, adding new file formats, adding support for more languages, and more.

We strongly encourage the open community to contribute to the software, documentation, and discussions.

Questions and Contact

For questions, comments, and suggestions about WFDB, and where efforts are being directed, please use the WFDB-Spec repo’s discussions page. Tell us what you like, dislike, and how we can make WFDB better for you.

To receive announcements about WFDB, join the announcements email list.