GQRS(1)

NAME
gqrs, gqpost - QRS detector and post-processor

SYNOPSIS
gqrs -r record [ options ... ]
gqpost -r record [ options ... ]

DESCRIPTION

gqrs attempts to locate QRS complexes in an ECG signal in the specified record. The detector algorithm is new and as yet unpublished. The output of gqrs is an annotation file (with annotator name qrs) in which all detected beats are labelled normal ("N").

As a QRS detector for research, gqrs has been optimized for sensitivity. gqpost can post-process gqrs's output annotation file to improve positive predictivity, at a cost of reduced sensitivity. It does this by copying its input annotation file, changing N annotations into artifact ("!") annotations if they are likely to be erroneous.

A shared configuration file can be used to describe some of the expected characteristics of the ECG signal. This is unnecessary when processing adult human ECGs, but an appropriately constructed configuration file allows gqrs to analyze fetal, pediatric, and animal ECGs.

Options include:

-a annotator
    [gqpost only] Read annotations from the specified annotator (default: qrs).

-c file
    Initialize parameters based on the specified (text) configuration file. See the example configuration file, gqrs.conf, for details.

-f time
    Begin at the specified time in record (default: the beginning of record).

-h  Print a usage summary.

-H  Read the signal files in high-resolution mode (default: standard mode).

-m threshold
    Specify the threshold (default: 1.0) for detection [qqrs] or acceptance [gqpost]. Use higher values to reduce false detections, or lower values to reduce the number of missed beats.

-n name
    [gqrs only] Save the filtered signals in a new record with the specified record name.

-o name
    [gqpost only] write annotations to an annotation file with the specified annotator name.

-s signal
    [gqrs only] Specify the signal to be used for QRS detection (default: 0). Note that signals may be specified by number or name.

-t time
    Process until the specified time in record (default: the end of the record).

Note that gqpost always copies its entire input annotation file. The -f and -t options, if present, only define the interval during which gqpost may change annotations. Since gqpost can reprocess its own output, this feature allows multiple passes using different threshold values and processing intervals, if necessary.

ENVIRONMENT

It may be necessary to set and export the shell variable WFDB (see setwfdb(1)).

EXAMPLES

To mark QRS complexes in record 100 beginning 5 minutes from the start, ending 10 minutes and 35 seconds from the start, and using signal 1, use the command:
    gqrs -r 100 -f 5:0 -t 10:35 -s 1
The output annotations may be read using (for example):
    rdann -a qrs -r 100

To evaluate the performance of this program, run it on the entire record, by:
    gqrs -r 100
and then compare its output with the reference annotations by:
    bxb -r 100 -a atr qrs

SEE ALSO
bxb(1), ecgpuwave(1), rdann(1), setwfdb(1), sqrs(1), wqrs(1), xform(1)

AUTHORS
George B. Moody (george@mit.edu).

SOURCES
http://www.physionet.org/physiotools/wfdb/app/gqrs.c
http://www.physionet.org/physiotools/wfdb/app/gqpost.c
http://www.physionet.org/physiotools/wfdb/app/gqrs.conf