General Data Format for Biomedical Signals

Last updated

The General Data Format for Biomedical Signals is a scientific and medical data file format. The aim of GDF is to combine and integrate the best features of all biosignal file formats into a single file format. [1]

A file format is a standard way that information is encoded for storage in a computer file. It specifies how bits are used to encode information in a digital storage medium. File formats may be either proprietary or free and may be either unpublished or open.

A biosignal is any signal in living beings that can be continually measured and monitored. The term biosignal is often used to refer to bioelectrical signals, but it may refer to both electrical and non-electrical signals. The usual understanding is to refer only to time-varying signals, although spatial parameter variations are sometimes subsumed as well.

Contents

The original GDF specification was introduced in 2005 as a new data format to overcome some of the limitations of the European Data Format for Biosignals (EDF). GDF was also designed to unify a number of file formats which had been designed for very specific applications (for example, in ECG research and EEG analysis). [2] The original specification included a binary header, and used an event table. [3] An updated specification (GDF v2) was released in 2011 and added fields for additional subject-specific information (gender, age, etc.) and utilized several standard codes for storing physical units and other properties. [2] In 2015, the Austrian Standardization Institute made GDF an official Austrian Standard https://shop.austrian-standards.at/action/en/public/details/553360/OENORM_K_2204_2015_11_15, and the revision number has been updated to v3.

Electrocardiography method to record the electrical activity of then heart through passive electrodes placed over the skin

Electrocardiography is the process of producing an electrocardiogram, a recording - a graph of voltage versus time - of the electrical activity of the heart using electrodes placed on the skin. These electrodes detect the small electrical changes that are a consequence of cardiac muscle depolarization followed by repolarization during each cardiac cycle (heartbeat). Changes in the normal ECG pattern occur in numerous cardiac abnormalities, including cardiac rhythm disturbances, inadequate coronary artery blood flow, and electrolyte disturbances.

Electroencephalography electrophysiological monitoring method

Electroencephalography (EEG) is an electrophysiological monitoring method to record electrical activity of the brain. It is typically noninvasive, with the electrodes placed along the scalp, although invasive electrodes are sometimes used, as in electrocorticography. EEG measures voltage fluctuations resulting from ionic current within the neurons of the brain. Clinically, EEG refers to the recording of the brain's spontaneous electrical activity over a period of time, as recorded from multiple electrodes placed on the scalp. Diagnostic applications generally focus either on event-related potentials or on the spectral content of EEG. The former investigates potential fluctuations time locked to an event, such as 'stimulus onset' or 'button press'. The latter analyses the type of neural oscillations that can be observed in EEG signals in the frequency domain.

The GDF format is often used in brain–computer interface research. [4] [5] [6] However, since GDF provides a superset of features from many different file formats, it could be also used for many other domains.


A brain–computer interface (BCI), sometimes called a neural-control interface (NCI), mind-machine interface (MMI), direct neural interface (DNI), or brain–machine interface (BMI), is a direct communication pathway between an enhanced or wired brain and an external device. BCI differs from neuromodulation in that it allows for bidirectional information flow. BCIs are often directed at researching, mapping, assisting, augmenting, or repairing human cognitive or sensory-motor functions.

The free and open source software BioSig library provides implementations for reading and writing of GDF in GNU Octave/MATLAB and C/C++. [7] A lightweight C++ library called libGDF is also available and implements version 2 of the GDF format. [8]

GNU Octave numerical computation software

GNU Octave is software featuring a high-level programming language, primarily intended for numerical computations. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with MATLAB. It may also be used as a batch-oriented language. Since it is part of the GNU Project, it is free software under the terms of the GNU General Public License.

MATLAB multi-paradigm numerical computing environment

MATLAB is a multi-paradigm numerical computing environment and proprietary programming language developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, C#, Java, Fortran and Python.

C (programming language) general-purpose programming language

C is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. By design, C provides constructs that map efficiently to typical machine instructions, and it has therefore found lasting use in applications that were previously coded in assembly language. Such applications include operating systems, as well as various application software for computers ranging from supercomputers to embedded systems.

See also

Related Research Articles

Executable and Linkable Format standard file format for executables, object code, shared libraries, and core dumps

In computing, the Executable and Linkable Format, is a common standard file format for executable files, object code, shared libraries, and core dumps. First published in the specification for the application binary interface (ABI) of the Unix operating system version named System V Release 4 (SVR4), and later in the Tool Interface Standard, it was quickly accepted among different vendors of Unix systems. In 1999, it was chosen as the standard binary file format for Unix and Unix-like systems on x86 processors by the 86open project.

Hierarchical Data Format file format

Hierarchical Data Format (HDF) is a set of file formats designed to store and organize large amounts of data. Originally developed at the National Center for Supercomputing Applications, it is supported by The HDF Group, a non-profit corporation whose mission is to ensure continued development of HDF5 technologies and the continued accessibility of data stored in HDF.

USB mass storage device class

The USB mass storage device class is a set of computing communications protocols defined by the USB Implementers Forum that makes a USB device accessible to a host computing device and enables file transfers between the host and the USB device. To a host, the USB device acts as an external hard drive; the protocol set interfaces with a number of storage devices.

Common Image Generator Interface

The Common Image Generator Interface (CIGI), is an on-the-wire data protocol that allows communication between an Image Generator and its host simulation. The interface is designed to promote a standard way for a host device to communicate with an image generator (IG) within the industry.

