Processing of volumes prior to dwipreproc

Hi,

Thank you very much for the tutorial. I had a single doubt regarding the AP and PA volumes for dwipreproc. Since the AP images extracted from the DWIs have already undergone a series of preprocessing steps(dwidenoise and mrdegibbs namely), should the PA images go through the same steps as well before they are concatenated for use with dwipreproc?

Regards,
Archith

(Moved to new topic since question is not specific to the title of the thread in which it was posted)

If they are being used together, then ideally yes. Gibbs ringing removal is easy; the hard part is denoising, which you cannot perform on one or a small number of b=0 volumes in isolation:

  • If you are explicitly yourself combining copies of one or more of the AP b=0 volumes from the DWIs with one or more PA b=0 volumes, then you can omit the denoising step from processing of just that set of volumes.

  • Personally I expect the spatial distribution of noise level to be more-or-less equivalent across image volumes regardless of phase encoding direction, and therefore concatenate all volumes in order to perform denoising and then separate the volumes out into ā€œDWIs to be correctedā€ and ā€œspin-echo EPIs to be used to estimate the inhomogeneity fieldā€. However if you have a scanner that may grossly adjust image intensities in between protocols, this may be problematic.

Realistically though, Iā€™m not sure exactly what type of ā€˜biasā€™ may be introduced by having a greater level of noise in volumes with one phase encoding direction than those with the opposing directionā€¦

Thanks for the clarification. I would like to carry on with the two approaches

Explicitly combine AP and PA b0s after mrdegibbs on each ; Pass them to the dwipreproc step with input as the mrdegibbs and dwidenoised data and the undenoised AP-PA concatenated data as the -rpe_pair -se_epi option

After checking the mean intensities of AP and PA b0 volumes.

Would any differences between 1 and 2 hint something about this? What would you suggest?

Thanks and Regards,
Archith

ā€¦ as the mrdegibbs and dwidenoised data ā€¦

Just confirming that dwidenoise cannot be applied after mrdegibbs (or basically any other process).

After checking the mean intensities of AP and PA b0 volumes.

I believe that topup estimates a global scaling factor between image volumes. Donā€™t quote me on this though.

Would any differences between 1 and 2 hint something about this?

No, the difference between 1 and 2 would be due to estimating the inhomogeneity field from denoised or not-denoised data. What I was referring to specifically in that comment was what might happen if the AP volume(s) is/are denoised but the AP volume(s) is/are not. It would certainly have an effect, Iā€™m just not sure if there would be a ā€˜biasā€™ strictly.

Thank you very much for the clarification.Iā€™m sorry I messed up with the order of denoise and mrdegibbs earlierā€¦ meant the other way round.

Regards,
Archith

Iā€™m following the steps in the FSL page, and manually merged one PA and one AP b0 image (AP_PA_b0.nii.gz). So I have two b0 volumes in the AP_PA_b0 file.
Could you please clarify what you meant with

omit the denoising step from processing of just that set of volumes

What set of volumes are you referring to here?

Currently Iā€™m running dwdenoise and mrdegibbs on the dwi dataset, but not on the opposite PE-direction image. Afterwards I merge the two b0 images (AP_PA_b0.nii.gz) and use that in the topup command. Are you suggesting I should skip dwidenoise entirely, or just not apply it to the AP_PA_b0 image?

omit the denoising step from processing of just that set of volumes

What set of volumes are you referring to here?

This is in reference to whatever set of images are to be provided to FSL topup via the -se_epi option. But the wording is maybe clumsy; thatā€™s me trying to avoid writing an essay in every thread :-/

Letā€™s suppose the situation is (as it sounds applies to your case), that you have:

  1. Phase encoding AP: 1 b=0, 60 b=3000 volumes;
  2. Phase encoding PA: 1 b=0.

, and the tools you have at your disposal are:

  • dwidenoise;
  • mrdegibbs;
  • dwifslpreproc;
  • All other MRtrix3 utilities.

