sct_denoising_onlm

Utility function to denoise images. Return the denoised image and also the difference between the input and the output. The denoising algorithm is based on the Non-local means methods (Pierrick Coupe, Jose Manjon, Montserrat Robles, Louis Collins. “Adaptive Multiresolution Non-Local Means Filter for 3D MR Image Denoising” IET Image Processing, Institution of Engineering and Technology, 2011). The implementation is based on Dipy (https://dipy.org/).

usage: sct_denoising_onlm -i <file> [-p {Rician,Gaussian}] [-d <int>]
                          [-std <float>] [-o <str>] [-h] [-v <int>]
                          [-profile-time [<file>]] [-trace-memory [<folder>]]
                          [-r {0,1}]

MANDATORY ARGUMENTS

-i

Input NIFTI image to be denoised. Example: image_input.nii.gz

OPTIONAL ARGUMENTS

-p

Possible choices: Rician, Gaussian

Type of assumed noise distribution.

Default: “Rician”

-d

Threshold value for what to be considered as noise. The standard deviation of the noise is calculated for values below this limit. Not relevant if -std value is precised.

Default: 80

-std

Standard deviation of the noise. If not specified, it is calculated using a background of point of values below the threshold value (parameter -d).

-o

Name of the output NIFTI image.

MISC ARGUMENTS

-v

Possible choices: 0, 1, 2

Verbosity. 0: Display only errors/warnings, 1: Errors/warnings + info messages, 2: Debug mode.

Default: 1

-profile-time

Enables time-based profiling of the program, dumping the results to the specified file.

If no file is specified, human-readable results are placed into a ‘time_profiling_results.txt’ document in the current directory (’/home/docs/checkouts/readthedocs.org/user_builds/spinalcordtoolbox/checkouts/stable/documentation/source’). If the specified file is a .prof file, the file will instead be in binary format, ready for use with common post-profiler utilities (such as snakeviz).

-trace-memory

Enables memory tracing of the program.

When active, a measure of the peak memory (in KiB) will be output to the file peak_memory.txt. Optionally, developers can also modify the SCT code to add additional snapshot_memory() calls. These calls will ‘snapshot’ the memory usage at that moment, saving the memory trace at that point into a second file (memory_snapshots.txt).

By default, both outputs will be placed in the current directory (’/home/docs/checkouts/readthedocs.org/user_builds/spinalcordtoolbox/checkouts/stable/documentation/source’). Optionally, you may provide an alternative directory (-trace-memory <dir_name>), in which case all files will be placed in that directory instead. Note that this WILL incur an overhead to runtime, so it is generally advised that you do not run this in conjunction with the time profiler or in time-sensitive contexts.

-r

Possible choices: 0, 1

Remove temporary files.

Default: 1