- **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
~~~bash
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.