The question is: What data do you provide to each command, and in what order?

  1. If you run all the phase encoding AP data through dwidenoise and mrdegibbs, then extract the solitary b=0 volume and concatenate it with the PA b=0 volume, then you have a situation where topup is estimating an inhomogeneity field where one volume has a different noise level than the other, and one has had Gibbs ringing removed whereas the other has not. This may cause issues, it may not.
    (You could also run the PA b=0 image through mrdegibbs here)

  2. If you concatenate the PA b=0 image with the AP volumes, then run the whole lot through dwidenoise | mrdebiggs, you have the advantage that the same processing has been applied to both volumes that topup will be utilising; the disadvantage is that noise level estimation may not be quite right for the PA volume if spatial distortions are large, and AFAIK nobody has pursued quantifying just how deleterious this may be.

  3. Extract the AP b=0 image as the first step, concatenate it with the PA b=0 image, and call it X; you then feed all AP data through dwidenoise | mrdegibbs, that forms the input image to dwifslpreproc; you could then feed X through mrdegibbs if you wished, but you canā€™t run dwidenoise on it as there are too few volumes, thatā€™s then provided via the -se_epi option to dwifslpreproc. The input volumes to topup have now had identical processing applied to them, so thereā€™s no known bias to speak of; but the level of noise in those images is higher than it may otherwise be.

I would say there is not currently a consensus on which of these options is preferable. Personally Iā€™m moving away from acquisitions like this so itā€™s less of a concernā€¦ But for retrospective data the question has been raised a few times and I donā€™t think any evidence was presented for one approach over the others.

Rob

3 Likes

Dear Dr.Smith,

I would like to know what other acquisition strategies are available that can well mitigate susceptibility distortions. Kindly request to elaborate.

Regards,
Archith

I would like to know what other acquisition strategies are available that can well mitigate susceptibility distortions. Kindly request to elaborate.

Rather than acquiring all DWIs with one phase encoding direction and then one or a small number of b=0 images with the reversed phase encoding direction, what Iā€™ve been doing is splitting the gradient table in half, acquiring the first half with one phase encoding direction and the other half with the reversed phase encoding direction. You can extract the b=0 images from each series for susceptibility field estimation (dwifslpreproc can do this automatically). It means that in regions of the brain where the susceptibility distortions lead to the signal being compressed, and therefore you canā€™t recover the spatial contrast when you spread that signal back out over the source area, you at least have the other half of the DWIs that are instead expanded by the susceptibility distortions in that area, and so you have some chance of recovering some spatial contrast in the corrected images. At some point Iā€™ll hopefully do a tailored reconstruction in dwifslpreproc for this style of acquisition.

Acquiring the entire gradient table in two phase encoding directions is already supported (see dwifslpreproc -rpe_all), but that requires a doubling of the acquisition time. The style above tries to get the benefits of this style of acquisition but without the increase in scan time.

2 Likes

Dr.Smith,

Thank you very much for the detailed description.

Regards,

Thank you @rsmith, that was really very helpful!
Regarding step 3, can I leave the AP b=0 in the dataset when I feed all AP data through dwidenoise | mrdegibbs? Or will that cause problems?

Also, you wrote

you could then feed X through mrdegibbs if you wished, but you canā€™t run dwidenoise on it as there are too few volumes, thatā€™s then provided via the -se_epi option to dwifslpreproc

Is X the image that is usually fed to --imain parameter in FSLā€™s topup command (ie topup --imain=X)?

Hi @mkv,

The denoising algorithm is not directly dependent on the b-values of individual volumes; the only assumption is that the noise level is the same across volumes (and in a local spatial neighbourhood). So the algorithm itself can utilise the b=0 data, and will perform some denoising of those data. In terms of whether or not that will ā€œcause problemsā€, the only potential issue is that if those data are fed to topup, then the b=0 volume(s) with one phase encoding direction will have better SNR than the volume(s) with the opposite phase encoding direction if no denoising was applied to the latter. But Iā€™m not convinced that this is actually ā€œproblematicā€ in any way. Until someone actually experiments with these different options, itā€™s merely an observation of fact. And as shown in my prior reply, there is not an alternative strategy that is wholly devoid of caveat / disadvantage.

Is X the image that is usually fed to --imain parameter in FSLā€™s topup command (ie topup --imain=X )?

Correct:

ā€¦ thatā€™s then provided via the -se_epi option to dwifslpreproc.

Admittedly not the ideal sentence structure back thereā€¦ but yes, the purpose of the -se_epi option is to provide images to topup for inhomogeneity field estimation, but that will not be provided to eddy and hence will not be included in the dwifslpreproc output.