annotate dmri.py @ 12:1467f96db74a draft

Uploaded
author greg
date Fri, 03 Nov 2017 13:55:26 -0400
parents 173c5c07b2f9
children 2b914b6a0c83
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
1 #!/usr/bin/env python
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
2 import argparse
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
3 import os
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
4 import nibabel
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
5 import shutil
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
6
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
7 from dipy.data import fetch_sherbrooke_3shell
11
173c5c07b2f9 Uploaded
greg
parents: 10
diff changeset
8 from matplotlib import pyplot
0
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
9
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
10 parser = argparse.ArgumentParser()
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
11 parser.add_argument('--input', dest='input', help='Input dataset')
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
12 parser.add_argument('--output', dest='output', help='Output dataset')
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
13
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
14 args = parser.parse_args()
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
15
10
5014ba48e15e Uploaded
greg
parents: 9
diff changeset
16 input_dir = 'sherbrooke_3shell'
9
cf847e9f1a3a Uploaded
greg
parents: 8
diff changeset
17 # Get input data.
cf847e9f1a3a Uploaded
greg
parents: 8
diff changeset
18 fetch_sherbrooke_3shell()
cf847e9f1a3a Uploaded
greg
parents: 8
diff changeset
19 fdwi = os.path.join(input_dir, 'HARDI193.nii.gz')
cf847e9f1a3a Uploaded
greg
parents: 8
diff changeset
20 fbval = os.path.join(input_dir, 'HARDI193.bval')
cf847e9f1a3a Uploaded
greg
parents: 8
diff changeset
21 fbvec = os.path.join(input_dir, 'HARDI193.bvec')
0
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
22 # Load the dMRI datasets.
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
23 img = nibabel.load(fdwi)
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
24 data = img.get_data()
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
25 # data is a 4D array where the first 3 dimensions are the i, j,
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
26 # k voxel coordinates and the last dimension is the number of
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
27 # non-weighted (S0s) and diffusion-weighted volumes.
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
28 # Visualize the results using matplotlib.
94f6b3e28c36 Uploaded
greg
parents:
diff changeset
29 axial_middle = data.shape[2] // 2
11
173c5c07b2f9 Uploaded
greg
parents: 10
diff changeset
30 pyplot.figure('Showing the datasets')
173c5c07b2f9 Uploaded
greg
parents: 10
diff changeset
31 pyplot.subplot(1, 2, 1).set_axis_off()
173c5c07b2f9 Uploaded
greg
parents: 10
diff changeset
32 pyplot.imshow(data[:, :, axial_middle, 0].T, cmap='gray', origin='lower')
173c5c07b2f9 Uploaded
greg
parents: 10
diff changeset
33 pyplot.subplot(1, 2, 2).set_axis_off()
173c5c07b2f9 Uploaded
greg
parents: 10
diff changeset
34 pyplot.imshow(data[:, :, axial_middle, 10].T, cmap='gray', origin='lower')
12
1467f96db74a Uploaded
greg
parents: 11
diff changeset
35 pyplot.savefig('data.png', bbox_inches='tight')
1467f96db74a Uploaded
greg
parents: 11
diff changeset
36 shutil.move('data.png', args.output)