The hcp dmri data is used for both training and evaluation, and is initially
processed with the standard hcp pre-processing pipeline [1]}.
Each 4D dmri volume within each subject in the hcp dataset contains three shells of
b-values 1000, 2000, and 3000. Each shell is processed independently and contains 90 diffusion
directions, of which the lar dataset are subsampled from. Several further pre-processing
steps are necessary to transform the data into an appropriate format for efficient training within
the network. First dmri data are denoised. Noise is assumed to be independent across the
entire 4D volume, therefore noise within the context dataset cannot be used to predict the noise
within the target volumes. To mitigate this problem, a full-rank locally linear denoising
algorithm known as `patch2self' [2]} is applied to the data. Next,
dmri data are rescaled such that the majority of the distribution lies between \([0,1]\) .
This is done by dividing each voxel by a normalisation value given it's shell membership.
4000, 3000, and 2000 were found to work well as normalisation values for the shells
\(b = 1000\) , \(b = 2000\) , and \(b = 3000\)  respectively.
