Tutorial 1 EDF Editor - nsrr/edf-editor-translator GitHub Wiki

Introduction

The PhysioMIMI EDF Editor is designed to facilitate the de-identification and normalization of signal data files saved in European Data Format (EDF). While Polysomnography (PSG) data is collected using a variety of software packages that each store data in a proprietary format, most vendors provide utilities to export raw signal data to EDF.

In order for data to be meaningfully shared between investigators and institutions two obstacles must be overcome: signals must be consistently and accurately annotated, and files must be purged of potentially identifying patient information. The PhysioMIMI EDF Editor allows investigators to edit the header portion of the EDF file to accomplish this annotation and de-identification, and the use of templates allows multiple files to be edited simultaneously rather than having to edit them one by one.

The EDF header is comprised of two sections, Identity Attributes and Signal Attributes. The identity attributes include the following:

 8 ascii : version of this data format (0)
80 ascii : local patient identification
80 ascii : local recording identification
 8 ascii : startdate of recording (dd.mm.yy)
 8 ascii : starttime of recording (hh.mm.ss)
 8 ascii : number of bytes in header record
44 ascii : reserved
 8 ascii : number of data records (-1 if unknown)
 8 ascii : duration of a data record, in seconds
 4 ascii : number of signals (ns) in data record

Patient identifying information is often contained in the identity attributes (file name, local patient identification, local recording information, start date of recording), and these values need to be removed or modified in order to de-identify the file. The PhysioMIMI EDF Editor allows for manual editing of these fields in individual files, or the application of a template to perform the same actions to modify multiple files at once.

After the file attributes the EDF header contains information on each of the channels included in the data file. For each signal the following attributes are included:

ns * 16 ascii : ns * label (e.g. EEG Fpz-Cz or Body temp)
ns * 80 ascii : ns * transducer type (e.g. AgAgCl electrode)
ns *  8 ascii : ns * physical dimension (e.g. uV or degreeC)
ns *  8 ascii : ns * physical minimum (e.g. -500 or 34)
ns *  8 ascii : ns * physical maximum (e.g. 500 or 40)
ns *  8 ascii : ns * digital minimum (e.g. -2048)
ns *  8 ascii : ns * digital maximum (e.g. 2047)
ns * 80 ascii : ns * prefiltering (e.g. HP:0.1Hz LP:75Hz)
ns *  8 ascii : ns * nr of samples in each data record
ns * 32 ascii : ns * reserved

Signal attributes are left incomplete by the export process of some vendor software, and while the signal data is still in the file, without information such as the physical minimum and maximum or the dimension the data is not useful to researchers. Further, each channel is identified by a label, a string value supplied at collection, that describes what signal is being collected on that channel. There is no standardization of these labels within or across labs, so in order to be meaningfully interpreted some normalized identification of the collected signals is necessary.

Features

The key features of the PhysioMIMI EDF Editor are:

  • View multiple EDF identity and signal headers
  • Edit EDF headers
  • Manual Edit
  • Template Application
  • Access to other EDF Application Tools
  • Verifying EDF file validity

System Requirements

  • All operating systems supported.
  • For source code & compiled version: Java Runtime Environment (JRE) 1.6

Download Instructions

Download Source Code at source git
Download Executable JAR at release git
Source Code Dependencies
  1. Kinds of Apache Commons: (http://commons.apache.org/proper/commons-io/)
  • commons-cli-1.2.jar
  • commons-io-2.4.jar
  1. Kinds of jgoodies: (http://www.jgoodies.com/downloads/libraries/)
  • jgoodies-animation-1.4.3.jar
  • jgoodies-binding-2.10.0.jar
  • jgoodies-common-1.7.0.jar
  • jgoodies-forms-1.7.2.jar
  • jgoodies-looks-2.5.3.jar:
  • jgoodies-validation-2.5.0.jar
  1. javahelp-2.0.05.jar: (https://javahelp.java.net/)
  2. xercesImpl.jar: Download Xerces2 Java from http://xerces.apache.org/mirrors.cgi#binary
  3. miglayout-4.0.jar: Download from http://www.java2s.com/Code/Jar/m/miglayout.htm

Getting Started

The workflow for the EDFEditor is very flexible. In order to use the EDFEditor to its fullest potential, a new user may follow these steps:

EDF Editor Workspace Overview

  1. Menubar
  2. Toolbar
  3. Task Navigator (Opened files)
  4. Work area
  5. Source File and Task Summary information
  6. Log and Incompliance area
  7. Status Bar

Contact Us

If you have any problem about the tool or would like to contribute to the tool, please contact us by email: [email protected].