Repository navigation
Home
This tool is designed to allow modular processing of fNIRS data. If this is your first time using this software, try running processFNIRS2() and click configure methods to build your first methods file. You will need to load the default functions first, but then you may add functions to your library and build your first processing methods. Test out a few methods using the visualization tool to see how they work!
Note: settings changed in the GUI do not affect your data and are for visualization only.
Once you have defined a few functions you can use the normal processFNIRS2 pipeline.
This is generally done in three stages:
1) Import Data
Import your data using processFNIRS.Import.ImportNIR (or other function)
Load your data using the function as a string or select the file yourself
ex: mydata = processFNIRS.Import.ImportNIR('myNIRSfile.nir')
2) Set Methods
Select a method for both Raw and Oxy domain processing
You can visualize the effects of your methods by using processFNIRS(mydata)
and configure your methods by using processFNIRS.Methods.Oxy/Raw.ConfigureMethods
Selecting methods is easy, you can select a method using either the method name,
Or selecting the method interactively
Please note that both the Raw method is applied first and then the Oxy method
ex: processFNIRS2.Methods.Raw.SetMethod('MyMethodName')
ex: processFNIRS2.Methods.Oxy.SetMethod('MyMethodName')
3) Process Data
Run your processing method on your data using processFNIRS2(mydata)
You can optionally process only the oxy or raw domain signals using processFNIRS2.Process.ProcessRaw/ProcessOxy
However the default function will run both Raw and Oxy pipelines
exL myprocesseddata=processFNIRS2(mydata))
processfNIRS2 is laid out in the following manner
| Function | Description |
|---|---|
| processFNIRS2 | Main function (runs GUI if no assignment) |
| *Data | functions to manipulate individual fNIRS segments |
| -ApplyChannelMask | Sets data in rejected channels to NaN |
| -GetMarkers | Function to find the timepoints of markers in a regex style |
| -Resample | Function to resample or average fNIRS data (ex 30s block average or convert to 1hz) |
| -SetT0 | Function to shift the fNIRS time to match start of experiment t=0 |
| -Split | Function to split fNIRS segment based on different input times |
| *GUI | Shortcut for accessing the GUI |
| *Help | Access in-program help information |
| *Import | Functions to import fNIRS files |
| -ImportHitachiMES | Import Hitachi Probes |
| -ImportNIRx | Import NIRx files |
| -ImportNIR | Import fNIR Devices/Biopac files |
| -ImportSampleData | Import some sample data included here |
| *Methods | Functions to change and modify processing methods |
| -Oxy | Oxy conversion pipeline methods |
| -ConfigureMethods | GUI to edit functions in Oxy pipeline |
| -ImportMethods | Import pre-existing methods from a file |
| -List | List currently loaded methods |
| -SetMethod | Select a method based on name or method number |
| -Raw | Raw conversion pipeline methods |
| ConfigureMethods | GUI to edit functions in Oxy pipeline |
| ImportMethods | Import pre-existing methods from a file |
| List | List currently loaded methods |
| SetMethod | Select a method based on name or method number |
| -Process | Process fNIR segment data |
| -ProcessOxy | Run the Oxy Pipeline only (raw must be run first) |
| -ProcessRaw | Run the Raw Pipeline only |
| -Settings | Change settings related to processing |
| Baseline | Change baseline time settings |
| DPF | Change mode of Differential Path Length (DPF) |
| SetFixedDFP | Change to fixed distance factor |
| SetDPFmode | Set to 'none','fixed', or 'calc' |
| SelectDevice | Forcibly reload device settings for FNIRS probe |
Please be sure to add the matlab path the main folder (processFNIRS2) and the folders named
base_functions, GUI, and functions
Folders with + signs in front of the name do not need to be included
base_functions and GUI contain functions related to the operation of processFNIRS2
functions contains the functions used in the processFNIRS2 method pipelines, but you may use any matlab functions in a pipeline if you add the function to your method
Loaded functions and methods are stored in the matlab preference directory
You may find these settings using the matlab command prefdir
If you are having trouble loading processFNIRS2, delete these files and try again
processFNIRS2 is free for academic and non-commercial use, but some included code may have other licenses
(c)2019
Contact Adrian Curtin for more information at abc48@drexel.edu
processFNIRS2
Getting Started
Core Workflow
Group Analysis
Visualization & Export
Reference