Although we haven't extensively tested this, Paul Taylor and I have been looking at a method to correct for motion based on the diffusion model. Each volume is compared to its ideal and synthesized "doppelganger". Based on our limited tests, the method requires enough consistency among gradients that a reasonable model can be made. The method works by iteratively aligning to synthetic correspondent gradient volumes using 3dvolreg or 3dAllineate to accomplish a rigid or 12-parameter affine transformation. It seems to be quite robust to large amounts of noise and distortion.
http://afni.nimh.nih.gov/sscc/staff/glend/dwimotion_presentation.tgz
In the past, the most successful variant I have found is an affine method using our 3dAllineate to align the data to a B=0 volume, but this method far exceeds that. Note the TORTOISE package does more than this motion correction including eddy current correction, and it is very well tested, so I would definitelyl include that in a comparison. Still this set of scripts is very fast and does an excellent job for "reasonably" good or even some very bad datasets we have looked at. Please let us know how you like it or not.
Edited 1 time(s). Last edit at 09/22/2015 06:07PM by Daniel Glen.