patch_denoise.denoise.raw_svt#

patch_denoise.denoise.raw_svt(input_data, patch_shape, patch_overlap, mask_threshold=50, mask=None, threshold=1.0, recombination='weighted', progbar=None)[source]#

Raw singular value thresholding.

Parameters:
  • input_data (numpy.ndarray) – The input data to denoise. It should be a ND array, and the last dimension should a dynamically varying one (eg time).

  • progbar (tqdm.tqdm Progress bar, optiononal) – An existing Progressbar, default (None) will create a new one.

  • patch_shape (tuple) – The patch shape

  • patch_overlap (tuple) – the overlap of each pixel

  • recombination (str, optional) – The recombination method of the patch. “weighted”, “average” or “center”. default “weighted”.

  • mask (numpy.ndarray) – A boolean array, defining a ROI in the volume. Only patch with voxels in the ROI will be processed.

  • mask_threshold (int) – percentage of the path that has to be in the mask so that the patch is processed. if mask_threshold = -1, all the patch are processed, if mask_threshold=100, all the voxels of the patch needs to be in the mask

  • threshold (float) – threshold use for singular value hard thresholding.

Returns:

numpy.ndarray: The denoised sequence of volume numpy.ndarray: The weight of each pixel after the processing. numpy.ndarray: If possible, the noise variance distribution in the volume.

Return type:

tuple

Notes

Simple raw hard thresholding of singular values. TODO: add support for soft thresholding.