Unwanted spatial blurring during resampling

In layer-fMRI, we spend so much time and effort to achieve high spatial resolutions and small voxel sizes during the acquisition. However, during the evaluation pipeline much of this spatial resolution can be lost during multiple resampling steps.

In this post, I want to discuss sources of signal blurring during spatial resampling steps and potential strategies to account for them.

Continue reading “Unwanted spatial blurring during resampling”

Quick analysis pipeline of getting layer fMRI profiles without anatomical reference data

This is a step-by-step description on how to obtain layer profiles from any high-resolution fMRI dataset. It is based on manual delineated ROIs and does not require the tricky analysis steps including distortion correction, registration to whole brain “anatomical” datasets, or automatic tissue type segmentation. Hence this is a very quick way for a first glance of the freshly acquired data.

This post shows how you can get from activation maps to layer-profiles in 10 min. In a quick and dirty way.

The important steps are: 1.) Upscaling, 2.) Manual delineation of GM, 3.) Calculation of cortical depths in ROI, 4.) Extracting functional data based on calculated cortical depths.

Continue reading “Quick analysis pipeline of getting layer fMRI profiles without anatomical reference data”

Bias field correction

This post shows the overview of doing bias field correction in in SPM. Doing this helps me a lot to improve the accuracy of FreeSurfer with MP2RAGE data. The members of Polimeni’s group also use it as an additional per-processing step before giving the data to Freesurfer.

The SPM bis field correction is part of the segmentation pipeline in SPM. I use the following bash script and the following matlab stript:

Bias_field_script_job.m and  start_bias_field.sh.

Continue reading “Bias field correction”

Using a standalone Nifti I/O in C++

In this blog post, I describe how you can build your own standalone C++ program to analyze nii data without any dependencies beyond C++.  Hence, it will work without the  libraries from other fMRI software packages, e.g. odin, afni. The only tricky part is to use a stand alone nii I/O to write your own C++ evaluation programs. Here, I do it by incorporating the few files that i borrowed from the afni source code.

Continue reading “Using a standalone Nifti I/O in C++”

Getting layers in EPI space


Big steps:

  1. Manual aligment of MP2RAGE with EPI (optional when MP2RAGE is acquired in same session)
  2. ANTS alignment of MP2RAGE and EPI. (part of anatomical_maser.sh, see github)
  3. Running Freesurfer on MP2RAGE data in EPI space. (part of anatomical_maser.sh, see github)
  4. Using SUMA to get fine samples tissue borders in EPI-voxel space (in oblique space) (part of anatomical_maser.sh, see github)
  5. Manual correction of Freesurfer GM-ribbon
  6. calculating layers from GM-ribbon in neuroDebian.

Continue reading “Getting layers in EPI space”

Motion and BOLD correction in SS-SI-VASO


This is a description on how to use SPM and/or AFNI for high-resolution SS-SI-VASO data evaluations.

Here it is explained what to do with the raw fMTR data from the scanner to obtain CBV and BOLD signal time courses .


Every other image has a different contrast.

Screenshot 2017-11-25 15.27.14.png

Continue reading “Motion and BOLD correction in SS-SI-VASO”