Given a set of voxel location (sample file provided), experimental design matrix, and a desired signal-to-noise ratio, this program generates a set of synthesized voxel activations.
Each experimental covariate (which can be activated to varying degrees during each trial, as specified in the design matrix) is assigned a single radial basis function. The basis function's center is chosen uniformly within the confines of the specified brain, and the width is also chosen uniformly. (Note: you can associate multiple radial basis functions with each covariate by giving each covariate multiple columns in the design matrix.)
The synthesized brain image for each trial is a weighted combination of the basis functions for the sources active during that trial, plus zero-mean Gaussian noise. (The standard deviation of the Gaussian noise is controlled via the SNR parameter.)
For added realism, an optional flag allows the user to specify whether the synthetic data incorporate a synthetic hemodynamic response function.
The synthetic data can be saved in NIFTI format (this relies on code, included in the download, from http://www.mathworks.com/matlabcentral/fileexchange/8797-tools-for-nifti-and-analyze-image).
Note: this code includes the "join" function available here: http://www.mathworks.com/matlabcentral/fileexchange/4872-join
Jeremy Manning (2022). Generate synthetic fMRI data (https://www.mathworks.com/matlabcentral/fileexchange/36125-generate-synthetic-fmri-data), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!