physiobank annotations

https://archive.physionet.org/physiobank/annotations.shtml

Most PhysioBank databases include one or more sets of annotations for each recording. Annotations are labels that point to specific locations within a recording and describe events at those locations. For example, many of the recordings that contain ECG signals have annotations that indicate the times of occurrence and types of each individual heart beat ("beat-by-beat annotations").

A dictionary of signals is also available.

Annotations can be examined using many different programs available on this web site. Among these are the PhysioBank ATM and LightWAVE, which can be used from your web browser; and many components of PhysioToolkit that can be freely downloaded and run on your own computer, including rdannWAVEpschart, and psfd. All of these programs display annotation types using a common set of codes (mnemonics); many of these programs, and others in PhysioToolkit, accept these codes as user input (for example, to select specific annotation types for analysis).

The standard set of annotation codes was originally defined for ECGs, and includes both beat annotations and non-beat annotations. Most PhysioBank databases use these codes as described below. Refer to the documentation for each database to confirm if the annotation codes have their standard meanings.

Beat annotations:

Code Description
N   Normal beat (displayed as "·" by the PhysioBank ATM, LightWAVE, pschart, and psfd)
L   Left bundle branch block beat
R   Right bundle branch block beat
B   Bundle branch block beat (unspecified)
A   Atrial premature beat
a   Aberrated atrial premature beat
J   Nodal (junctional) premature beat
S   Supraventricular premature or ectopic beat (atrial or nodal)
V   Premature ventricular contraction
r   R-on-T premature ventricular contraction
F   Fusion of ventricular and normal beat
e   Atrial escape beat
j   Nodal (junctional) escape beat
n   Supraventricular escape beat (atrial or nodal)
E   Ventricular escape beat
/   Paced beat
f   Fusion of paced and normal beat
Q   Unclassifiable beat
?   Beat not classified during learning
 

Non-beat annotations:

Code Description
[   Start of ventricular flutter/fibrillation
!   Ventricular flutter wave
]   End of ventricular flutter/fibrillation
x   Non-conducted P-wave (blocked APC)
(   Waveform onset
)   Waveform end
p   Peak of P-wave
t   Peak of T-wave
u   Peak of U-wave
`   PQ junction
'   J-point
^   (Non-captured) pacemaker artifact
|   Isolated QRS-like artifact [1]
~   Change in signal quality [1]
+   Rhythm change [2]
s   ST segment change [2]
T   T-wave change [2]
*   Systole
D   Diastole
=   Measurement annotation [2]
"   Comment annotation [2]
@   Link to external data [3]

Each instance of an annotation may have up to six attributes:

  • time: the time within the recording (recorded in the annotation file as the sample number of the sample to which the annotation "points")
  • anntyp [sic]: a numeric annotation code (see ecgcodes.h for definitions)
  • subtyp [sic], channum: three small integers (between -128 to 127) that specify context-dependent attributes (see the documentation for each database for details)
  • aux: a free text string

rdann presents these attributes in left-to-right order on each output line, although aux is omitted if (as is most often true) it is empty.

Annotations are viewed and selected using mnemonic codes rather than the numeric anntyp codes used within the annotation files. Annotations can be read by C, C++, and Fortran applications using getann, and they can be written using putann, functions defined within the WFDB library. Matlab and Octave programs can read and write annotations using these m-files. Alternatively, annotations can be read by scripting language applications using rdann, and they can be written using wrann, programs belonging to the WFDB Software Package. Details on the format of annotation files are available here.

Footnotes:

  1. In artifact and signal quality change annotations, each non-zero bit from the four least significant bits in the subtyp field of the annotation indicates that the corresponding signal contains noise (the least significant bit corresponds to signal 0). The four high bits, if non-zero, indicate that the corresponding signals are unreadable (because of very high noise amplitude, very low signal amplitude, loss of signal, or some combination of these). These annotations, where they exist, reflect the expert annotator's subjective judgements only. rdann and the PhysioBank ATM present the subtyp field in the fourth column of output, to the right of the annotation code. When displaying signal quality change annotations, the ATM, pschartpsfd, and WAVE do not show the annotation code (~) itself; rather, they display a string with one character (c for clean, n for noisy, or u for unreadable) for each signal (beginning with signal 0).
  2. In rhythm, ST segment, and T-wave change annotations, and in measurement and comment annotations, the aux field contains an ASCII string (with prefixed byte count) describing the rhythm, ST segment, T-wave change, measurement, or the nature of the comment. By convention, the character that follows the byte count in the aux field of a + annotation is "(". The most commonly used rhythm annotation strings are:
    String Description
    (AB   Atrial bigeminy
    (AFIB   Atrial fibrillation
    (AFL   Atrial flutter
    (B   Ventricular bigeminy
    (BII   2° heart block
    (IVR   Idioventricular rhythm
    (N   Normal sinus rhythm
    (NOD   Nodal (A-V junctional) rhythm
    (P   Paced rhythm
    (PREX   Pre-excitation (WPW)
    (SBR   Sinus bradycardia
    (SVTA   Supraventricular tachyarrhythmia
    (T   Ventricular trigeminy
    (VFL   Ventricular flutter
    (VT   Ventricular tachycardia
    In a few cases, other strings have been used; see the documentation for the associated database for further information in such cases. rdann and the PhysioBank ATM's "Show annotations as text" tool present the aux string at the end of the line (following the sixth column of output) for any annotation that has a non-empty aux field. Programs such as the ATM's "Plot waveforms" tool, LightWAVE, pschartpsfd, and WAVE display the aux string in place of the annotation code; by convention, rhythm labels appear below beat labels, and other aux strings appear above beat labels. When waveforms are shown at condensed scales such that aux strings might overlap, some of these programs automatically or optionally produce abbreviated versions of the aux strings in order to keep the display readable; refer to the documentation for each program for further details.
  3. The aux field of a link annotation contains a URL (a uniform resource locator, in the form http://machine.name/some/data) suitable for passing to a web browser. Link annotations may be used to associate extended text, images, or other data with an annotation file. If the aux field contains any whitespace, text following the first whitespace is taken as descriptive text to be displayed by a WFDB browser such as WAVE. If possible, link text is shown underlined and in blue.
posted on 2021-04-17 19:57  medsci  阅读(92)  评论(0编辑  收藏  举报