{ "metadata": { "name": "", "signature": "sha256:4b6d2054d49910b09e67d31973142bb4fc916f9dc2dcc2eac5f460e6701bbf96" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Setup" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Compatibility with Python 3\n", "from __future__ import print_function # print('me') instead of print 'me'\n", "from __future__ import division # 1/2 == 0.5, not 0" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "# Show figures inside the notebook\n", "%matplotlib inline" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "import numpy as np # the Python array package\n", "import matplotlib.pyplot as plt # the Python plotting package" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "There is a four-dimensional (X, Y, Z, t) BOLD image in the same directory as this notebook, called `ds107_sub012_t1r2.nii`. Import the `nibabel` module, and load the image with nibabel to create an image object. Turn off memory mapping with the load command." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Load image object using nibabel, turning off memory mapping.\n", "fname = 'ds107_sub012_t1r2.nii'\n", "import nibabel as nib\n", "img = nib.load(fname, mmap=False)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the usual way get the array data from this image and show the image shape." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Get image array data from image object\n", "data = img.get_data()" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Select the 10th volume (time index 9) from 4D image data array, by slicing over the last dimension. What shape is it?" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Get the 10th volume and show shape\n", "tenth_vol = data[..., 9]\n", "tenth_vol.shape" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 6, "text": [ "(64, 64, 35)" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Get the standard deviation across all voxels in this 3D volume:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Standard deviation across all voxels for 10th volume\n", "np.std(tenth_vol)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "387.19281139947577" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Loop over all volumes in the 4D image and store the standard deviation for each volume in a list. Plot these to see if there are any volumes with particularly unusual standard deviation." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Get standard deviation for each volume; then plot the values\n", "stds = []\n", "for i in range(data.shape[-1]):\n", " vol = data[..., i]\n", " stds.append(np.std(vol))\n", "plt.plot(stds)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 8, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "markdown", "metadata": {}, "source": [ "SPM uses a measure called \"global signal\" to give a very rough estimate of the average signal value within the brain. The idea is that you need a threshold to select voxels with signal high enough to be inside the brain, and not in the air around the brain, which has very low (near 0) signal.\n", "\n", "The algorithm goes like this.\n", "\n", "* Get a single 3D volume V;\n", "* Calculate the mean signal of the voxels in V; call that M;\n", "* Make a threshold T where T = M / 8.\n", "* Select all voxel values in V that are greater than T; call these values W;\n", "* Return the mean of all values in W.\n", "\n", "See [SPM global image signal](http://imaging.mrc-cbu.cam.ac.uk/imaging/PrinciplesStatistics#Global_image_signal).\n", "\n", "In the SPM code, the algorithm is implemented in a MATLAB function called `spm_global`. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I used the MATLAB script `get_global_signals.m` (in this directory) to run the `spm_global` MATLAB function on the volumes of `ds107_sub012_t1r2.nii`. The script saved the SPM global values to a text file `global_signals.txt` in this directory. The first four lines of the `global_signals.txt` file look like this:\n", "\n", "```\n", "376.53\n", "375.75\n", "375.26\n", "376.01\n", "```\n", "\n", "Read these global values calculated by SPM into a list, and plot the values." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Read global signal values calculated by SPM, and plot\n", "global_signals = np.loadtxt('global_signals.txt')\n", "plt.plot(global_signals)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 9, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nYII=\n", "text": [ "" ] } ], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now implement the algorithm above to recalculate the SPM global signal for the first volume (volume index zero). Hint: you will likely need to index using a boolean (mask) array. Remember, the steps are:\n", "\n", "* Get a single 3D volume V;\n", "* Calculate the mean signal of the voxels in V; call that M;\n", "* Make a threshold T where T = M / 8.\n", "* Select all voxel values in V that are greater than T; call these values W;\n", "* Get the mean of all values in W.\n", "\n", "You should get the same value as SPM - the first value you read from `global_signals.txt`." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Apply algorithm for SPM global calculation to first volume\n", "vol = data[..., 0]\n", "T = np.mean(vol)/ 8\n", "msk = vol > T\n", "W = vol[msk]\n", "np.mean(W)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 10, "text": [ "376.53382753187225" ] } ], "prompt_number": 10 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Make a function called `spm_global` that accepts a 3D array as input, and returns the global signal using the SPM algorithm. Call that function on the first volume to show that it is working (as in `print(spm_global(data[:, :, :, 0]))`)." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Make a `spm_global` function that accepts a 3D array as input,\n", "# and returns the global mean for the volume according to the SPM algorithm\n", "def spm_global(vol):\n", " T = np.mean(vol) / 8\n", " return np.mean(vol[vol > T])\n", "\n", "print(spm_global(data[:, :, :, 0]))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "376.533827532\n" ] } ], "prompt_number": 11 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Make a function called `get_spm_globals` that accepts an image filename as an argument. The function will load the image, get the array data for the image, use your new `spm_global` function calculate the global value for each volume, and return these values as a list. Finally, show this is working by plotting the values for the `ds107_sub012_t1r2.nii` image with something like: \n", "\n", "```\n", "all_globals = get_spm_globals('ds107_sub012_t1r2.nii')\n", "plt.plot(all_globals)\n", "```" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Write a function `get_spm_globals` that returns the global values \n", "# for each volume\n", "def get_spm_globals(fname):\n", " img = nib.load(fname)\n", " data = img.get_data()\n", " spm_vals = []\n", " for i in range(data.shape[-1]):\n", " vol = data[..., i]\n", " spm_vals.append(spm_global(vol))\n", " return spm_vals\n", "\n", "all_globals = get_spm_globals('ds107_sub012_t1r2.nii')\n", "plt.plot(all_globals)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 12, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 12 } ], "metadata": {} } ] }