Polybench® Reference

EDF File Format provider

Overview

Reads files with file header EDF FILEversion 1992 and writes EDF files (ver. 1992) in 16 bit resolution.

Details

Settings

This stream interface offers settings that specify how the interface should work. Those settings are available in the properties dialog as well as in variable parameters.

Physical range
Default value: 1(-100/100);2(-100/100);3(-1000/1000);
Defines the physical minimum and maximum in units of the physical dimension. Format: n(x/y);n+1(x/y); where n = channel number (starts with 1), and x/y means x = min and y = max. Some known channel names (e.g. EOG) may lead to a special automatic default range, to get the default min/max for that channel name (see manual). You may write ALL(x/y) to specify all channels to have a range; and RANGE[a/b](x/y), to let channel a until b have the specified range.

Transducer type
Default value:
Defines the transducer type of the electrode. Format: n(T);n+1(T); where n = channel number (starts with 1), and T = transducer type text (e.g. AgAgCl electrode). Use ALL(T) to set the same text for all channels. Use RANGE[a/b](T) to set the text for channel a until b.

Prefiltering
Default value:
Defines the prefiltering of each channel. Format: n(P);n+1(P); where n = channel number (starts with 1), and P = prefiltering text (e.g. HP:0.1Hz LP:75Hz). Use ALL(P) to set the same text for all channels. Use RANGE[a/b](P) to set the text for channel a until b.

Description

If you want to record using this well known file format, then you have to consider this:

The format stores sample values in only 16 bit width. Polybench works with 64-bit values. In order to get the Polybench samples into the EDF file, the values are scaled so that they fit in the EDF format, as is described by Bob Kemp et al. in their EDF file format specification. As a result, the samples that you read from an EDF file may have a small deviation from the original values, because the resolution of the values have become smaller.
You have to specify yourself how the signals need to be scaled, because an optimal scaling depends on the range in which your signal is moving. You can specify this in the Storage operator ("Storage") properties, after you have selected the EDF file format. The signal range has to be specified for every channel (or you may define all channels having an equal range).

Note that if you take the range too large, that you get a very bad resolution of your signal (your signal may even dissolve and look like a zero-signal afterwards). If you take the range too small, then signals that exceed the range are cut off! So, if you specify the physical range 1(-1000/1000); and your signal on channel 1 get higher than 1000, then in the file the signal will be cut off to the value of 1000.

EDF does not store annotations. If you require other software to read any event markers (called annotations in EDF), then you need to use EDF+ ("EDF+ File Format provider"). However, in Polybench the EDF files may still have event markers. Those event markers are stored in a separate CSV file and can be edited afterwards.

Specification of EDF

The original article about this file format was published by Elsevier: Bob Kemp, Alpo Vaerri, Agostinho C. Rosa, Kim D. Nielsen and John Gade "A simple format for exchange of digitized polygraphic recordings" - Electroencephalography and Clinical Neurophysiology, 82 (1992): 391-393.

The specification can be found online (search for EDF specification).

Typical settings of the physical limits of the signals


Application min. value max. value
BIP -100 uV 100 uV
DIG 0 32
EAG -100 uV 100 uV
ECG -100 uV 100 uV
EEG 50 uV -50 uV
EGG -100 uV 100 uV
EMG -100 uV 100 uV
EOG -125 uV 125 uV
ExG -100 uV 100 uV
FLOW -180 l/min 180 l/min
FiO2 21 % 100 %
Hypnogram -0.9 6.9
Pulse 30 BPM 250 BPM
SaO2 75 % 100 %
Saw -64 64
SpO2 90 % 100 %

Defaults range settings are min. = -1000 and max. = 1000, if the signal is not as called above.