https://github.com/neuropoly/spinalcordtoolbox
Tip revision: 99b1c0758225776278605aa2a8877e3f48714205 authored by GitHub Actions Bot on 14 July 2023, 19:21:03 UTC
Update version.txt for 6.0
Update version.txt for 6.0
Tip revision: 99b1c07
CHANGES.md
# Changelog
## 6.0 (2023-07-14)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.8...6.0)
**FEATURE**
- **sct_analyze_lesion**: Allow lesion volume calculation without providing SC seg. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4112)
- **sct_compute_compression**: Add new CLI script to compute normalized metric ratios (MSCC, etc.) for compressed levels. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4003)
- **sct_crop_image**: Add `-dilate` option to enable cropping around a spinal cord segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4028)
- **sct_deepseg**: Add support for model ensembles to `sct_deepseg`, update `mp2rage_lesion` model. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4042)
- **sct_deepseg_lesion, sct_qc**: Add sagittal mosaic QC and use it for `sct_deepseg_lesion` QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4102)
- **sct_get_centerline**: Add `-centerline-soft` option to output a non-binary "soft" centerline. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4026)
- **sct_image**: Replace `-setorient-data` with `-flip` and `-transpose` options. **WARNING: Breaks compatibility with previous version.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4071)
- **sct_label_utils**: Add new `project_centerline` option in `sct_label_utils` to project an image on the spinal cord centerline . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4080)
- **sct_process_segmentation**: Bring metrics in PAM50 anatomical dimensions in `sct_process_segmentation`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3977)
- **sct_process_segmentation**: Display vertebral levels when provided with `-perslice 1`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4004)
- **sct_warp_template**: Add new `-histo` option to warp the newly-added PAM50 histology files. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3444)
- **sct_register_to_template**: List resampled labels in order. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4088)
**ENHANCEMENT**
- **sct_detect_pmj**: Add `-qc-dataset` and `-qc-subject` flags to `sct_detect_pmj.py`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4053)
- **sct_image**: Add `-qc-subject` and `-qc-dataset` flags to `sct_image`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4052)
- **sct_label_utils**: Update `labelize_from_discs()` to add level labels above the top disc and below the bottom disc. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4072)
- **sct_maths**: Use `filters.rank` instead of `dilate`/`erode` for `uint8`/`uint16` images. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4021)
- **sct_propseg**: Silence unnecessary "overwriting" messages when updating output image header. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4110)
- Fix indentation for wrapped lines in argparse help. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4008)
- Fix broken `tqdm` behavior for Windows and older Unix platforms. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4093)
- Use `sct_progress_bar` for `algo=columnwise` and `register2d` slicewise loops. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4094)
- Replace `algo=rigid` with `algo=slicereg` for mt0-mt1 registration. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4095)
- Selectively display `relpath` or `abspath` in viewer syntax based on CWD. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4109)
**BUG**
- **sct_analyze_texture**: Change `grey` --> `gray` in imports of `skimage.feature` functions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4057)
- **sct_compute_ernst_angle**: Fix upper/lower TR bounds used when plotting Ernst angles (argument `-b`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4131)
- **sct_deepseg**: Clean up improper submodule access (via imported parent modules). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3973)
- **sct_deepseg_lesion**: Fix broken `-v 2` case by making sure `fname_res_ctr` exists prior to resampling. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3987)
- **sct_deepseg_sc**: Ensure that qform/sform codes are preserved when generating segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4135)
- **sct_get_centerline**: Prevent soft centerline being used with non fitseg methods. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4063)
- **sct_get_centerline**: Add extrapolation for `sct_get_centerline` fitseg. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4079)
- **sct_image**: Swap order of `sct_image -stitch` QC images to fix incorrect YML path. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4157)
- **sct_label_utils**: Fix buggy `-create-viewer` behavior on initialization (undo crash, blank checkboxes). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4108)
- **sct_plugin.py (FSLeyes)**: Catch errors from outdated `wxpython` versions bundled with FSL, then suggest a solution. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4048)
- **sct_qc**: Faithfully display `sct_qc` arguments, rather than making a fake command. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4016)
- **sct_qc**: Ensure that sagittal images (and softsegs) are resampled correctly for lesion QC. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4133)
- **sct_qc**: Fix errors in the list of available QC processes (`index.html`, `sct_qc.py`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4151)
- **sct_register_to_template**: Ensure that the `straightening.cache` file is output to the PWD during template registration. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4156)
- **sct_resample**: Update `-mm` and `-ref` argument descriptions, fix `parse.error` logic, and add tests. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4081)
- Pin `numpy<1.24` to mitigate incompatibility with `pystrum==0.2`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3981)
- Better isolate the SCT conda env by using `-p` instead of `-n` during creation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3989)
- Make matplotlib less verbose. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4089)
- Use `importlib.metadata` to fetch list of scripts instead of `pkg_resources`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4124)
**INSTALLATION**
- **sct_segment_graymatter**: Remove `gm_model` from `download.py` module and install scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3995)
- Replace `version.txt` contents (`dev`) with PEP440-compliant version (`6.0.dev0`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3999)
- Remove outdated/unused settings from `setup.cfg`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4000)
- Update `version.txt` on master branch during release workflow. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4001)
- Use Miniconda instead of built-in Python for Windows installations. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4027)
- Clean up `.egg-info` and `python/` folders when reinstalling SCT. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4043)
- Allow `install_sct` to be run standalone (without downloading "Source code" archive). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4049)
- Add missing features from `install_sct` to `install_sct.bat`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4061)
- Remove Sentry code. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4103)
- Upgrade SCT's conda environment to Python 3.9. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4136)
- `install_sct`: Use explicit paths to python/pip executables. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4143)
- `install_sct`: Install `libffi` from `conda-forge`, rather than `defaults`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4144)
- Make sure that `$SCT_DIR` is set for both Windows installations and `batch_processing.sh`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4150)
**DOCUMENTATION**
- **sct_deepseg**: Move MP2RAGE cropping comment from "model" description to "task" description. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4065)
- **sct_deepseg_lesion**: Update description of `-file_centerline` flag to mention `-centerline file` instead of `-centerline manual`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4018)
- **sct_register_multimodal**: Add an example `-param` configuration to the argparse help description of `algo=dl`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4111)
- Improve the readability of temporary directory names throughout SCT. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3986)
- Add link to mailing list. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4014)
- Improve the appearance of `spinalcordtoolbox.com` in search results. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4069)
- Standardize Python file headers for copyright and license information. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4128)
- Encode emoji in utf-8. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4141)
- Clarify documentation for `compute_vertebral_distribution`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4154)
**REFACTORING**
- **sct_plugin.py (FSLeyes)**: Fix `flake8` linting issues in the `sct_plugin.py` script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4074)
- **sct_plugin.py (FSLeyes)**: Rename FSLeyes script from `sct_plugin.py` to `sct_fsleyes_script.py`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4092)
- **sct_register_multimodal**: Simplify weight-loading model code for `algo='dl'`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3996)
- Refactor `get_centerline` function to distinguish between OptiC and non-OptiC methods. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3975)
- Remove `_get_centerline()` and put functionality into `centerline/core.py`'s `get_centerline()`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4010)
- Remove `round_and_clip` function from `centerline/core.py`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4031)
- Add `im_type` argument in `display_viewer_syntax` to facilitate colormap selection. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4037)
- Fix flake8 lints. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4041)
- Remove each instance of the `-igt` argument from SCT scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4068)
- Fix `flake8` linting issues in the `testing/` directory. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4073)
- Code cleanup in `types.py`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4075)
- Refactor `get_dimension`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4097)
- Refactor `find_and_sort_coord`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4098)
- Delete `create_test_data.py` and move `dummy_` functions into their respective test files. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4115)
- Refactor `reports/qc.py`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4126)
- Remove unused QC report assets. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4129)
**CI**
- List changed files for flake8. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3963)
- Improve `release-body.md` contents to address feedback from v5.8 release. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3985)
- Use milestone due date. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3990)
- Add shellcheck to CI (and fixup shell scripts to get the check to pass). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4015)
- Attach `install_sct` as an asset during release creation CI workflow. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4055)
- Remove all 70,000+ warnings from test suite. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4091)
- Fix Debian 9 CI failures by adding `archive` links to `/etc/apt/sources.list`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4106)
- Update outdated GitHub Actions to versions that use Node.js 16. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4107)
- Ensure CI avoids older ReadTheDocs docker images to address OpenSSL mismatch. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4114)
- Test standalone installations via `tests.yml`, but only on the `master` branch. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4121)
- Add warning filters for upstream `pkg_resources` warnings. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4127)
**GIT/GITHUB**
- Update PR template links to testing and documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/4033)
## 5.8 (2022-12-02)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.7...5.8)
**FEATURE**
- **sct_image:** Add new `-stitch` option that wraps stitching functionality from Glocker et al.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3865)
- **sct_process_segmentation:** Add DistancePMJ when perslice flag in `sct_process_segmentation`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3856)
- **sct_run_batch:** Add `-ignore-ses` flag to process `sub-` directories even when `ses-` subdirectories are present. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3862)
**ENHANCEMENT**
- Update header `dtype` property on save/load to match the datatype of the data array. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3944)
- **sct_analyze_lesion, sct_analyze_texture, sct_denoising_onlm:** Enforce use of `display_viewer_syntax` in four scripts using hardcoded `fsleyes` commands. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3895)
- **sct_get_centerline:** Ensure that the output of `get_centerline()` can be saved using `-r 0`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3960)
- **sct_image:** Update `binaries_linux` to include a rebuilt version of `stitching` that targets `centos7`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3939)
- **sct_label_vertebrae, sct_qc:** Add readability fixes for QC reports (sagittal view scaling, label text, label colormaps). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3889)
- **sct_register_multimodal:** Add dimensions of data to registration logging. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3899)
- **sct_register_multimodal:** Minimize memory usage for `algo=dl` (and add a warning for potential OOM killer issues). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3953)
- **sct_register_to_template:** Throw error when labels are lost during the straightening transform. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3880)
**BUG**
- Properly escape `\` in the regex for removing `sct_env` from old RC files. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3872)
- Ensure that calling `printv(type='error')` actually exits the program. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3874)
- Reduce logging from intermediate CLI scripts by setting `-v 0` in `main()` calls. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3881)
- Address `[Errno 24] Too many open files` during motion correction. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3882)
- Fix several bugs when loading headers in the `Image` constructor. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3931)
- Set a more permissive `quaternion_threshold` inside `Image` constructor. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3936)
- **sct_analyze_lesion:** Fix output filename spelling. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3909)
- **sct_check_dependencies:** Re-add `print_line` call for PropSeg check. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3911)
- **sct_extract_metric:** Ensure that `-list-labels` is the last argument that is parsed. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3864)
- **sct_get_centerline:** Exclude original file extension (e.g. `.nii.gz`) from the output `.csv` filename. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3917)
- **sct_merge_images, sct_smooth_spinalcord:** Enforce `type=int` for arguments that use `choices=(0, 1)`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3887)
- **sct_propseg, sct_straighten_spinalcord:** Pass `argv` to `generate_qc` functions (instead of `arguments` or `sys.argv[1:]`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3863)
- **sct_register_multimodal:** Improve handling of case where `algo` is specified alongside `type='label'`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3894)
- **sct_run_batch:** Modify `-include-list` and `-exclude-list` to check against parts of a directory, too. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3859)
- **sct_run_batch:** Fix `include_list`/`exclude` argument ordering in call to `_filter_directories`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3870)
- **sct_run_batch:** Allow `path_output` parameter to start with `~`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3958)
- **install_sct.bat:** Use delayed expansion (`!!`) for `git_ref`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3891)
**INSTALLATION**
- Upgrade SCT from Python 3.7 to Python 3.8. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3916)
- Limit `pyqt5` to >5.11 and <5.15 to avoid "Cannot load library libqxcb.so" error on Ubuntu. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3928)
- Ensure bundled GLIBC is up-to-date in order to resolve `MESA-LOADER` errors. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3929)
- Add more thorough check for `git` within the `PATH` for the Windows installer. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3945)
**DOCUMENTATION**
- Remove API pages from the documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3869)
- Fix copy-paste typos in tutorial documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3886)
- Add Google Sheets summary graphs to `studies.rst`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3896)
- Switch to higher-quality "Tools used" graph on the studies page. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3906)
- Update outdated links to `atlas` and `spinal_level` scripts in `pam50.rst`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3923)
- Clarify strengths of both `sct_propseg` and `sct_deepseg` in the documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3941)
- Fix typo in "Registration" tutorial (`slice-by-slide` -> `slice-by-slice`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3954)
- **sct_deepseg_lesion:** Add missing spaces in multiline strings, and missing commas in lists. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3933)
- **sct_image:** `sct_image`: Clarify descriptions for `-setorient` commands. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3938)
- **sct_maths:** Fix small typo in `-uthr` help description (`below` -> `above`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3922)
- **sct_process_segmentation:** Add references to Bédard and Cohen-Adad. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3934)
- **sct_register_multimodal:** Add scaling to `sct_register_multimodal -dof` argument help. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3948)
**REFACTORING**
- Replace `run_proc` calls with `main` calls across SCT's scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3724)
- Replace `argv=None` default by `argv: Sequence[str]` type hint. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3866)
- Simplify `add_suffix`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3878)
- Move 5 unused scripts to `spinalcordtoolbox-dev`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3892)
- Remove unused `isct_` scripts from SCT's CLI and test suite. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3908)
- **sct_check_dependencies:** Convert `isct_test_ants` script into a `pytest` test, then call via `sct_check_dependencies`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3932)
- **sct_compute_snr, sct_dmri_moco, sct_fmri_moco, sct_maths, sct_process_segmentation:** Call `parser.error` properly. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3858)
- **sct_dmri_denoise_patch2self:** Deal with `nibabel` deprecation of `get_header` and `get_data`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3879)
- **sct_download_data:** Refactor data downloading API to remove dependency on CLI script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3907)
- **sct_merge_images:** Tidy up PEP8 warnings and other small style issues. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3930)
- **sct_process_segmentation:** Improve handling of default arguments. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3860)
- **math.py:** Address `selem` deprecation by using `footprint`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3898)
- **shell.py:** Let `Metavar` inherit from `str` to silence PyCharm type warning. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3876)
**CI**
- Upgrade Ubuntu 18.04 -> 20.04/22.04 in test suite. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3919)
- Set `draft: true` in the release creation workflow. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3940)
- Pin `flake8<6.0.0` in our linting workflow. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3962)
## 5.7 (2022-07-28)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.6...5.7)
**FEATURE**
- **sct_process_segmentation,sct_extract_metric:** Combine conditions when slice number and vertebral levels are both specified. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3823)
- **sct_register_to_template,sct_register_multimodal:** Integration of DL multimodal registration in SCT. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3807)
- Allow in-place installations (to support PRs from forks). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3797)
**CI**
- Update GitHub Actions runners to match current (non-beta) up-to-date versions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3853)
- Add `install_sct.bat` as a release asset during `create-release.yml` workflow. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3850)
- Remove coverage reporting via `codecov`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3837)
- Refactor release workflow into 3 stages to properly test PR branches. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3836)
- Exclude `certifi @ file` from pip freeze to work around upstream conda bug. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3819)
- Expand `batch_processing.sh` test to support macOS and Windows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3770)
**BUG**
- **sct_propseg:** Prevent from overwriting files by outputting to a tempdir prior to renaming. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3847)
- **sct_maths:** Swap `if` for `elif` to prevent error from being thrown when calling `sct_maths -mi`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3846)
- **sct_merge_images:** Remove catch-all exception handling. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3839)
- **image.py:** Use `shutil.copyfile` for output files if src/dest are on different filesystems. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3833)
- **sct_process_segmentation:** Move CSA normalization models to `./data/` at the root of the SCT repo. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3821)
- **sct_maths:** Rewrite `-add`/`-sub`/`-mul`/`-div` to match expected behavior for 3D/4D images. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3808)
- **image.py:** Use absolutepath when loading images. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3792)
**INSTALLATION**
- Repair automated commenting out of pre-4.0 sct settings. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3805)
- **requirements.txt:** Pin `protobuf` to fix upstream Keras issue. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3802)
- Replace pushd/popd with cd-in-a-subshell. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3796)
- **requirements.txt:** Use CPU `--extra-index-url` to remove strict dependency pinning for `torch`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3790)
- **sct_download_data:** Use binaries that are packaged by the `spinalcordtoolbox-binaries` repo. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2668)
**DOCUMENTATION**
- **sct_merge_images:** Clarify argparse help description. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3840)
- Add new tutorial for contrast agnostic registration. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3831)
- Update installation docs to make 'checkout' step less confusing. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3825)
**ENHANCEMENT**
- **sct_check_dependencies:** Clean up FSLeyes version checking to be less verbose/confusing. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3820)
- **fslhd:** Account for `None` orientation strings when printing image headers. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3815)
- **sct_deepseg_sc,sct_deepseg_gm,sct_deepseg_lesion:** Replace Tensorflow/Keras-based inference (`.h5`) with onnxruntime (`.ONNX`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3738)
**REFACTORING**
- **utils.py:** Unify calls to `shutil.move` by using only `utils.fs.mv`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3848)
- Reduce flake8 warnings throughout the codebase. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3842)
- **sct_label_vertebrae:** Remove deprecation warning for previously-removed `gaussian_std` argument. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3841)
- Fix executable file permissions and remove unnecessary header declarations. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3835)
- **aggregate_slicewise.py:** Update docstring for the `aggregate_per_slice_or_level` function. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3830)
- **sct_register_to_template,sct_register_multimodal:** Fix circular and star importing in registration CLI scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3811)
**GIT/GITHUB**
- Delete the entire `dev/` folder from the `master` branch. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3827)
- **create-release.yml:** Release directly from the `master` branch. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3813)
## 5.6 (2022-04-29)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.5...5.6)
**FEATURE**
- **sct_deepseg:** Add model for T2w lumbar SC segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3766)
- Add new native Windows install script and GitHub Actions CI runner. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3701)
**CI**
- Add temporary skip for hardware-specific GitHub Actions runner issue. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3688)
- Test release path in CI. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3678)
- Replace CentOS 8 with CentOS Stream 8 to address December 2021 EOL. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3676)
**BUG**
- **sct_deepseg:** Rewrite ANSI color code snippets to support terminals limited to 16-colors. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3782)
- **sct_label_vertebrae:** Output a better error message when the initial disc is invalid. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3775)
- Set a more permissive threshold for reading the qform. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3771)
- **sct_check_dependencies:** Skip checking `isct_propseg` on Windows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3753)
- **sct_analyze_texture:** Stop using a tempfile for data reorientation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3727)
- Open CSV files using `newline=''` to fix `\r\r\n` issue. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3726)
- **sct_run_batch:** Check `isdir` directly, rather than trying to catch `IsADirectoryError`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3725)
- **sct_dice_coefficient:** Update `CMakeLists.txt` to include bugfix for unresolved external symbol errors. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3723)
- **sct_run_batch:** Account for non-UNIX platforms in `sys.platform` checks. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3722)
- Replace hardcoded `/tmp` directory with `tmp_path`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3721)
- Clean-up Windows-incompatible hardcoded `/` path separators. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3720)
- **sct_run_batch:** Add better support for shell script batch processing on Windows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3719)
- Improve how image overwriting is handled for memory-mapped data arrays on Windows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3718)
- **sct_propseg:** Attempt to fixup isct_propseg build (but ultimately skip sct_propseg on Windows). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3717)
- **sct_label_vertebrae:** Refactor `-param` parsing to address several bugs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3700)
- **sct_propseg:** Fix parsing of `-d` argument in script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3687)
- **sct_analyze_lesion:** Fix computation of estimated lesion length and diameter. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3681)
- Rewrite QC test to use `Pool.close()` to avoid stalling with pytest-cov. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3680)
- **sct_get_centerline:** Stop appending `.nii.gz` to the centerline output filepath if `-o` has an extension. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3677)
**INSTALLATION**
- Suppress output of `where deactivate` check. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3781)
- Allow `install_sct.bat` file execution from double click. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3778)
- Isolate SCT script launchers from the `venv_sct/Scripts/` directory on Windows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3756)
- Add `msvc-runtime` to our requirements to avoid DLL load error on Windows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3752)
- `install_sct.bat` Only deactivate if script is available on PATH. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3750)
- `install_sct.bat`: Use `requirements-freeze.txt` if present. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3749)
- `install_sct.bat`: Add a default value for `git ref`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3748)
- `install_sct.bat`: Allow overwriting of existing spinalcordtoolbox installations. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3747)
- `install_sct.bat`: Use a non-admin way of adding SCT to the PATH. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3746)
- `requirements.txt`: Update `-f` link for PyTorch CPU HTML page. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3679)
- Revert "requirements.txt -> setup.py" PR to restore old dependency-checking behavior. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3671)
**DOCUMENTATION**
- Fix inaccurate comment in `batch_processing.sh`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3773)
- Update documentation build instructions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3734)
- Fix broken links to neuro.polymtl.ca. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3690)
- Add links to the newly-updated 2021 SCT Course material. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3689)
- Add new "Pipelines" page to the sidebar of SCT's RTD documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3668)
- Split "SCT Courses" and "Tutorials" into two separate documentation pages. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3666)
- **sct_deepseg:** Add new option `-list-tasks-long` to print in-depth descriptions of deepseg tasks. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3541)
**ENHANCEMENT**
- Cosmetic fixes on `-list-tasks`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3777)
- Add support for ITK-Snap + multiple viewers to `display_viewer_syntax`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3754)
- **sct_label_vertebrae:** Improve the label cleaning function. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3739)
**REFACTORING**
- **sct_label_vertebrae:** Code cleanup. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3774)
- Refactor `sys.platform` checks to include Windows and use `.startswith()` idiom. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3757)
- **sct_label_vertebrae:** Refactor argument parsing code. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3731)
- Rename and move CLI tests from `testing/api/` to `testing/cli/`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3729)
## 5.5 (2022-01-26)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.4...5.5)
**FEATURE**
- **sct_deepseg:** Add models for MP2RAGE SC and MS lesion segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3637)
- **sct_testing:** Bring back previously-removed command as a light wrapper for `pytest`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3605)
- **sct_deepseg:** Add spinal cord/gray matter multiclass segmentation model for 7T data. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3527)
- **sct_dmri_denoise_patch2self:** Add new Patch2Self CLI script for dMRI denoising. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3510)
**CI**
- Switch to 'informational mode' to prevent Codecov failures for small changes. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3655)
- `tests.yml`: Update runners to no longer use Ubuntu 16.04. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3538)
- Add coverage via `codecov`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3463)
**BUG**
- Add utility function to strip '.py' extensions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3658)
- **sct_maths:** Refactor `-symmetrize` function to fix dimension bug. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3657)
- **sct_compute_mtr:** Convert input file to float32 before computing MTR. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3638)
- **sct_get_centerline:** Make sure that the QC report displays properly. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3626)
- Set `channel_axis=None` for `pyramid_expand` to fix bug in `skimage==0.19.0`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3616)
- **sct_propseg:** Fix argument parsing to ensure only the requested files are output. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3611)
- Restore the argparse linewrapping behavior we had prior to Python 3.7. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3604)
- **sct_download_data:** Update outdated mirror links. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3596)
- Upgrade QC reports to use Qt5. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3588)
- **sct_resample:** Make sure dimensions are correct for 4D images resampled with `-mm`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3553)
- **sct_qc:** Fix colormap for vertebral labeling in the QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3534)
**INSTALLATION**
- Allow `install_sct` to run from any directory. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3660)
- Use `--ignore-installed` to preserve the version of `certifi` that gets installed during `conda create`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3618)
- Use a more reliable way to disable USER_SITE. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3606)
- `requirements.txt`: Pin `onnxruntime>=1.7.0` rather than `==1.4.0`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3595)
- `install_sct`: Skip `pip==21.2` to avoid suboptimal dependency resolver. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3594)
- `install_sct`: Replace `sed -i` with `perl -pi -e`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3591)
- `install_sct`: Add `touch` fixes to address WSL connection issues. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3574)
- Fix multiple WSL issues related to installation and display. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3573)
- Check CPU attributes to determine whether to install an AVX-less version of TensorFlow (M1 Macs, older Linux CPUs). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3569)
- Remove `futures` from our `requirements.txt` file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3548)
- Use Python 3.7 instead of Python 3.6 for SCT's conda environment. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3361)
**DOCUMENTATION**
- Add studies citing SCT. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3656)
- Replace `sct_maths` with `sct_separate_dmri_separate_dwi_and_b0` in tutorial dMRI preprocessing. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3643)
- Help differenciate Linux and WSL user on install documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3641)
- Add Uhrenholt et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3639)
- Use furo-theme sanctioned dark mode colour controls. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3632)
- Restore "Edit on GitHub" button. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3624)
- Replace SCT Course 2020 iCloud link with Google Drive link. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3623)
- **sct_deepseg_sc:** Indicate default value for `-brain`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3617)
- **sct_register_to_template:** Update help for 2+ labels usage, and change link from iCloud to RTD. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3603)
- Fix typo in `studies.rst` (Kinawy -> Kinany). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3589)
- Remove misleading `FSLeyes` installation instructions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3577)
- `README.rst`: Fix typo. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3576)
- `windows.rst`: Recommend echoing DISPLAY to ~/.profile, not .profile. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3563)
- Remove leftover unnecessary `R|` formatting. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3561)
- Add Hernandez et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3557)
- Add Staud et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3551)
- Update testimonials and small documentation fixup. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3544)
- Add studies. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3543)
- Add PMJ-based CSA tutorial. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3542)
- Update studies. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3535)
- `fsleyes.rst`: Fix typo (Installating -> Installing). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3526)
- Add tutorials for the remaining material from the SCT Course. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3493)
**ENHANCEMENT**
- **sct_download_data:** Add default output folders for dataset downloads. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3650)
**REFACTORING**
- Remove `channel=None` bugfix that was superseded by upstream `skimage=0.19.1` patch. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3652)
**GIT/GITHUB**
- Update broken link in PULL_REQUEST_TEMPLATE.md. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3644)
- Clean up `install/`, `issues/`, and `flirtsch/` folders in repo. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3461)
## 5.4 (2021-09-24)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.3.0...5.4)
**FEATURE**
- **sct_process_segmentation:** Add CSA normalization in `sct_process_segmentation`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3515)
- **sct_register_multimodal:** Add `-owarpinv` to `sct_register_multimodal`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3507)
- **sct_maths:** Introduce `-uthr` (upper threshold) to complement `-thr` (lower threshold) in sct_maths. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3499)
- **sct_process_segmentation:** Add PMJ-based CSA in `batch_processing.sh`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3497)
- **sct_compute_snr:** Implement new method to compute SNR on a single 3D volume. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3479)
- **sct_process_segmentation:** Measure CSA based on distance from pontomedullary junction (PMJ). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3478)
- **sct_process_segmentation,sct_qc:** Add QC report for `sct_process_segmentation` for PMJ-based CSA. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3465)
- **sct_compute_snr:** Add `-o` argument to output SNR value to a text file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3455)
- **sct_qc:** Display soft segmentation in qc report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3418)
- **sct_run_batch:** Make it possible to loop across "ses-" entity. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3414)
- **sct_dmri_display_bvecs:** Allow `sct_dmri_display_bvecs.py` to display multi-shell acquisition. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3390)
**CI**
- Upgrade Ubuntu versions in test suite. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3477)
- Modify `lint_code.yml` to try to make it work for PRs from forks.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3474)
- Improve the readability of the test suite. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3423)
- Add `workflow_dispatch` for test suite workflows. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3399)
- Add GitHub Actions workflow to publish a new release. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3383)
**BUG**
- **sct_check_dependencies:** Import `pyplot` before `PyQt` to mitigate a finicky `libgcc_s.so.1` error. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3512)
- **sct_smooth_spinalcord:** Fix the output files of `sct_smooth_spinalcord` (`smooth.nii.gz`, `straight_ref.nii.gz`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3506)
- Fix-up broken test for `sct_compute_snr`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3472)
- **sct_register_to_template,sct_register_multimodal:** Apply softmask workaround to `slicereg` algorithm. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3446)
- **sct_qc:** Fix display of PMJ in QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3442)
- **sct_qc:** Check if input segmentation is binary for QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3437)
- **sct_plugin.py (FSLeyes):** Fix FSLeyes script to make it compatible with both FSLeyes v0.34 and v1.0. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3427)
- Don't set the global loglevel when CLI scripts are called in-code. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3410)
- **sct_register_multimodal:** Don't output `dest->src` files if registration is only performed one-way. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3407)
- **sct_propseg:** Fix `rescale_header is not 1` because the default value is `1.0`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3405)
- **sct_process_segmentation:** Prevent metric calculation for empty slices by checking if array is ~0. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3403)
- **sct_label_utils:** Ensure a copy of the header is used in `zeros_like` to fix `-create-viewer` bug. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3398)
- **sct_dmri_display_bvecs:** Add test for `sct_dmri_display_bvecs`, then add `-v` argument to make the test pass. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3387)
- **sct_dmri_moco:** Fix `-bvals` filepath handling and update bvals argparse help. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3376)
- **sct_resample:** Make sure TR parameter isn't lost when resampling 4D images. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3370)
- **sct_apply_transfo:** Change `sct_apply_transfo -v 0` to match `isct_antsApplyTransform` output. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3368)
**INSTALLATION**
- **sct_check_dependencies:** Don't crash on non-ImportError exceptions when checking dependencies. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3482)
- Stop trying to detect headless systems using `DISPLAY`, and no longer set `MPLBACKEND`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3420)
- Throw error during installation if `$SCT_DIR` contains spaces. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3366)
**DOCUMENTATION**
- Update references. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3521)
- Fix inconsistent description on `studies.rst` page. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3520)
- Update references. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3517)
- Replace blue/gray SCT logo images with transparent logo image. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3514)
- Add studies. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3504)
- Reformatting the references for SCT docs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3502)
- Fix hover colour on sidebar of docs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3498)
- Fix CSS colour formatting bug with new Furo theme. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3489)
- **sct_detect_pmj:** Clarified usage in PMJ detection script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3484)
- Add reference Vallotton et al.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3464)
- Fix typo (`sct_deepsec_sc` -> `sct_deepseg_sc`). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3452)
- Remove misleading info about unsupported installation/usage methods (pip, API). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3447)
- **sct_denoising_onlm:** Added bibliography reference. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3425)
- Fix missing words in testimonials. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3393)
- Add dark red formatting for argparse errors. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3363)
- Remove instructions for installing FSLeyes in the SCT conda environment. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3360)
- New Theme for Docs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3355)
- **sct_register_to_template,sct_register_multimodal:** Add multiple tutorial pages covering the "Registration" material from the SCT course. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3094)
**ENHANCEMENT**
- Skip redownloading `sct_testing_data/` if the directory already exists. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3480)
- **sct_detect_pmj:** Removal of scary message for user by changing certain function call parameters. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3473)
- **sct_detect_pmj:** Improve R-L placement in `sct_detect_pmj`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3468)
- **sct_qc:** Add QC field in .yml list for `sct_detect_pmj`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3448)
- Fix table size and scrolling in the QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3389)
**REFACTORING**
- Update outdated information + PEP8 fixes in `setup.py`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3460)
- Clean up scattered/broken tests and move into a single folder. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3449)
- Test `batch_processing.sh` values by indexing column name, not number. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3436)
- Modify `zeros_like` to no longer make a copy, and to avoid rescaling. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3379)
- **sct_testing:** Replace all 45 `sct_testing` tests with Pytest equivalents. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3373)
- Remove generate_path from methods in Image class. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3371)
**GIT/GITHUB**
- Replace `neuropoly/spinalcordtoolbox` with `spinalcordtoolbox/spinalcordtoolbox`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3381)
## 5.3.0 (2021-04-25)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.2.0...5.3.0)
**FEATURE**
- **sct_image:** Handle affine matrix mismatches better by exposing `-set-qform-to-sform`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3332)
- **sct_extract_metric:** Implemented weighted median. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3329)
- **sct_dmri_moco,sct_fmri_moco,sct_qc:** Implement QC for sct_dmri_moco and sct_fmri_moco. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3320)
- **sct_image:** Add flag to `sct_image` to print image headers. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3317)
- **sct_download_data:** Add entry to download exvivo template. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3310)
- **sct_register_to_template:** Added flag -s-template-id to use another segmentation (e.g. white matter) for registration to template. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3299)
- **sct_qc:** Interactive QC assessment: Add Pass/Fail/Artifact and download YAML file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3253)
**CI**
- Remove remaining Travis-related files and replace badge. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3345)
- Use 'extend-ignore' in flake8 config to preserve defaults. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3255)
- Run and test batch_processing.sh using GitHub Actions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3198)
- Port CI to Github Actions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3125)
**BUG**
- **sct_run_batch:** Fully isolate the conda env by its site.py. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3339)
- **sct_image:** Various fixes to sct_image -display-warp. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3337)
- **sct_image:** Fix faulty check for `arguments.set_sform_to_qform`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3331)
- **sct_deepseg:** Update model and fixed default output suffix. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3321)
- Update outdated `sct_register_graymatter` command in `batch_processing.sh`. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3316)
- **sct_run_batch:** Unset `PYTHONNOUSERSITE` in environment before calling batch script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3313)
- **sct_register_to_template:** Fixed right-left flip if template is not RPI and other minor improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3305)
- Use less strict value for `rel_tolerance` in the `batch_processing.sh` test. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3293)
- **sct_deepseg:** Unpin ivadomed to get latest version and fix wrong q/sform_code output. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3291)
- Replace instances of 'sct_convert.convert' with 'image.convert'. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3288)
- **sct_label_vertebrae,sct_warp_template:** Replace ANTs binary call with sct_apply_transfo call to properly set sform. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3272)
- **sct_create_mask:** Create 2d masks in memory instead of via intermediate files. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3270)
- **sct_label_vertebrae:** Handle 'label_discs' case where SC segmentation has holes/discontinuities. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3260)
- **sct_dice_coefficient:** Uniquely distinguish filenames for tmp files to prevent overwriting. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3258)
- Decrease the sensitivity of the sform/qform mismatch check. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3257)
**DOCUMENTATION**
- Added testimonials; improvements on the documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3349)
- Add ref Savini et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3348)
- Add ref Zhang et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3343)
- Add ref Tinnermann et al.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3342)
- Drop `yes |` from the docs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3307)
- Add ref Lee et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3287)
- Add reference Azzarito et al. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3259)
- Remove TODO from Introduction docs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3247)
**ENHANCEMENT**
- Update moco commands in `batch_processing.sh` to include QC. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3351)
**GIT/GITHUB**
- Add GH Actions workflow that automates Changelog PR. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3264)
- Add checklist item to pull request template for 'Milestone' label. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3263)
## 5.2.0 (2021-02-24)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.1.0...5.2.0)
**FEATURE**
- **sct_deepseg:** New segmentation model: GM and WM for exvivo DWI data (University of Queensland). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3224)
**BUG**
- **sct_register_to_template:** Enforce UINT8 when resampling labels for register to template. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3230)
- Fix size calculation bug for '-method map' and '-method ml'. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3217)
- Fix recently-introduced faulty slice index comparison. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3203)
- Fix unit_testing/test_labels.py::test_remove_missing_labels. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3191)
**DOCUMENTATION**
- Add reference Ost et al.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3243)
- Add reference Johnson. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3241)
- Move course materials to "Tutorials" page for visibility. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3240)
- Update Installation section in docs for MacOS Big Sur, add section for FSLeyes. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3228)
- Add ref solanes. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3221)
- Update FSLeyes install instructions for Win10/WSL. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3210)
- Update references. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3204)
- Fix line breaks in documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3197)
- **sct_extract_metric,sct_process_segmentation:** Validate '-vertfile' dimensions in aggregate_per_slice_or_level(). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3120)
**ENHANCEMENT**
- Modify tests to clean up after themselves in the working directory. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3222)
- Remove xdist from requirements and pytest config. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3212)
- **sct_image,sct_straighten_spinalcord:** Check qform and sforms match first. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2858)
**REFACTORING**
- **sct_image:** Refactor sct_image functions to accept Image objects as input . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3208)
- **sct_maths:** Refactor sct_maths callers to remove subprocess and use API. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2975)
**GIT/GITHUB**
- Lint pull requests using flake8 GH Actions workflow. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3215)
- Add config that links to SCT forum and removes blank issues. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3151)
## 5.1.0 (2021-01-22)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.0.1...5.1.0)
**FEATURE**
- **sct_concat_transfo:** Restore previously deprecated sct_concat_transfo.py. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3181)
- **sct_deepseg:** Support of multichannel and multiclass models. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3041)
- **sct_label_utils:** Add function to detect missing label. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2992)
**DOCUMENTATION-INTERNAL**
- Add script to automate requirements-freeze.txt generation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3042)
**BUG**
- **sct_compute_hausdorff_distance,sct_dmri_compute_dti:** Fix bugs introduced by recent init step refactoring pull request. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3177)
- **sct_propseg:** Replace os.path.dirname with pathlib.Path().parent. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3166)
- **sct_deepseg,sct_run_batch:** Make sure (most) scripts return error code and print usage when no args are passed. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3156)
- **sct_label_utils:** Add new '-create-seg-mid' option to replace bugged '-create-seg -1' behavior. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3148)
- Replace "argv if argv else '--help'" behavior with subclassed ArgumentParser. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3139)
- Replace troublesome unicode quote characters with more friendly ones. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3135)
- Fixup realpath polyfill. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3123)
- Fix incorrect indexing in get_center_spit to prevent QC report cropping. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3116)
- Forces output label image to be UINT8 with -create-viewer. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3104)
- Check that conda actually activated during install.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3103)
- **sct_label_vertebrae:** Change Error type so program doesn't quit when labels are too high. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3073)
- Set PYTHONNOUSERSITE=True to prevent user site packages from interfering. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3070)
- Bump ivadomed version to 2.5.0. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3034)
- **sct_label_vertebrae:** Fixed missing top disc label with using -discfile . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2990)
- **sct_label_vertebrae:** Obsolete -denoise functionality. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2985)
- Fix API importing scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2966)
**INSTALLATION**
- Remove tensorboard==1.14.0 version pinning from requirements.txt. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3185)
- Fixup realpath polyfill. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3123)
- Check that conda actually activated during install.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3103)
- Turn on stricter shell rules + maintainence. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3102)
- Add improvements to recent tensorflow-tensorboard fix. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3082)
- Fix version parsing to support Big Sur (11.0). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3053)
**DOCUMENTATION**
- Updated badge from travis.org to travis.com. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3165)
- Add the Twitter badge. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3162)
- Organize "Specific references" into clearer tables . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3133)
- Update references.rst. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3132)
- **sct_deepseg_sc:** Update reference. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3117)
- **sct_straighten_spinalcord:** Readability of parameters. Fixed -ldisc-input and -ldisc-dest typos. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3092)
- Documentation fixes. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3069)
- Update references. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3066)
- Fix link reference. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3061)
- **sct_run_batch:** Update sct_run_batch argparse descriptions to clarify '-itk-threads' usage. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3052)
- Update references. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3028)
- Enable fail on warning in RTD. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2980)
**ENHANCEMENT**
- Various improvements for the manual labeling of cord centerline. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3175)
- **sct_deepseg:** Add option to have a custom task. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3160)
- **sct_run_batch:** Print actual numbers of jobs run in parallel.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3109)
- Update tumor segmentation models. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3098)
- Change default option values to None. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3090)
- **sct_deepseg_sc,sct_detect_pmj,sct_propseg:** Implement -o flag for a few functions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3081)
- **sct_label_utils:** Update -create-viewer argument to use parse_num_list function. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3076)
- **sct_label_vertebrae:** Check that there is two inputs for initz. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3060)
- **sct_register_multimodal:** Introduced flags samplingStrategy and samplingPercentage for ANTs calls; Set default to 'None' to ensure reproducible results. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3050)
**REFACTORING**
- Refactor CLI init steps to be consistent across scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3091)
- Fix API importing scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2966)
**GIT/GITHUB**
- Add slightly modified PR template from shimming-toolbox. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3032)
## 5.0.1 (2020-11-12)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/5.0.0...5.0.1)
**CI**
- Travis: Add 10.15 (Catalina), update 10.14 (Mojave) image. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3018)
**BUG**
- **sct_process_segmentation:** Add missing type information to argument in sct_process_segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3039)
- Pin onnxruntime==1.4.0 to avoid libomp issue on macOS. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3037)
**DOCUMENTATION**
- **sct_label_utils:** sct_label_utils.py: Clarify -create-seg usage description. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3023)
- RTD: Re-enable showing version text underneath logo. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3021)
**ENHANCEMENT**
- **sct_run_batch:** sct_run_batch: handle the case of unexecutable script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3031)
- **sct_label_utils:** sct_label_utils.py: Add message for generated files. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3026)
- Display command when scripts are called from the command-line. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3020)
**REFACTORING**
- **sct_deepseg:** Refactor deepseg/core.py into sct_deepseg and update relevant test. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3022)
## 5.0.0 (2020-11-07)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.3...5.0.0)
**FEATURE**
- **sct_get_centerline,sct_qc:** Implement QC sct_get_centerline. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2784)
- **sct_run_batch:** Disabling progress bars. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2763)
- **sct_label_utils,sct_qc:** Implemented QC report for sct_label_utils. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2734)
**BUG**
- Logging and printing fixes. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3011)
- Restore subpackage module imports to fix test errors. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3010)
- Fix incorrect checking of input arguments. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2933)
- **sct_register_to_template:** sct_register_to_template: Fix '%' in argparse iCloud help links. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2928)
**INSTALLATION**
- **sct_utils:** Explicit listing of console scripts. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2759)
- Retrieve data bundles from their new location. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2733)
**DOCUMENTATION**
- Update sct_extract_metric help to fix RTD error + fix outdated usage. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3000)
- Add "Segmentation" tutorial to RTD that mirrors SCT course contents. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2991)
- fix doc build warnings + associated bug. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2955)
- Update Win10 WSL installation information (Move from Wiki to RTD, update recommendations for FSLEyes/WSL1). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2952)
- Update LICENSE to LGPLv3. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2899)
- Automatically show defaults in argparse help descriptions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2886)
**ENHANCEMENT**
- **sct_extract_metric:** Introduce flag to list labels. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/3012)
- **sct_register_to_template:** Fixes inconsistencies between PAM50 levels and cord. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2998)
- Use SystemExit not sys.exit & only on error paths.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2983)
- fsleyes: allow user to specify output folder. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2941)
- **sct_image:** sct_image: -copy-header should use -o as output file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2940)
- **sct_concat_transfo:** Deprecate sct_concat_transfo + refactor callers. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2914)
- **sct_maths:** sct_maths: Convert usage of convert_list_str to use list_type. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2901)
- **sct_run_batch:** Prevent crash if folder already exists. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2867)
- **msct_parser:** Convert 11-20 out of 20 remaining scripts from msct_parser to argparse. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2842)
- **sct_run_batch:** Fix thread reporting, early termination, and indentation error in sct_run_batch. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2827)
- **msct_parser:** Convert 1-10 out of 20 remaining scripts from msct_parser to argparse. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2819)
- **sct_apply_transfo:** Clarified cropping strategy for sct_apply_transfo; remove warning. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2811)
- **sct_run_batch:** Various improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2795)
- **sct_run_batch:** Introduced variable PATH_DATA_PROCESSED. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2787)
- **sct_deepseg:** Accommodate a cascade of deep learning models. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2748)
- Improvements for the FSLeyes plugin. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2741)
- **sct_run_batch:** Various improvements: create log, send email, config file, include/exclude list of subjects. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2732)
**REFACTORING**
- **msct_parser:** Remove msct_parser and clean up remaning usage. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2936)
- Convert argparse '0'/'1' options to be typed as ints rather than strings. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2900)
## 4.3 (2020-06-11)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.2.2...4.3)
**BUG**
- **sct_label_vertebrae:** Fixed -initlabel problem with file naming. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2738)
- **sct_utils:** Fix and move send_email. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2729)
- **sct_qc:** Fix out of order plots. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2722)
- **sct_label_utils:** sagittal dialog: fixes error when trying to access out of bound slice. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2694)
- **sct_register_multimodal:** Fixed forgot to reorient mask. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2660)
- **sct_label_vertebrae:** -initz flag and label value correction. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2641)
- **sct_qc:** Test for parallel qc crash. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2628)
- Replace parser.usage.generate with parser.error. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2621)
**ENHANCEMENT**
- **sct_download_data:** Moved sct_download_data functions to new download module. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2700)
- SCT logo fix in FSLeyes. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2657)
- **sct_run_batch:** Flag -s added to force sequential analysis even if GNU parallel is installed. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2635)
**FEATURE**
- Added useful formatting to compare SCT versions; introduced sct_version. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2723)
- **sct_get_centerline:** Fit centerline across all slices with input segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2646)
- **sct_deepseg,sct_download_data:** Centralized all deep learning segmentation tasks with new function "sct_deepseg" and refactored sct_download_data. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2639)
- **sct_dmri_moco,sct_fmri_moco:** Now possible to use soft mask, bug fixes and various improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2634)
- parameters_example.sh: Now defined a relative PATH_PARENT. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2619)
- **sct_maths:** Enable 2D kernel for morpho math operations and various improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2616)
- **sct_apply_transfo:** Fixed compatibility between SCT/ANTs and FSL warping fields. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2529)
**DOCUMENTATION**
- Fix argparse linewrap for R| strings. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2685)
- Added video recording of the London 2020 course. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2659)
- Update badge for discourse forum. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2656)
- **sct_dmri_concat_b0_and_dwi:** Clarified documentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2650)
- Added tutorial to install SCT with WSL for Windows users. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2643)
- Fixed README forum link. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2631)
**INSTALLATION**
- Drop support for 2014-era Linux.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2731)
- Minimal Torch install.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2715)
- **sct_dmri_moco,sct_fmri_moco:** Updated ANTs binaries to solve slow processing in some systems. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2642)
- Downgraded TensorFlow to 1.5 to fix AVX incompatibility. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2618)
**TESTING**
- Added CI for Windows Subsystem for Linux (WSL). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2698)
- **sct_get_centerline:** Relax test tolerance for centerline polyfit. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2686)
- Add polynomial function to dummy_segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2684)
- create_test_data: move to spinalcordtoolbox.testing. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2638)
## 4.2.2 (2020-02-28)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.2.1...4.2.2)
**BUG**
- **sct_maths:** Fixed missing type when using erode feature. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2613)
- **sct_crop_image:** Fixed flag -b crops instead of masking. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2606)
- **sct_crop_image:** Fixed problem with parameters xmax, ymax and zmax. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2604)
- **sct_deepseg_sc,sct_utils:** Check if input data is 3D or 2D. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2598)
**ENHANCEMENT**
- **sct_deepseg_gm,sct_deepseg_lesion,sct_deepseg_sc:** build(deps): bump tensorflow from 2.0.0 to 2.0.1. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2592)
- Added more functions to the FSLeyes plugin. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2581)
**DOCUMENTATION**
- **sct_qc:** Fixed QC display syntax for Docker users. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2589)
## 4.2.1 (2020-01-14)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.2.0...4.2.1)
**BUG**
- **sct_warp_template:** Fixed generation of QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2567)
- **sct_register_multimodal:** Fixed bug related to missing output file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2566)
**ENHANCEMENT**
- sct_utils: Changed default open command for Linux. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2578)
- **sct_deepseg_sc,sct_label_vertebrae:** Better error handling if installation files are missing and clarified help. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2560)
**INSTALLATION**
- Added gcc as installation pre-requisite with useful instructions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2577)
## 4.2.0 (2019-12-19)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.1.1...4.2.0)
**ENHANCEMENT**
- **sct_register_multimodal,sct_register_to_template:** New method for detecting rotation in centermassrot. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2331)
**FEATURE**
- **sct_register_to_template:** Spinal-level-based registration to the PAM50. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2513)
**DOCUMENTATION**
- Added info for running SCT via Vbox. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2551)
**INSTALLATION**
- Now using requirements-freeze.txt for installing stable releases. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2558)
- install/sct_changelog: Fixed bug when fetching previous release tag. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2550)
- Removed Darwin=15 case in requirements.txt and added OS checks during installation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2534)
## 4.1.1 (2019-11-28)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.1.0...4.1.1)
**BUG**
- **sct_register_to_template:** Fixed cropping of registered image. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2532)
- **sct_run_batch:** Fixed issue when passing absolute path to script. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2518)
**FEATURE**
- **sct_apply_transfo:** Added an option for keypoints transformation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2533)
- **sct_label_utils:** Now possible to add existing label from an external file in the create-viewer option. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2520)
**DOCUMENTATION**
- README: Added link to Youtube tutorials. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2521)
**INSTALLATION**
- **sct_viewer:** PyQt5 version downgrade to fix GUI on Debian 8.11 distros. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2524)
- **sct_check_dependencies:** Increased sensitivity of dependency testing. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2522)
## 4.1.0 (2019-10-26)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.0.2...4.1.0)
**BUG**
- **sct_compute_mtr:** Fixed aberrant mtr values. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2503)
- **sct_process_segmentation:** Fixed wrong orientation with new version of scikit-image. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2495)
- **sct_maths:** Fixed deprecation with adaptative thresholding. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2474)
- **sct_deepseg_sc:** Fixed segmentation issue that mostly appeared on DWI data. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2467)
- **sct_qc,sct_resample:** QC report: Fixed shift along slice direction between image and overlay. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2455)
- **sct_straighten_spinalcord:** Fixed shape mismatch during straightening. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2444)
- **sct_denoising_onlm:** Fix index error and display fsleyes command. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2432)
**ENHANCEMENT**
- **sct_resample:** Raise error if trying to resampling to size zero. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2507)
- **sct_deepseg_sc:** Fix deepseg threshold (again). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2490)
- **sct_deepseg_sc:** Fine-adjustment of threshold for binarization of soft segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2479)
- **sct_qc:** Fixed up/down dysfunction in the qc report . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2477)
- **sct_crop_image:** Improved CLI, fixed bug with the GUI and refactored into module. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2459)
- **sct_deepseg_sc:** Remove isolated voxels at the edge of the output segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2437)
- **sct_download_data:** Check if folder already exists by checking its actual name, not the name of the entry to -d flag. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2425)
**FEATURE**
- **sct_qc:** Added button to toggle overlay and removed automatic fading. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2514)
- **sct_dmri_concat_b0_and_dwi:** New script to concatenate b0 and dwi data. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2452)
- **sct_process_segmentation:** Compute cord length. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2431)
**DOCUMENTATION**
- Better management of CLI syntax in case mandatory arguments are missing. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2457)
**INSTALLATION**
- **sct_download_data:** Fixed issue that appeared when trying to remove temporary folder from different file systems. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2473)
## 4.0.2 (2019-09-04)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.0.1...4.0.2)
**BUG**
- **sct_straighten_spinalcord:** Fixed wrong input arguments. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2427)
- **sct_fmri_moco:** Replaced sct.mv with shutil.copyfile for tmp space issue. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2420)
## 4.0.1 (2019-08-17)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/4.0.0...4.0.1)
**BUG**
- **sct_dmri_compute_dti:** Fixed flag '-evecs' not detecting input as of type int. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2417)
- **sct_image:** Fixed -setorient-data giving wrong results. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2401)
- **sct_image:** Proper handling of int arguments contained in list type input. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2397)
- **sct_process_segmentation:** Fixed wrong morphometric measures with anisotropic in-plane resolution. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2396)
- Change canvas axes for image placement.. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2389)
**ENHANCEMENT**
- **sct_process_segmentation:** Corrected wrong slice information on QC output. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2408)
- **sct_apply_transfo:** Fixed q/sform on transformed image. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2400)
**INSTALLATION**
- **sct_resample:** Dropped dependency to nipy. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2414)
- Check if gcc is installed. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2410)
- Modify bashrc on sudo. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2409)
## 4.0.0 (2019-08-04)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.7...4.0.0)
**BUG**
- **sct_crop_image:** Fixed bug when using GUI (flag -g). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2325)
- **sct_label_vertebrae:** Fixed misplaced label in non-RPI data for initializing vertebral labeling. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2289)
- **sct_qc:** Fixed corruption of QC json file when running parallel jobs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2250)
- **sct_label_vertebrae:** Fixed bug that appeared when inputing uncompressed nifti file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2202)
- **sct_label_vertebrae:** Fixed bug in the post processing of detect_c2c3. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2201)
- **sct_propseg:** Fixed ignored -init flag and minor improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2198)
- **sct_deepseg_lesion,sct_deepseg_sc:** Fixed bug and clarified usage of -centerline viewer. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2183)
- **sct_dmri_moco,sct_fmri_moco:** Work around "too many open files" by slurping the data. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2163)
- **sct_straighten_spinalcord:** Fixed crash caused by wrong estimation of centerline length in case of incomplete segmentation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2154)
- **sct_extract_metric:** Fixed bug in method max. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2087)
- **sct_flatten_sagittal:** Fix bugs related to image scaling. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2070)
- **sct_label_vertebrae:** Fixed path issue when using -initlabel flag. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2068)
- **sct_get_centerline:** Convert data to float before intensity rescaling (in optic). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2065)
- **sct_deepseg_lesion,sct_deepseg_sc:** Fixed ValueError and IndexError. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2060)
- **sct_register_to_template:** Fixed regression bugs. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2052)
**ENHANCEMENT**
- batch_processing.sh: Replaced propseg by deepseg_sc. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2377)
- batch_processing.sh: QC report is now generated locally. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2370)
- **msct_parser:** Conversion from msct_parser to argparse. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2315)
- **sct_qc:** Allow the possibility to discard column of choice on the output html QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2301)
- **sct_process_segmentation,sct_straighten_spinalcord:** Improve quality of straightening. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2299)
- **sct_deepseg_lesion,sct_deepseg_sc:** Output segmentation in uint8 when input is float. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2297)
- **sct_qc:** Added automatic data sorting in the QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2295)
- **sct_fmri_moco:** Enabling the extraction of fMRI motion correction parameters. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2293)
- **sct_qc,sct_resample:** Fixed resampling method with reference image and improved speed for generating QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2285)
- **sct_compute_mtr:** Added output file and/or folder flag. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2264)
- **sct_compute_snr:** Make consistent STD calculation between sct_fmri_compute_tsnr and sct_compute_snr. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2263)
- Clarify handling of logger, error and exceptions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2221)
- **msct_register,sct_register_multimodal,sct_register_to_template:** Refactoring to allow use of im AND seg in the registration process. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2218)
- **sct_get_centerline,sct_straighten_spinalcord:** Increased smoothness of default bspline centerline fitting algorithm . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2214)
- **sct_get_centerline:** Remove Optic temp files by default. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2212)
- **sct_qc:** Lock qc report during generation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2206)
- **sct_process_segmentation:** Major modifications to simplify usage and fix various issues with shape analysis. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2200)
- **sct_process_segmentation:** Minor fix in usage and csv output. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2199)
- **sct_warp_template:** Faster execution and other minor improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2175)
- **sct_qc:** Various improvements on the QC report and resampling module. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2157)
- **sct_process_segmentation:** Major refactoring of centerline routine. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2147)
- **sct_label_vertebrae:** Removed support for -initc2 flag because there is an alternative approach with sct_label_utils. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2125)
- **sct_extract_metric:** Expose aggregate_slicewise() API and various improvements. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2115)
- **sct_register_to_template:** Updated PAM50 template header to be in the same coordinate system as the MNI template. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2102)
- **sct_qc:** Various improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2097)
- **sct_deepseg_lesion,sct_deepseg_sc:** deepseg_sc: Speed processing up . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2094)
- **sct_qc:** QC now scales images based on physical dimensions (previously based on voxels). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2089)
- **sct_process_segmentation:** Major refactoring to bring few improvements. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1931)
**FEATURE**
- **sct_qc:** Add CSA results on QC report . [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2306)
- **sct_extract_metric:** Added flag to combine all labels. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2291)
- **sct_dmri_compute_dti:** Output DTI Eigenvalues. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2274)
- **sct_qc:** New API to generate QC reports. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2216)
- **sct_label_vertebrae:** Added possibility to rescale intervertebral disc distance and various improvements. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2182)
- **sct_register_to_template:** Now possible to specify the type of algorithm used for cord straightening. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2101)
- **sct_label_vertebrae:** spinalcordtoolbox/vertebrae/detect_c2c3 -- New module. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2084)
- **sct_compute_snr:** Now possible to output SNR map, removed requirement for inputing mask, and few other improvements. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2080)
- **sct_dmri_separate_b0_and_dwi:** sct_dmri_separate_b0_and_dwi: Now append suffix to input file name to prevent conflicts. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2075)
- **sct_smooth_spinalcord:** Enable to set smoothing parameters in all axes. **WARNING: Breaks compatibility with previous versions of SCT.** [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2073)
**DOCUMENTATION**
- **sct_label_vertebrae:** Updated documentation on how to create vertebral and disc labels. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2107)
- **sct_changelog:** Few improvements on automatic Changelog generation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2077)
**INSTALLATION**
- Fixed compatibility with OSX 10.11 (El Capitan). [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2309)
- Fixed Keras/Tensorflow compatibility with CentOS 7 by downgrading to Python 3.6. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2276)
- Using Python 3.x for default installation. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2238)
- Fixed installation error caused by old SSL module. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2223)
- First pass at also supporting pip installations. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1996)
**TESTING**
- Travis: Adding distribs and displaying allow_failures. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2298)
- **sct_deepseg_lesion,sct_deepseg_sc:** Added new unit tests. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2159)
## v3.2.7 (2018-10-29)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.6...v3.2.7)
**BUG**
- sct_fmri_moco: Fixed regression bug related to the use of a mask [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2047)
- msct_nurbs: Fixed singular matrix error [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2042)
**ENHANCEMENT**
- sct_extract_metric: Do not zero negative values [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2049)
## v3.2.6 (2018-10-16)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.5...v3.2.6)
**BUG**
- sct_propseg: Reordered variable assignment [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2039)
- sct_straighten_spinalcord: Fixed AttributeError related to conversion of numpy array to list [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2026)
- sct_create_mask: Few fixes and improvements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2021)
**ENHANCEMENT**
- sct_get_centerline: Use the new viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2035)
- sct_fmri_moco: Generalize motion correction for sagittal acquisitions and other improvements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2022)
**FEATURE**
- sct_straighten_spinalcord: Few fixes and improvements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2033)
- sct_deepseg_sc/lesion: Allow to input manual or semi-manual centerline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2020)
## v3.2.4 (2018-08-24)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.3...v3.2.4)
**BUG**
- Updated URL for PAM50 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1997)
- sct_register_to_template: Fixed wrong projection in case labels not in same space [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1978)
- sct_extract_metric: Fixed recently-introduced bug related to output results [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1965)
**ENHANCEMENT**
- Few fixes in sct_extract_metric and batch processing outputs [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/2008)
- sct_dmri_compute_dti: Output tensor eigenvectors [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1975)
- Totally pimp the Image Slicer (to act like a sequence, to slice many images), and add unit tests for the slicer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1956)
- Second pass at image refactoring [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1948)
## v3.2.3 (2018-07-21)
This release notably brings a useful feature, which now makes it possible to use single-label with -l flag for registration to the template. This feature was required by the recently-introduced [analysis pipeline for multi-parametric data when FOV is systematically centered at a particular disc or mid-vertebral level](https://github.com/sct-pipeline/multiparametric-fixed-fov). [View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.2...v3.2.3)
**BUG**
- `sct_register_multimodal`: Fixed bug when using partial mask with algo=slicereg [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1917)
**ENHANCEMENT**
- `sct_propseg`: Labels and centerline are now output with correct header if -rescale is used [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1926)
- Adding a batch size of 4 for all deep learning methods. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1924)
**FEATURE**
- `sct_register_to_template`: Enable single-label with -l flag [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1955)
## v3.2.2 (2018-07-08)
Major changes to this release include a fix to SCT installation on OSX laptops with non-English encoding language. Another important fix is the inclusion of the link in `sct_download_data` for downloading the Paris'18 SCT course material. A nice enhancement is the possibility to calculate metrics slice-wise or level-wise in `sct_extract_metric`. View detailed changelog
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.1...v3.2.2)
**BUG**
- sct_label_vertebrae: Added subcortical colormap for fslview [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1883)
- sct_flatten_sagittal: Fixed wrong indexation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1882)
**ENHANCEMENT**
- sct_deepseg_gm: Lazy loading module: now faster when calling usage [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1908)
- sct_propseg: Now possible to rescale data header to be able to segment non-human spinal cord (mice, rats, etc.) [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1903)
- sct_deepseg_gm: Adding TTA (test-time augmentation) support for better segmentation results [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1894)
- sct_deepseg_gm: Removed restriction on the network input size (small inputs): Fixes bug that appeared when inputting images with small FOV [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1877)
- sct_deepseg_sc: Reducing TensorFlow cpp logging verbosity level [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1876)
- sct_extract_metric: Now possible to calculate metrics slice-wise or level-wise [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1875)
**DOCUMENTATION**
- Added documentation for installing SCT on Windows using Docker [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1879)
- Added information on the README about how to update SCT from git install [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1867)
- Updated documentation and added link to the data for the SCT course in Paris [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1858)
**INSTALLATION**
- Use pip install -e spinalcordtoolbox to gain flexibility [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1892)
- Local language support (LC_ALL) added to installation& launcher on macOS [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1881)
**TESTING**
- Removed sct_register_graymatter (obsolete old code) from sct_testing functions [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1904)
- Implemented multiprocessing and argparse in sct_testing, and other improvements related to Sentry [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1872)
## 3.2.1 (2018-06-12)
This release fixes a few bugs, notably one related to template registration when using disc-based alignment. It also features an improved version of sct_deepseg_sc with the introduction of 3D kernel models, as well as a more accurate segmentation on T1-weighted scans. The main documentation now includes a link to a new collection of repositories: sct-pipeline, which gathers examples of personalized analysis pipelines for processing spinal cord MRI data with SCT. [View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.2.0...3.2.1)
**BUG**
- Skip URL if filename isn't provided by HTTP server; catch anything in URL try loop [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1843)
- Fixed registration issue caused by labels far from cord centerline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1828)
- Fixed wrong disc labeling and other minor improvements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1814)
- Added test to make sure not to crop outside of slice range [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1813)
- Forcing output type to be float32 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1800)
- Fixed z_centerline_voxel not defined if -no-angle is set to 1 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1797)
**ENHANCEMENT**
- Adding threshold (or not) option for the sct_deepseg_gm [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1846)
- Manual centerline is now output when using viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1840)
- Added CNN for centerline detection, brain detection and added possibility for 3d CNN kernel [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1822)
- Fixed verbose in QC, integrated coveralls [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1808)
- Now possible to specify a vertebral labeling file when using -vert [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1798)
**DOCUMENTATION**
- Added link to github.com/sct-pipeline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1796)
**INSTALLATION**
- Adapted final verbose if user decided to not modify the .bashrc [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1832)
**TESTING**
- Coveralls added to Travis to prevent build failure [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1847)
## 3.2.0 (2018-05-29)
This release includes: a new example dataset (now includes T2*-w and fMRI data) with an updated batch_processing.sh, a new function to compute MT-saturation effect (sct_compute_mtsat), an improved straightening that can account for inter-vertebral disc positions to be used alongside sct_register_to_template for more accurate registration, and few improvements on sct_pipeline and quality control (QC) report generation. [View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.1.1...3.2.0)
**BUG**
- Fixed sct_pipeline if more than two -p flags are used [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1760)
- Fixed re-use of the same figure during QC generation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1711)
- sct_deepseg_sc - Issue when input is .nii instead of .nii.gz [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1706)
- Fslview no more called at the end of process if it it deprecated [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1648)
- Fixing the TensorFlow installation for some old platforms. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1646)
- Re-ordering of 4th dimension when apply transformation on 4D scans [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1638)
- Fix "-split" option issues on sct_image [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1627)
**ENHANCEMENT**
- Updated batch_processing and sct_example_data with new features [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1779)
- Various fixes for sct_pipeline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1771)
- sct_pipeline: store metadata in Pickle report [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1761)
- Adding volume-wise standardization normalization for the sct_deepseg_gm [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1757)
- Make sct_get_centerline robust to intensities with range [0, 1] [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1746)
- Improved doc and minor fixes with centerline fitting [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1736)
- Make sct_process_segmentation compatible with the new ldisc convention [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1735)
- Removed flirt dependency [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1729)
- More pessimistic caching of outputs [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1719)
- Slice counting fixed [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1687)
- output of -display ordered per label value [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1686)
- Improvements in straightening and registration to the template [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1669)
- The QC report is now a standalone html file. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1668)
- Adding a port option for the qc server [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1657)
- Make QC generation opt-in [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1653)
- Fixing cropping issue in sct_straighten_spinalcord [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1652)
- Set MeanSquares the default metric for sct_fmri_moco [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1649)
- Now possible to change data orientation on 4D data [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1637)
- Use python concurrent.futures instead of multiprocessing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1587)
**FEATURE**
- New function to create violin plots from sct_pipeline results [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1759)
- Enable input file with label at a specific disc [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1698)
- Control the brightness of the image in the GUI. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1684)
- Implements MTsat function [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1672)
- Improvements in straightening and registration to the template [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1669)
- Integration of SCT into fsleyes UI [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1629)
- Add Sentry error reporting [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1544)
## 3.1.1 (2018-02-16)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.1.0...3.1.1)
**BUG**
- Fix TensorFlow installation on Debian [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1601)
- BUG: Fixed a small bug on None condition [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1594)
- Fixed missing output [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1581)
- Bug fix and various improvements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1571)
- Now working for 2d data [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1565)
- Fix Timer with progress [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1554)
- BUG: concat_transfo: fixed wrong catch of dimension [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1534)
- reinstall only current numpy version [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1520)
- Enable the calculation of spinal cord shape at the edge of the image [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1517)
- Disabling rotation in register to template [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1516)
**ENHANCEMENT**
- Adding minimal Dockerfile for SCT. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1600)
- Bug fix and various improvements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1571)
- Find mirror servers in case OSF is not accessible [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1567)
- Now supports fsleyes when displaying viewer syntax at the end of a process [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1533)
**FEATURE**
- sct_deepseg_sc implementation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1586)
- sct_deepseg_gm implementation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1564)
**TESTING**
- Fixed minor verbose issues during testing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1582)
## v3.1.0 (2017-10-27)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.8...v3.1)
**BUG**
- Fix errors in create_atlas.m [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1499)
- Fix a regression bug. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1490)
- Used the absolute path to create the temporary label file in propseg [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1487)
- Fixed: Optic is used by default if -init-mask is used with external file provided [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1485)
- Fixed global dependency in sct_process_segmentation call [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1481)
- Fixed z-regularization for slicereg [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1465)
**ENHANCEMENT**
- Fixed: Raise in sct.run in bad order. Also added specific sct errors [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1503)
- More improvements to the viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1496)
- Refactored WM atlas creation pipeline and improved documentation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1492)
- Option to install SCT in development mode [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1491)
- Added key bindings to the undo, save and help actions. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1480)
- Introduced the zoom functionality to the anatomical canvas [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1477)
- Improvements on centerline for template generation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1473)
- Major refactoring of testing framework [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1453)
**FEATURE**
- Improvement of sct_analyze_lesions: compute percentage of a given tract occupied by lesions [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1500)
- sct_get_centerline: new manual feature [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1467)
- sct_detect_pmj: new_feature [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1466)
**TESTING**
- Major refactoring of testing framework [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1453)
## v3.0.8 (2017-09-13)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.7...v3.0.8)
**BUG**
- Added try/except for QC report [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1457)
- Conversion issue for float32 images with large dynamic [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1450)
- (Partly-)Fixed bug related to memory issue with diagonalization [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1446)
- DEV: fixed bug on centerline when referencing to the PMJ [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1436)
**ENHANCEMENT**
- Now possible to input single label at disc (instead of mid-body) [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1451)
- Now using N-1 instead of N as denominator for computing the STD. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1441)
**FEATURE**
- Function to analyze lesions #1351 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1439)
## v3.0.7 (2017-08-02)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.6...v3.0.7)
**BUG**
- The params attributes are initialized to the type integer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1431)
- Fixing stdout issue on sct_testing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1430)
- Changed destination image for concatenation of inverse warping field [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1413)
- crashes if apply transfo on 4d images [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1408)
- Allow the -winv parameter to write a file to disk [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1404)
- Change import path of resample [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1401)
- Precision error while calculating Dice coefficient #1098 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1398)
**ENHANCEMENT**
- Enables to set Gaussian weighting of mutual information for finding C2-C3 disk [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1422)
- Adapt concat and apply transfo to work on 2d images [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1420)
- Fixed small issues in pipeline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1417)
- Use custom template for sct_register_graymatter [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1407)
- compute_ernst_angle: set the parameter t1 default value to optional value of 850ms [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1400)
- Improvements on centerline and template generation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1378)
**FEATURE**
- NEW: dmri_display_bvecs: new function to display bvecs [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1394)
- Function to extract texture features #1350 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1376)
**TESTING**
- Various fixes to pipeline and testing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1424)
- New test for sct_label_utils compatible with sct_pipeline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1402)
**DOCUMENTATION**
- Changed default values and clarified doc [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1405)
## v3.0.6 (2017-07-04)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.5...v3.0.6)
**BUG**
- Catch the OSError exception thrown when the git command is missing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1396)
- BUG: register_multimodal: fixed typo when calling isct_antsRegistration [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1392)
- BUG: fix bug when slice is empty [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1390)
- Ignore using user packages when install with conda and pip [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1384)
- Fix referential for JIM centerline [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1377)
- image/pad: now copy input data type (fixes issue 1362) [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1363)
- Use a pythonic way to compare a variable as None [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1361)
- The init-mask accepts "viewer" as a value [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1357)
- Fixed unassigned variable in case -z or -vert is not used [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1354)
**ENHANCEMENT**
- Restrict deformation for ANTs algo [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1388)
- Made error message more explicit if crash occurs [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1387)
- Insert previous and next buttons in the qc reports page [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1358)
- integrate new class for multiple stdout inside sct_check_dependencies [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1342)
**DOCUMENTATION**
- Update README.md [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1346)
**INSTALLATION**
- Ignore using user packages when install with conda and pip [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1384)
- Update sct testing data [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1370)
- Added the dependency psutil in the conda requirements [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1359)
- Added egg files in the list of gitignore [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1355)
## v3.0.5 (2017-06-09)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.4...v3.0.5)
**BUG**
- Force numpy 1.12.1 on osx and linux [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1352)
- Use a different function to identify if a file exists [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1341)
- Fixing an issue introduced with the sct_get_centerline. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1338)
**ENHANCEMENT**
- Binarize GM seg after warping back result to original space [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1347)
- Generation of centerline as ROI [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1344)
**FEATURE**
- Introduce a pipeline to use the HPC architecture [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1260)
## v3.0.4 (2017-05-19)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.3...v3.0.4)
**BUG**
- Normalize the init value to between 0 and 1 for propseg [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1324)
- Moved the QC assets into the spinalcordtoolbox package [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1311)
- Improved the formatting of the changelog generator [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1303)
- Show remaining time status for downloads [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1299)
**ENHANCEMENT**
- Added the command parameter `-noqc` [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1313)
- Add dimension sanity checking for input file padding op [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1304)
**FEATURE**
- Introducing spinal cord shape symmetry [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1332)
**TESTING**
- Validate the function name in sct_testing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1305)
- Fix regression bug in sct_testing [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1310)
## v3.0.3 (2017-04-26)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.2...v3.0.3)
**BUG**
- Fixes case if data image, segmentation and labels are not in the same space [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1292)
- Fix the handling of the path of the QC report. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1285)
- Change the format of the SCT version. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1284)
- changed the DISPLAY variable due to conflicts with FSLView in batch_processing.sh [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1281)
**INSTALLATION**
- Added course_hawaii17 into the list of available dataset from sct_download_data [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1291)
- Incorrect variable when installing SCT in a different directory [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1289)
**DOCUMENTATION**
- Added description with examples in the register_to_template command (#1262) [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1287)
- Fixed typo in register_multimodal command [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1276)
## v3.0.2 (2017-04-20)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.1...v3.0.2)
**BUG**
- Force the SCT environment to use only the python modules installed by SCT [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1266)
- Fixing disabling options on straightening [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1255)
- Fixed tSNR computation of the mean and std of the input image [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1245)
- Increased the data type size from the default int16 to int32 to avoid overflow issues in sct_process_segmentation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1224)
- Fixed data type issue in sct_process_segmentation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1223)
**ENHANCEMENT**
- Improvements to denoising on sct_segment_graymatter [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1265)
- Extend the functionality of sct_viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1254)
- Add OptiC for improved spinal cord detection [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1253)
- Introduction spinalcordtoolbox python setup file [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1243)
**FEATURE**
- Add option -rms to perform root mean square (instead of mean) in sct_maths [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1256)
- Introduce QC report generation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1251)
- Introduce the QC html viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1250)
**TESTING**
- Introduce the QC html viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1250)
- Introduce python package configuration file (setup.cfg) [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1242)
## v3.0.1 (2017-03-22)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0.0...v3.0.1)
### FEATURE
- Merge multiple source images onto destination space. [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1220)
## v3.0.0 (2017-03-15)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0_beta32...v3.0.0)
### BUG
- Modifying the type of coordinates for vertebral matching [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1206)
- Removing discontinuities at edges on segmentation [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1196)
- BUG: computing centreline using physical coordinates instead of voxel… [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1189)
- Fix issue #1172: -vertfile as an optional parameter [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1173)
- Improvements to the viewer of sct_propseg [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1169)
- Removed confusion with command variables when using PropSeg viewer [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1161)
- Patch sct_register_to_template with -ref subject [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1158)
- zero voxels no more included when computing MI + new flag to compute normalized MI [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1136)
### ENHANCEMENT
- Changed default threshold_distance from 2.5 to 10 to avoid edge effect [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1183)
- Adapt sct_create_mask and sct_label_utils to 2D data [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1180)
- Improvements to the viewer of sct_propseg [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1169)
### TESTING
- OPT: display mean and std instead of mean twice [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1187)
## 3.0_beta32 (2017-02-10)
[View detailed changelog](https://github.com/spinalcordtoolbox/spinalcordtoolbox/compare/v3.0_beta31...v3.0_beta32)
### BUG
- BUG: install_sct: fixed PATH issue (#1153): closed at 2017-02-08 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1154)
- BUG: compute_snr: fixed variable name: closed at 2017-02-03 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1148)
- Changed the algorithm to fetch the download filename: closed at 2017-02-03 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1146)
- Copy header of input file to ensure qform is unchanged: closed at 2017-01-31 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1137)
- zero voxels no more included when computing MI + new flag to compute normalized MI: closed at 2017-02-01 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1136)
- Downloading the binaries using the python module instead of CURL: closed at 2017-01-30 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1134)
- [sct_segment_graymatter] correct background value: closed at 2017-01-31 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1133)
- Fixing indexes issue on Travis OSX: closed at 2017-01-17 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1115)
- REF: display spinal cord length when required (full spinal cord): closed at 2017-01-17 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1112)
- Adding rules for in-segmentation errors: closed at 2017-01-17 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1110)
### ENHANCEMENT
- Generate a changelog from GitHub: closed at 2017-02-10 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1152)
- OPT: maths: visu only produced if verbose=2: closed at 2017-02-02 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1147)
### TESTING
- Add message to user when spinal cord is not detected and verbose improvement for testing: closed at 2017-02-01 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1145)
- Display results of isct_test_function: closed at 2017-01-20 [View pull request](https://github.com/spinalcordtoolbox/spinalcordtoolbox/pull/1117)
## 3.0_beta31 (2017-01-16)
- BUG: **sct_process_segmentation** display spinal cord length when required (full spinal cord) (#1112)
- BUG: **sct_propseg** Adding rules for in-segmentation errors (#1110)
- BUG: PAM50: probabilist templates of WM and GM not sum to 1 (#411)
- BUG: **sct_propseg**: fixed edge issue (#1074)
- BUG: **sct_label_vertebrae**: fixed temporary folder not created (#1083)
- BUG: **isct_test_function**: fixed temp folder of subject being created inside test folder of another subject (#1084)
- BUG: **sct_apply_transfo**: fixed TR field on NIFTI is lost (#1013)
- BUG: **sct_register_graymatter**: fixed empty inverse warping field (#1068)
- OPT: **sct_label_vertebrae**: now outputing verbose=2 pics in ofolder (#1094)
- OPT: **sct_straighten_spinalcord**: fixed Reduce required RAM (#979)
- OPT: **sct_straighten_spinalcord**: removes accuracy computation by default (#1075)
- OPT: **sct_propseg**: improve robustness towards exception (#207)
- OPT: **isct_test_function**: send email when finished (#1081)
- OPT: **isct_test_function**: removed color tags on log entries (#1035)
## 3.0_beta29 (2016-12-13)
- NEW: PAM50 template now used as the default template
- NEW: **sct_compute_snr**: compute SNR using several methods (Dietrich et al. 2007)
- NEW: **sct_propseg**: now accepts a correction solution for sct_propseg in case of missing CSF/SC contrast and/or artefacts (see issue #664 for details)
- NEW: **sct_propseg**: added flag to open a viewer for initializing spinal cord segmentation by manually providing a few points (issue #741)
- NEW: **install_sct**: new installer, which downloads the necessary data (i.e., lighter package).
- NEW: SCT now includes its own python (from miniconda), which simplifies the installation and allows users to have another Python installed without generating conflicts.
- NEW: **sct_dmri_create_noisemask**: Identification and estimation of noise in the diffusion signal, implemented by the Dipy software project (http://nipy.org/dipy/), based on the PIESNO method
- NEW: **sct_register_graymatter**: Multi-label registration that accounts for gray matter shape.
- NEW: **sct_register_multimodal**: features two new transformations: centermassrot and columnwise.
- NEW: **sct_register_multimodal**: flag smoothWarpXY: regularization of warping field (only for algo=columnwize)
- NEW: **sct_register_multimodal**: flag pca_eigenratio_th: Min ratio between the two eigenvalues for PCA-based angular adjustment (only for algo=centermassrot).
- NEW: **sct_create_mask**: now compatible with 2D data (#1066)
- NEW: **sct_maths**: computes mutual information and cross-correlation between images (#1054)
- BUG: **sct_straighten_spinalcord**: Fixed #917, #924, #1063
- BUG: Fixed issues #715, #719
- BUG: **sct_propseg**: fixed issues #147, #242, #309, #376, #501, #544, #674, #680
- BUG: **sct_segment_graymatter**: fixed issues #782, #813, #815
- BUG: **sct_register_graymatter**: fixed issue #1068
- BUG: Fixed incompatibility with CENTOS 6.X (issue #776)
- BUG: Binaries now hosted on Gihub for accessibility from China (#927)
- BUG: **sct_resample**: Fixed slight image shift caused by resampling (#612)
- OPT: **sct_check_dependencies**: Made test more sentitive to OS incompatibilities (issue #771)
- OPT: **sct_register_multimodal**: major changes. Simplified flags. Fixed issues #350, #404, #414, #499, #650, #735, #737, #749, #807, #818, #1033, #1034
- OPT: **sct_register_to_template**: now uses slicewise rigid transfo at first step (instead of slicereg), which improves accuracy (issue #666)
- OPT: **sct_register_to_template**: added contrast for registration: t2s
- OPT: **sct_label_vertebrae**: now fully automatic (although unstable-- work in progress).
- OPT: **sct_testing**: added integrity testing for CSA computation (#1031)
- REF: **sct_testing**: sct_testing_data is now hosted on GitHub-release for better tracking and across-version compatibility.
## 3.0_beta28 (2016-11-25)
- BUG: **sct_process_segmentation**: Fixed issue related to calculation of CSA (#1022)
- BUG: **sct_label_vertebrae**: Fixed Vertebral labeling removes first vertebrae in the labelled segmentation (#700)
- OPT: **sct_register_multimodal**: Now possible to input initial warping field (#1049)
- OPT: **sct_register_multimodal**: Added feature to be able to input two pairs of label image for estimating affine/rigid/nonrigid transformation (#661)
- OPT: **sct_extract_metric**: Added weighted-Maximum a posteriori extraction method (#1018)
- OPT: Remove color tags on log entries (#1035)
## 3.0_beta27 (2016-10-23)
- NEW: **sct_extract_metric**: method "max" to extract CSA value form interpolated volume (e.g. PAM50 space) without partial volume bias
## 3.0_beta26 (2016-10-05)
- INST: Fixed #992, #1004, #1008, #1012
## 3.0_beta25 (2016-09-30)
- OPT: Fixed #875
- INST: Fixed #1007, #1009
## 3.0_beta24 (2016-09-28)
- BUG: Fixed #870, #898, #859, #871, #1005, #750, #444, #878, #1000
- INST: Fixed issue with matplotlib version 1.5.3
## 3.0_beta23 (2016-09-18)
- BUG: Fixed #984, #983, #954, #978, #987, #938, #964, #638, #969, #922, #855
- OPT: **sct_register_to_template**: added a flag "-ref" to be able to register to anisotropic data
## 3.0_beta22 (2016-09-09)
- BUG: Fixed #994, #989, #988, #976, #968
## 2.2.3 (2016-02-04)
- BUG: **sct_straighten_spinalcord**: fixed instabilities related to generation of labels (issue #722)
## 2.2.2 (2016-01-31)
- OPT: **sct_dmri_moco**: added flag "-bvalmin" to specify b=0 threshold and improved reading of bval file.
## 2.2.1 (2016-01-29)
- BUG: **sct_dmri_moco**: fixed bug related to the use of mask
- BUG: **sct_dmri_moco**: fixed bug in the algorithm (iterative average of target DWI volume)
## 2.2 (2016-01-23)
- BUG: Fixed major issue during installation (issue #708)
- BUG: **sct_process_segmentation**: fixed bug occuring with small FOV (issue #706)
## 2.1.1 (2016-01-15)
- BUG: **sct_resample**: fixed issue #691
- OPT: **sct_segment_graymatter**: improved robustness of normalization
- OPT: **sct_process_segmentation**: default parameter does not smooth CSA results anymore
## 2.1 (2015-12-01)
- NEW: **sct_testing**: test SCT functions and their integrity
- NEW: **sct_maths**: performs basic operations on images. Similar to fslmaths.
- NEW: **sct_get_centerline -method auto**: uses advanced image processing methods for finding the spinal cord centerline automatically on any type of contrast. This script should be followed by sct_propseg for finer cord segmentation.
- NEW: **sct_label_vertebrae**: can automatically label vertebral levels given an anatomical scan, a centerline and few prior info.
- NEW: **sct_segment_graymatter**: segment spinal cord gray matter using multi-atlas approach from Asman et al.
- NEW: **sct_process_segmentation**: feature to estimate CSA based on labels
- NEW: **sct_label_utils**: new functionality for creating labels based on vertebral labeling
- NEW: added "-qc" flag to some functions to output png images for quality control.
- BUG: **install_patch**: now possible to install as non-admin (issues #380, #434)
- BUG: **sct_extract_metric**: fix the case when averaging labels from different clusters with method map
- INST: no more dependence with FSL
- INST: no more dependence with c3d
- OPT: **sct_straighten_spinalcord**: improved accuracy (issues #371, #425, #452, #472)
- OPT: **sct_registration_to_template**: improved accuracy
- REF: harmonization of flags. Most flags from v2.0 still work but a message of deprecation is sent.
## 2.1_beta21 (2015-11-30)
- **sct_process_segmentation**: fixed issue with computation of volume based on vertebral level (slice selection now using centerline)
## 2.1_beta20 (2015-11-30)
- fixed compatibility with new PAM50 template
## 2.1_beta19 (2015-11-25)
- harmonized flags
- **sct_process_segmentation**: now computes volume
## 2.0.6 (2015-06-30)
- BUG: **sct_process_segmentation**: fixed bug of output file location (issue #395)
## 2.0.5 (2015-06-10)
- BUG: **sct_process_segmentation**: fixed error when calculating CSA (issue #388)
## 2.0.4 (2015-06-06)
- BUG: **sct_process_segmentation**: fixed error when calculating CSA (issue #388)
- BUG: Hanning smoothing: fixed error that occurred when window size was larger than data (issue #390)
- OPT: **sct_check_dependencies**: now checks if git is installed
- OPT: simplified batch_processing.sh
## 2.0.3 (2015-05-19)
- BUG: **sct_register_to_template**: fixed issue related to appearance of two overlapped templates in some cases (issue #367)
- BUG: **sct_register_to_template**: now all input data are resampled to 1mm iso to avoid label mismatch (issue #368)
- BUG: **sct_resample**: fixed bug when user specified output file
- OPT: **sct_create_mask**: improved speed
## 2.0.2 (2015-05-16)
- BUG: **sct_fmri_compute_tsnr**: fixed issue when input path includes folder
- BUG: **sct_orientation**: now possibility to change orientation even if no qform in header (issue #360)
- BUG: **msct_smooth**: fixed error with small Hanning window (issue #363)
- BUG: **sct_straighten_spinalcord**: fixed issue with relative path (issue #365)
- NEW: **sct_label_utils**: added new function to transform group of labels into discrete label points
- NEW: **sct_orientation**: added a tool to fix wrong orientation of an image (issue #366)
- OPT: **sct_register_to_template**: twice as fast! (issue #343)
## 2.0.1 (2015-04-28)
- BUG: **sct_extract_metric**: MAP method did not scale properly with the data. Now fixed (issue #348)
- BUG: fixed issue with parser when typing a command to see usage (it crashed)
## 2.0 (2015-04-17)
- NEW: **sct_fmri_compute_tsnr**: new function to compute TSNR from fMRI data (performs moco before)
- OPT: **sct_straighten_spinalcord**: now MUCH faster and more accurate (issue #240)
- OPT: **sct_register_to_template**: allows more flexibility by allowing multiple steps for registration (flag -p).
- N.B. flag "-m" has been replaced by "-s"
- OPT: **sct_register_multimodal**: allows more flexibility by imposing only one stage. Several stages can be run sequentially and then transformations can be concatenated.
- N.B. flags "-s" and "-t" were replaced with "-iseg" and "-dseg" respectively
- OPT: **sct_extract_metric**:
- new methods for extraction: maximum likelihood and maximum a posteriori, which take into account partial volume effect
- now possible to specify global regions for extraction with flag -l: wm, gm, sc
- now possible to include a bunch of labels using ":". Example: 2:29
- NEW: **sct_get_centerline_from_labels**: obtain a centerline using a combination of labels and/or segmentations
- N.B. sct_get_centerline was renamed for sct_get_centerline_automatic
- NEW: **sct_compute_ernst_angle**: new script to compute and display Ernst angle depending on T1 and TR
- OPT: **sct_process_segmentation**:
- can compute average CSA across vertebral levels or slices
- can compute length of segmentation
- can compute CSA on non-binary images such as probabilistic gray/white matter maps
- N.B. process names were simplified to: "csa", "length" and "centerline"
- OPT: **sct_crop_image**: now possible to crop an image based on a reference space
- OPT: new WM atlas: added gray matter and CSF for computing partial volume
- OPT: now use all available cores for ANTs and adjust variable when running dmri_moco (issue #238)
- INST: new installer in python, simpler to use and check for latest patches
- REF: msct_parser: new parser that generate documentation/usage
- REF: msct_image, sct_label_utils: smoothly converting the toolbox to objet-oriented, some scripts can be used as python module
## 1.1.2_beta (2014-12-25)
- BUG: sct_dmri_moco: fixed crash when using mask (issue # 245)
- OPT: sct_create_mask: (1) updated usage (size in vox instead of mm), (2) fixed minor issues related to mask size.
- INST: links are now created during installation of release or patch (issue ).
## 1.1.1 (2014-11-13)
- FIX: updated ANTs binaries for compatibility with GLIBC_2.13 (issue: https://sourceforge.net/p/spinalcordtoolbox/discussion/help/thread/e00b2aeb/)
## 1.1 (2014-11-04)
- NEW: sct_crop: function to quickly crop an image.
- NEW: sct_extract_metric (replaces the old sct_estimate_MAP_tracts.py). New functionalities added (maximum likelihood estimation and tract grouping). More flexible with label files.
- NEW: sct_convert_mnc2nii
- NEW: sct_create_mask: create mask of different shapes (cylinder, box, gaussian). Useful for moco.
- NEW: sct_fmri_moco: motion correction function for fMRI data. Uses regularization along z.
- NEW: sct_compute_mtr: compute MTR
- NEW: sct_otsu: OTSU segmentation (usefull for DWI data)
- NEW: sct_resample: quick upsample/downsample 3D or 4D data
- NEW: sct_segment_greymatter: function to segment the grey matter by warping that one from the atlas
- OPT: sct_orientation can now be applied to 4d data
- OPT: sct_register_multimodal now using the new antsSliceReg method that regularizes along z.
- OPT: new version of the white matter atlas: more accurate, deformation accounting for internal structure (use BSplineSyN instead of SyN).
- OPT: sct_dmri_moco now using the new antsSliceReg method that regularizes along z.
- OPT: removed all .py extensions for callable functions (created links)
- OPT: sct_label_utils: now possible to create labels. Also added other useful features.
- INST: now possible to specify installation path for the toolbox
- INST: conda dependences are now automatically installed by the installer.
- INST: added pillow (fixed issue #117)
- INST: "getting started" now provided via example commands in batch_processing.sh
- REF: sct_straighten_spinalcord (fixed issues #56, #116)
- TEST: major changes on the testing framework for better modularity with Travis. Now using separate small dataset.
## 1.0.3 (2014-07-30)
- BUG: fixed bug in sct_process_segmentation.py related to import of scipy.misc imsave,imread in miniconda distrib (issue #62)
- BUG: fixed bug in sct_process_segmentation.py related to import of PIL/Pillow module (issue #58)
- OPT: sct_register_multimodal now working for images with non-axial orientation (issue #59)
- OPT: sct_register_straight_spinalcord_to_template has now been replaced by sct_register_multimodal in sct_register_to_template.
- OPT: major improvements for sct_dmri_moco, including spline regularization, eddy correction, group-wise registration, gaussian mask.
- OPT: sct_check_dependencies.py can now output log file and do extensive tests (type -h for more info)
- NEW: sct_apply_transfo.py: apply warping field (wrapper to ANTs WarpImageMultiTransform)
- NEW: sct_concat_transfo.py: concatenate warping fields (wrapper to ANTs ComposeMultiTransform)
- NEW: batch_processing.sh: example batch for processing multi-parametric data
## 1.0.2 (2014-07-13)
- NEW: virtual machine
- BUG: fixed sct_check_dependencies for Linux
- BUG: fix VM failure of sct_register_to_template (issue #41)
- OPT: sct_register_to_template.py now registers the straight spinal cord to the template using sct_register_multimodal.py, which uses the spinal cord segmentation for more accurate results.
## 1.0.1 (2014-07-03)
- INST: toolbox now requires matplotlib
## 1.0 (2014-06-15)
- first public release!
## 0.7 (2014-06-14)
- NEW: dMRI moco
- INST: libraries are now statically compiled
- OPT: propseg: now results are reproducible (i.e. removed pseudo-randomization)
## 0.6 (2014-06-13)
- Debian + OSX binaries
- BUG: fixed registration2template issue when labels were larger than 9
- BUG: fixed bug on PropSeg when the image contains a lot of null slices
- INST: now installer write on bashrc and links bash_profile to bashrc
- BUG: removed random parts in PropSeg
## 0.5 (2014-06-03)
- now possible to get both template2EPI and EPI2template warping fields
- fixed major bug in registration (labels were cropped)
- NEW: probabilistic location of spinal levels
- NEW: binaries for Debian/Ubuntu
## 0.4 (2014-05-28)
- NEW: installer for ANTs (currently only for OSX)
- fixed bugs
## 0.3 (2014-05-26)
- major changes in sct_register_multimodal
- fixed bugs
## 0.2 (2014-05-18)
- NEW: nonlocal means denoising filter
- NEW: sct_smooth_spinalcord --> smoothing along centerline
- fixed bugs
## 0.1 (2014-05-03)
- first beta version!