Mass spectrometry is a scientific technique for measuring the mass-to-charge ratio of ions. It is often coupled to chromatographic techniques such as gas- or liquid chromatography and has found widespread adoption in the fields of analytical chemistry and biochemistry where it can be used to identify and characterize small molecules and proteins (proteomics). The large volume of data produced in a typical mass spectrometry experiment requires that computers be used for data storage and processing. Over the years, different manufacturers of mass spectrometers have developed various proprietary data formats for handling such data which makes it difficult for academic scientists to directly manipulate their data. To address this limitation, several open, XML-based data formats have recently been developed by the Trans-Proteomic Pipeline at the Institute for Systems Biology to facilitate data manipulation and innovation in the public sector. These data formats are described here.

Matplotlib math plotting library for Python

Matplotlib is a plotting library for the Python programming language and its numerical mathematics extension NumPy. It provides an object-oriented API for embedding plots into applications using general-purpose GUI toolkits like Tkinter, wxPython, Qt, or GTK+. There is also a procedural "pylab" interface based on a state machine, designed to closely resemble that of MATLAB, though its use is discouraged. SciPy makes use of Matplotlib.

The following tables provide a comparison of numerical-analysis software.

EEGLAB is a MATLAB toolbox distributed under the free GNU GPL license for processing data from electroencephalography (EEG), magnetoencephalography (MEG), and other electrophysiological signals. Along with all the basic processing tools, EEGLAB implements independent component analysis (ICA), time/frequency analysis, artifact rejection, and several modes of data visualization. EEGLAB allows users to import their electrophysiological data in about 20 binary file formats, preprocess the data, visualize activity in single trials, and perform ICA. Artifactual ICA components may be subtracted from the data. Alternatively, ICA components representing brain activity may be further processed and analyzed. EEGLAB also allows users to group data from several subjects, and to cluster their independent components.

The TOMLAB Optimization Environment is a modeling platform for solving applied optimization problems in MATLAB.

CGNS stands for CFD General Notation System. It is a general, portable, and extensible standard for the storage and retrieval of CFD analysis data. It consists of a collection of conventions, and free and open software implementing those conventions. It is self-descriptive, cross-platform also termed platform or machine independent, documented, and administered by an international steering committee. It is also an American Institute of Aeronautics and Astronautics (AIAA) recommended practice. The CGNS project originated in 1994 as a joint effort between Boeing and NASA, and has since grown to include many other contributing organizations worldwide. In 1999, control of CGNS was completely transferred to a public forum known as the CGNS Steering Committee. This Committee is made up of international representatives from government and private industry.

Ingex is an open-source (GPL) suite of software for the digital capture of audio and video data, without the need for traditional audio or video tape or cassettes. Serial digital interface (SDI) capture is supported, as well as real-time transcoding. Portions of the software suite also act as a network file server for media files, as well as archiving to LTO-3 data tape. Audio and video media files can also be stored on USB hard drives or Network Attached Storage. The software is heavily used by the BBC, and was developed by the BBC Research Laboratory.

A MEX file is a type of computer file that provides an interface between MATLAB or Octave and functions written in C, C++ or Fortran. It stands for "MATLAB executable".

This is a list of free and open-source software for geophysical data processing and interpretation. The list is split into broad categories, depending on the intended use of the software and its scope of functions.

libSBML

LibSBML is an open-source software library that provides an application programming interface (API) for the SBML format. The libSBML library can be embedded in a software application or used in a web servlet as part of the application or servlet's implementation of support for reading, writing, and manipulating SBML documents and data streams. The core of libSBML is written in ISO standard C++; the library provides API for many programming languages via interfaces generated with the help of SWIG.

BCI2000

BCI2000 is a software suite for brain-computer interface research. It is commonly used for data acquisition, stimulus presentation, and brain monitoring applications. BCI2000 supports a variety of data acquisition systems, brain signals, and study/feedback paradigms. During operation, BCI2000 stores data in a common format, along with all relevant event markers and information about system configuration. BCI2000 also includes several tools for data import/conversion and export facilities into ASCII.

FEATool Multiphysics

FEATool Multiphysics is a physics, finite element analysis (FEA), and PDE simulation toolbox for MATLAB and the cloud with rollApp. FEATool Multiphysics features the ability to model fully coupled heat transfer, fluid dynamics, chemical engineering, structural mechanics, electromagnetics, as well as user-defined and custom PDE problems in 1D, 2D (axisymmetry), or 3D, all within a simple graphical user interface (GUI) or as convenient MATLAB m-code script files. Having specifically been designed to have a low learning curve and to be able to be used without requiring reading documentation, FEATool has been employed and used in academic research, teaching, and industrial engineering simulation contexts.

References

  1. "Scientific data formats - Filters for Octave and Matlab" . Retrieved 3 August 2015.
  2. 1 2 Schlögl, Alois (2006). "GDF - A general dataformat for biosignals". arXiv: cs/0608052v10 Lock-green.svg.
  3. "GDF - A General Dataformat for Biosignals" (PDF). Retrieved 3 August 2015.
  4. "Standards in Brain-Computer Interfaces" . Retrieved 3 August 2015.[ permanent dead link ]
  5. Allison, Brendan Z.; et al., eds. (2012). Towards practical brain-computer interfaces bridging the gap from research to real-world applications. Berlin: Springer. p. 323. ISBN   9783642297465.
  6. Mellinger, Gerwin Schalk, Jürgen (2010). A practical guide to brain-computer interfacing with BCI2000 general-purpose software for brain-computer interface research, data acquisition, stimulus presentation, and brain monitoring (Online-Ausg. ed.). London: Springer. p. 91. ISBN   9781849960922.
  7. "BioSig". sourceforge.net. Retrieved 3 August 2015.
  8. "libGDF download - SourceForge.net". sourceforge.net. Retrieved 3 August 2015.