MRtrix3 / mrtrix3

MRtrix3 provides a set of tools to perform various advanced diffusion MRI analyses, including constrained spherical deconvolution (CSD), probabilistic tractography, track-density imaging, and apparent fibre density
http://www.mrtrix.org
Mozilla Public License 2.0
293 stars 180 forks source link

New command: mrdegibbs #715

Closed Lestropie closed 7 years ago

Lestropie commented 8 years ago

Moving this to here as I'm cleaning out old email discussions.

Seemingly the recommended approach is to follow dwidenoise with this method.

thijsdhollander commented 8 years ago

...or http://onlinelibrary.wiley.com/doi/10.1002/mrm.25866/abstract ;-)

And a nice interview to go with it: http://www.ismrm.org/qa-with-jelle-veraart-els-fieremans-and-dmitry-novikov/

Looks like we're going to need an algorithm option for a command like this.

bjeurissen commented 8 years ago

Got the Kellner method as good as ported to MRtrix. Kellner provided me their original method for the purpose of porting. It currently relies on fftw, so we probably still have to port this to EigenFFT as an fftw dependency is undesirable. Will commit it to a branch tomorrow.

Lestropie commented 8 years ago

Could ask Jelle again, but from the old email it seemed as though he was advocating PCA denoising followed by the Kellner method over his own TV-based Gibbs removal. But we could check in again.

bjeurissen commented 8 years ago

Granted both of you access to the gitlab repository, if you want to take a peek. Once I have it working again with the latest API, I will create a branch from master on github.

thijsdhollander commented 8 years ago

Yep, so Jelle confirms he's also using the Kellner method, stating that it's quite fast as well (and parameter free of course). So that would definitely be the way to go then!

draffelt commented 8 years ago

Hi Ben, I don't suppose you plan to port this any time soon?

I have a student processing a study currently, which could really do with Gibbs ringing correction (since we are using CSF for intensity normalisation). Cheers!

kfeindel commented 7 years ago

Hi Ben,

Any status update on the planned mrdegibbs? I'm about to start reprocessing a bunch of data from a Huntington's Disease collaborative project involving participants in Perth and Melbourne.

Cheers, Kirk

jdtournier commented 7 years ago

Anyone taken this any further? If not, I can have a go based on @bjeurissen's current version. Would be good to include in tag_3.0_RC2...

bjeurissen commented 7 years ago

Part of the reason I started writing the MRtrix command was that it was a pain to compile the original code because of its FSL source code dependencies. Nowadays, the original authors provide a static binary (linux only) that can handle NIFTI and which I have created an MRtrix-command-style python wrapper for.

Might be easier to just include this wrapper, instead of a native command. What do you think? This would of course require users to download this binary, or compile that version themselves.

If you are keen on proceeding with my native command, the very latest code provided by the original authors is at: https://bitbucket.org/reisert/unring

jdtournier commented 7 years ago

Thanks for the info, Ben. So the fact that their binary is Linux-only means it might be worth including your code - especially as it shouldn't take a huge effort to finalise the port.

On a different note: have the original authors made further changes to their code since your version? Will we need to check what changes they've made since then and replicate?

jdtournier commented 7 years ago

Pull request in #1079 - closing