HOMER3 file formats - BUNPC/Homer3 GitHub Wiki

There are five format files that Homer3 uses:

  • .sd files : Probe source-detector geometry
  • .nirs files : fNIRS experimental data
  • .snirf files : fNIRS experimental data
  • .cfg files : Data processing stream
  • groupResults.mat : Processed data files

SD format file

.sd file format describes the 2D source-detector geometry and contains the structured variable SD with the following fields:




MeasList describes a List of source/detector/wavelength measurement channels. It’s an array with dimensions, (number of channels) by 4. The meaning of the 4 columns are as follows:
Column 1 is the index of the source from the SD.SrcPos list.
Column 2 is the index of the detector from the SD.DetPos list.
Column 3 is unused right now and contains all ones.
Column 4 is the index of the wavelength from SD.Lambda.

The SD structure is also incorporated in the .nirs file format, and you can create your own .sd files by using AtlasViewer.

NIRS format file

This file format is becoming obsolete with Homer3 because of the adoption of the SNIRF format to promote a common fNIRS file format to facilitate data sharing. The NIRS format file was the most basic unit of a HOMER2 data set and contains the result of data acquisition.
The NIRS format contains the following variables:




  • t - This variable is the data time points array. It contains the data acquisition times. The dimensions of this array are (number of time points) by 1.
  • d - This variable is the raw intensity time course. It is a 2D array where each element in row i, column j contains the raw intensity at time point i, in channel j. The dimensions of this array are (number of time points) by (number of measurement channels).
  • s - This variable specifies the time points and condition of stimulus onsets. Conditions are a way to separate stimuli into different groups, where each group is averaged independently of stimuli belonging to other conditions. Initially the values in s are binary; 1 at time point i designating stimulus onset, 0 designating no stimulus at time point i. The dimensions of s are (number of time points) by (number of conditions).
  • aux - This variable is the auxiliary signals array. Its dimensions are (number of time points) by (number of auxiliary signals).

In addition to the above parameters, additional parameters can appear in the .nirs file as a result of processing the data set in HOMER3.

SNIRF format file

.snirf format file is a new format in Homer3. It is a universal file format for storing and sharing NIRS data independently of any specific application-specific file format such as Matlab. Please see this page https://github.com/fNIRS/snirf for more details.

Homer3 provides the SnirfClass object which reads and writes .snirf files. In addition, Homer3 provides a NirsClass object which is able to read/write the HOMER2-style .nirs files and convert group folders consisting of .nirs files to the equivalent .snirf files.

CFG format file

.cfg file describes the steps of data analysis, a sequence of Homer3 functions. In options, you can hover over each function to get help on the function and the parameters.
You can also create your own .cfg files by using ProcStreamEditGUI.

groupResults.mat file

Homer3 does not change the original files that it uses for its analysis and clearly separates data into acquired (from original data files) and derived (any processed data). Data processed in Homer3 is saved automatically to disk and all processing results are stored in a separate groupResults.mat file. Please go to the Output Files Section for more details.

⚠️ **GitHub.com Fallback** ⚠️