Rotating bvecs for preprocessing

Hi all,

I have become aware that some people choose not to use the reorientated bvecs after eddy in diffusion analysis. I find it a little difficult to understand why and there doesn’t seem much on the web/published on this.

My understanding is that correcting eddy currents involves estimating a rigid body transformation (global translation and rotation only) from each DWI to the b=0 image and therefore bvecs are updated according to this transformation. However the affine and diffeomorphic transformations in topup cause localised changes in anatomy orientation, whereas gradient directions are a global orientation, and so the transformation applied to image cannot be applied to the diffusion orientations and perhaps this is why some people don’t use the reorientated bvecs. But I don’t fully understand that logic.

I understand that dwipreproc will automatically use the reorientated bvecs and that unless there are large rotations, the impact of this reorientation might not be particularly big. Nevertheless, can I ask if anyone has any opinions on whether one should always use the rotated bvecs in diffusion processing?

Many thanks,


1 Like

If you have the option of reorienting the bvecs, I don’t think there’s any particular reason not to do it. It’s pretty easy these days, and dwipreproc does this by default. There’s a couple of reasons why it might not be worth doing, but they’re a bit tenuous:

  1. you know there is negligible motion, so the effect of rotating the bvecs will be negligible, and potentially not worth the hassle. This argument falls down if there’s any possibility of non-negligible motion (i.e. pretty much any real-world study), and when using the correction is actually not a hassle…

  2. with newer slice to volume realignment methods, it’s pretty much impossible to represent the rotated bvecs as a single reoriented vector per-volume, since the rotation can now differ between slices. But then the directions are going to be wrong anyway if left uncorrected, and it’s hard to argue that the correction would make things any worse – in general, the correction ought to make things better, at least for the volumes where slice-to-slice motion is negligible (which typically means most of them)

Not quite: only global eddy-currents actually induce rigid-body transformations (pure shifts along the PE direction) – all other combinations will induce non-rigid shears or scalings. Motion however will introduce rigid body transformations (ignoring the effects of susceptibility-induced distortions), and tools like eddy do correct for this (in fact, with modern scanners, I’d argue motion is actually the single largest source of artifact corrected by these tools).

Actually, it can. Motion (and rotation in particular) is the only source of rotation of the diffusion gradients, since that influences the spatial relationship between the orientation of anatomy and the gradient directions and hence the contrast in the images – as soon as motion is corrected, that has to be accounted for in the gradient orientations. On the other hand, eddy-currents and EPI distortions only affect the read-out, and in particular where the signal ends up along the PE direction – but not the contrast in the images as such. This is because the gradients that give rise to these distortions are negligible compared to those used to induce the diffusion contrast. If there was no motion, we’d get the same signal (same DW direction → same contrast), but in the wrong place, and the right way to correct for these effects is simply to undistort the images by putting the signal back where it’s supposed to be – leaving the effective diffusion gradient direction as-is.

Another way to see this is that the distortions only occur during the readout, not during the diffusion preparation itself. The sample isn’t actually distorted when the diffusion gradients are applied, and the relationship that drives the contrast in the images at that point is only the relative orientation between the undistorted anatomy and the diffusion gradients. Distortion is a consequence of the readout only, particularly its low bandwidth along the PE direction.

Hope that makes sense…?

Thanks Donald, that does make sense and very clearly explained!

Best wishes