pyprf_feature

A free & open source package for finding best-fitting population receptive field (PRF) models and feature weights for fMRI data.


Keywords
pRF
License
GPL-3.0
Install
pip install pyprf_feature==1.1.3

Documentation

DOI

pyprf_feature

A free & open source package for finding best-fitting population receptive field (PRF) models and feature weights for fMRI data.

If you are only interested in the spatial properties of the population receptive fields, not preferred features, check out the pyprf package.

Installation

For installation, follow these steps:

  1. (Optional) Create conda environment
conda create -n env_pyprf_feature python=2.7
source activate env_pyprf_feature
conda install pip
  1. Clone repository
git clone https://github.com/MSchnei/pyprf_feature.git
  1. Install numpy, e.g. by running:
pip install numpy
  1. Install pyprf_feature with pip
pip install /path/to/cloned/pyprf_feature

Dependencies

Python 2.7

Package Tested version
NumPy 1.11.1
SciPy 0.18.0
NiBabel 2.0.2

How to use

1. Present stimuli and record fMRI data

The PsychoPy scripts in the Stimulation folder can be used for presenting appropriate visual stimuli.

2. Prepare spatial and temporal information for experiment as arrays

  1. Run prepro_get_spat_info.py in the prepro folder to obtain an array with the spatial information of the experiment. This should result in a 3d numpy array with shape [pixel x pixel x nr of spatial aperture conditions] that represents images of the spatial apertures stacked on top of each other.

  2. Run prepro_get_temp_info.py in the prepro folder to obtain an array with the temporal information of the experiment. This should result in a 2d numpy array with shape [nr of volumes across all runs x 4]. The first column represents unique identifiers of spatial aperture conditions. The second column represents onset times and the third durations (both in s).The fourth column represents unique feature identifiers.

3. Prepare the input data

The input data should be motion-corrected, high-pass filtered and (optionally) distortion-corrected. If desired, spatial as well as temporal smoothing can be applied. The PrePro folder contains some auxiliary scripts to perform some of these functions.

4. Adjust the csv file

Adjust the information in the config_default.csv file in the Analysis folder, such that the provided information is correct. It is recommended to make a specific copy of the csv file for every subject.

5. Run pyprf_feature

Open a terminal and run

pyprf_feature -config path/to/custom_config.csv

References

This application is based on the following work:

License

The project is licensed under GNU General Public License Version 3.