Skip to content

[0.7] - 2023-05-20

Compare
Choose a tag to compare
@samuelstjean samuelstjean released this 20 May 16:17
· 23 commits to master since this release
65f7f43
  • Breaking changes in the command line parser

    • The previously required options N and angular_block_size are now optional.

    • A mask is now required to be passed with -m or --mask to only sample data. It was previously possible to be unlucky and only sample background noise in the reconstruction process, taking forever to practically do nothing in practice, passing a mask with only the data to sample and reconstruct should prevent this issue.

    • A new call would now looks like

    nlsam_denoising input output bvals bvecs -m mask.nii.gz
  • New command line arguments, now subclassed into categories.

    • --load_mhat file, to load a volume for initializing the bias correction, the default is to use the data itself.
    • --save_difference file, to save a volume showing the removed signal parts as abs(original_data - denoised_data)
    • --save_eta file, to save the result of the estimated underlying signal value for debugging purposes.
    • Deprecation of options --implausible_signal_fix and --sh_order, use --load_mhat instead for initialization.
  • Support for non-integer values of N.

  • Support for supplying a volume to be loaded as values of N.

  • New module nlsam.bias_correction, which contains an easier to use interface to the C functions in nlsam.stabilizer

  • New online documentation available at http://nlsam.readthedocs.io/ for the current (and future) versions.

  • The dictionary learning part of the algorithm now respects --cores instead of ignoring it and always using all available processors.

  • joblib is now used for parallel processing.

    • The frozen executable is now using dask and performs a bit slower than the normal version until joblib.loky is fixed to work with pyinstaller.
    • Binary wheels are now available for all platforms instead.
  • A new option to estimate automatically the noise distribution (sigma and N) is now available by passing auto to both N and --noise_est.

    • This option is also the new default now.
  • A new option to process each shell separately is now available with --split_shell.

  • Probably other stuff I forgot.