White Matter Tractography and Human Brain Connections Using GPUs Mois´ es Hern´ andez Fern´ andez Istvan Reguly, Mike Giles, Stephen Smith and Stamatios N. Sotiropoulos GPU Technology Conference 2016
dMRI & Tractography Low Path Probability High Path Probability Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 2 / 23
Outline 1. Introduction to diffusion MRI & Tractography 2. Parallelization of computational diffusion MRI using GPUs Voxelwise Fibre Orientation Estimation on GPUs Probabilistic tractography on GPUs 3. Conclusions Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 3 / 23
diffusion MRI (dMRI) Molecules are in constant motion. We want to quantify water diffusion within a tissue. Isotropic vs Anisotropic diffusion. Different tissues: Grey Matter vs White Matter. It is possible to estimate the principal diffusion orientations in each voxel of the brain. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 4 / 23
diffusion MRI (dMRI) Molecules are in constant motion. We want to quantify water diffusion within a tissue. Isotropic vs Anisotropic diffusion. Different tissues: Grey Matter vs White Matter. It is possible to estimate the principal diffusion orientations in each voxel of the brain. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 4 / 23
diffusion MRI (dMRI) Molecules are in constant motion. We want to quantify water diffusion within a tissue. Isotropic vs Anisotropic diffusion. Different tissues: Grey Matter vs White Matter. It is possible to estimate the principal diffusion orientations in each voxel of the brain. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 4 / 23
Tractography Post-mortem dissection of some white matter fibre bundles (Tracts). Tractography: The post-imaging reconstruction of fibre bundles anatomical connections in the brain. In-vivo virtual dissection. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 5 / 23
Tractography Post-mortem dissection of some white matter fibre bundles (Tracts). Tractography: The post-imaging reconstruction of fibre bundles anatomical connections in the brain. In-vivo virtual dissection. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 5 / 23
dMRI &Tractography Applications Neurosurgical Planning. Neurological and psychiatric disorders: e.g. Tracts Deterioration in Alzheimer. Brain systems wiring and network analysis. www.humanconnectome.org. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 6 / 23
dMRI &Tractography Applications Neurosurgical Planning. Neurological and psychiatric disorders: e.g. Tracts Deterioration in Alzheimer. Brain systems wiring and Jin, Yan, et al. 2015 network analysis. www.humanconnectome.org. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 6 / 23
dMRI &Tractography Applications Neurosurgical Planning. Neurological and psychiatric disorders: e.g. Tracts Deterioration in Alzheimer. Brain systems wiring and network analysis. www.humanconnectome.org. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 6 / 23
dMRI &Tractography These tractography approaches can require very high computational resources. Computation times can be significant: Hours to Days depending on data & application. We have designed and implemented a CUDA framework to massively accelerate these estimations 1. Voxelwise local modelling to estimate fibre orientations: Hundreds of thousands model fits to estimate orientations. Quite suitable for GPUs. 2. Global modelling: Integrates these orientations and estimate long-range connections across the brain volume. Not as suitable for GPUs. Mois´ es Hern´ andez Fern´ andez, FMRIB 1. dMRI & Tractography 7 / 23
Voxelwise Fibre Orientation Estimation We want to estimate the main fibre orientations at each voxel. Input: Many diffusion-weighted measurements in each voxel Output: Orientations of fibres in each voxel. Ball & sticks model. Bayesian inference framework: L P ( Parameters | Data ) = � S k = S 0 [(1 − f j ) exp( − b k d ) P ( Data | Params ) P ( Params ) j =1 L P ( Data ) � f j exp( − b k d ( g T k v j ) 2 )] + MCMC Sampling ( ∼ 5000 iters) j =1 Parameters initialized using Levenberg-Marquardt . Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 8 / 23
Voxelwise Fibre Orientation Estimation We want to estimate the main fibre orientations at each voxel. Input: Many diffusion-weighted measurements in each voxel Output: Orientations of fibres in each voxel. Ball & sticks model. Bayesian inference framework: P ( Parameters | Data ) = L P ( Data | Params ) P ( Params ) � S k = S 0 [(1 − f j ) exp( − b k d ) P ( Data ) j =1 L � f j exp( − b k d ( g T k v j ) 2 )] + MCMC Sampling ( ∼ 5000 iters) Parameters initialized using j =1 Levenberg-Marquardt . Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 8 / 23
Inferring fibre orientations on GPUs M VOXELS Thread Block 0 ............................... Q-2 Q-1 ................................... 0 1 2 N VOXELS ... Thread Block X ...................... Q-2 Q-1 ................................... 0 1 2 Each voxel is assigned to a Thread. Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 9 / 23
Inferring fibre orientations on GPUs M VOXELS Thread Block 0 ............................... Q-2 Q-1 ................................... 0 1 2 N VOXELS ... Thread Block MxN-1 ...................... Q-2 Q-1 ................................... 0 1 2 Each voxel is assigned to a Thread Block. Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 9 / 23
Inferring fibre orientations on GPUs ... g 0 g 1 g 2 g Q -1 ... g Q g Q +1 g Q +2 g 2 Q -1 g 2 Q g 2 Q +1 ... K Gradient Directions ... Thread Thread Thread Thread 0 (Leader) 1 2 Q -1 MCMC Levemberg Marquardt T iterations Active Threads S iterations Active Threads in a Block in a Block Param 1 0 1 2 3 4 ...... Q -2 Q -1 0 1 2 3 4 ...... Q -2 Q -1 1. Task 1 1. Task 1 ...... ...... 2. synchronise() 2. synchronise() ...... ...... 3. Task 2 3. Task 2 ...... ...... 4. synchronise() 4. synchronise() ...... ...... 5. Task 3 5. Task 3 . . ...... . . 6. synchronise() . . ...... 7. Task 4 ...... Param R 0 1 2 3 4 ...... Q -2 Q -1 8. synchronise() ...... 1. Task 1 9. Task 5 ...... 2. synchronise() ...... 3. Task 2 ...... TASKS: 4. synchronise() ...... 1. Calculate Gradient 5. Task 3 2. Calculate Hessian Matrix 3. Update Parameters TASKS: 4. Calculate Cost Function 1. Propose a new Parameter 5. Check Convergence 2. Calculate Predicted Signal - Likelihood 3. Calculate Posterior & Accept/Reject Parameter Thread working Idle thread Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 10 / 23
Fibre orientations: Speedup 1000000 1 Tesla C2050 GPU vs 1 Intel 100000 Xeon E5620 core. Time in seconds CPU Speedup: 112X 10000 102 Tesla M2090 CPU vs 102 1000 Intel Xeon X5650. GPU Speedup: 120X 100 1 2 3 Number of Fibres Directions number: 64 128 256 Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 11 / 23
Fibre orientations: Speedup 100000 1 Tesla C2050 GPU vs 1 Intel 10000 Time in seconds Xeon E5620 core. Multi CPU Speedup: 112X 1000 102 Tesla M2090 CPU vs 102 100 Intel Xeon X5650. Multi GPU Speedup: 120X 10 1 2 3 Number of Fibres Directions number: 64 128 256 Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 11 / 23
Fibre Orientations: Validation d S0 f1 5 0 0 3 0 0 3 0 0 2 5 0 2 5 0 4 0 0 2 0 0 2 0 0 3 0 0 Corpus 1 5 0 1 5 0 Callosum 2 0 0 1 0 0 1 0 0 1 0 0 5 0 5 0 Distribution of -3 x 1 0 0 .9 1 1.1 1 3 0 1 3 1 1 3 2 0 .4 5 0 .4 7 0 .4 9 the estimated 2 5 0 2 5 0 2 5 0 2 0 0 2 0 0 2 0 0 parameters after 1 5 0 1 5 0 1 5 0 Centrum repeating the Semiovale 1 0 0 1 0 0 1 0 0 experiment 1000 5 0 5 0 5 0 times with CPU -3 x 1 0 0 .9 1 1.1 1 2 8 1 2 9 1 3 0 0 .2 4 0 .2 6 0 .2 8 and GPU 3 0 0 2 5 0 2 0 0 2 5 0 2 0 0 1 6 0 2 0 0 1 5 0 1 2 0 Grey 1 5 0 Matter 1 0 0 8 0 1 0 0 5 0 4 0 5 0 -4 x 1 0 9 .4 9 .5 9 .6 2 9 0 2 9 2 2 9 4 0 .0 0 5 0 .0 1 0 .0 1 5 CPU GPU Mois´ es Hern´ andez Fern´ andez, FMRIB Voxelwise application 12 / 23
Probabilistic Tractography Compute a global anatomical brain High memory requirements connectivity map integrating the brain fibre orientations of continuous voxels. Propagate N streamlines from seeds, choosing orientations randomly. Probability of connection between 2 regions: P AB = M/N. M: number of streamlines that go through B. Mois´ es Hern´ andez Fern´ andez, FMRIB Probabilistic Tractography 13 / 23
Probabilistic Tractography Compute a global anatomical brain High memory requirements connectivity map integrating the brain fibre orientations of continuous voxels. Propagate N streamlines from seeds, choosing orientations randomly. Probability of connection between 2 regions: P AB = M/N. M: number of streamlines that go through B. Mois´ es Hern´ andez Fern´ andez, FMRIB Probabilistic Tractography 13 / 23
Recommend
More recommend