Skip to content

v1.1.1

Choose a tag to compare

@fallahmad fallahmad released this 09 Oct 17:56
· 36 commits to main since this release

New format: AliveCor Kardia JSON

ECG recordings exported from the Kardia API (KardiaMobile and KardiaMobile 6L) can now be read.

  • The unfiltered signal goes to leads. The signal filtered by AliveCor goes to a new leads_enhanced field. Other formats leave this field empty.
  • Samples are scaled with amplitudeResolution (nanovolts per count), as described in the Kardia API documentation.
  • The AliveCor algorithm result (for example afib) is reported as a machine interpretation.
  • Kardia 12L recordings use a different layout and are not supported.

ECGDataKit now reads 12 formats.

Detected format and parser in file_format

record.file_format now holds the name of the detected format (name) and the parser that read the file (parser). They are filled in when the file is read through FileParser or parse_batch.

Annotation changes

These changes rename or remove annotation keys. Code that reads them may need updating.

  • No more repeated measurements. The Sierra and Mortara parsers stored some values both in measurements and in annotations. A value with a measurement field is now stored only in measurements. All other values stay in annotations.
  • One key per wave boundary. HL7 aECG and SCP-ECG wrote all wave boundaries into one text annotation, wave_boundaries_ms. Each boundary now has its own key.
  • Representative beat boundaries start with median_ in every parser, for example median_p_onset_ms or median_q_onset. This covers HL7 aECG, SCP-ECG, Mortara, GE MUSE and Sierra.
  • Keys end with their unit when the format states it: _ms, _samples or _s.
  • DICOM time-referenced annotations moved from raw_metadata["waveform_annotations"] to annotations, with one key per wave type, for example p_onset_samples.

Full Changelog: v1.1.0...v1.1.1