This project synchronizes EEG, EKG, GSR, fNIRS physio data and task data together under a unified time series.
This project requires Python 3.11.
Ensure that Conda is already installed, then run the following command to install dependencies into a new conda environment
conda conda create -n tomcat-synchronize python=3.11
conda activate tomcat-synchronize
pip install -r requirements.txt
You can install the packages using Pip3 in a base environment or an environment created for this project, then run the follow command to install dependencies
pip3 install -r requirements.txt
If you want to set up environment and install dependencies manually, then you need the following packages
pandas
numpy
scipy
scikit-learn
matplotlib
mne
tqdm
Ensure that you downloaded the ToMCAT chunked data here, ToMCAT task data here, and ToMCAT experiment information here
Set the following variables in the config.py file:
task_data_pathis the full complete path to the ToMCAT task data you downloaded (make sure to decompress the data, e.g., unzip).physio_data_pathis the full complete path to the ToMCAT chunked data you downloaded (make sure to decompress the data, e.g., unzip).experiment_info_pathis the full complete path to the ToMCAT experiment information data you downloaded (make sure to decompress the data, e.g., unzip).output_diris the full complete path to the output directory where the synchronized data will be placed.
After setting up the config.py file, you can launch the program (make sure that you are in the python environment with required dependencies installed):
python3 process_nirs.py
python3 process_nirs.py
python3 process_nirs_eeg.py
python3 process_nirs_eeg_120 Hz.py
The program will output synchronized data to the path specified in output_dir in config.py.