当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cucim.skimage.restoration.calibrate_denoiser用法及代码示例


用法:

cucim.skimage.restoration.calibrate_denoiser(image, denoise_function, denoise_parameters, *, stride=4, approximate_loss=True, extra_output=False)

校准去噪函数并返回最佳J-invariant版本。

使用为输入图像去噪设置的最佳参数值对返回的函数进行部分评估。

参数

imagendarray

要降噪的输入数据(使用 img_as_float 转换)。

denoise_function函数

要校准的去噪函数。

denoise_parameters列表的字典

denoise_function 要校准的参数范围。

stride整数,可选

用于将denoise_function 转换为J-invariance 的屏蔽过程中使用的步幅。

approximate_loss布尔型,可选

是否通过仅在图像的一个蒙版版本上计算来近似用于评估降噪器的 self-supervised 损失。如果为 False,则运行时间将是 stride**image.ndim 的一个因子。

extra_output布尔型,可选

如果为 True,则返回除校准去噪函数之外的参数和损失

返回

best_denoise_function函数

denoise_function 的最佳 J-invariant 版本。

如果 extra_output 为 True,则还返回以下元组:
(parameters_tested, losses)元组(dict 列表,int 列表)

denoise_function 测试的参数列表,作为 parameters_tested 中每组参数的 kwargs Self-supervised 损失的字典。

注意

校准过程使用 self-supervised mean-square-error 损失来评估 denoise_function 的 J-invariant 版本的性能。 self-supervised 损失的最小化器也是ground-truth 损失的最小化器(即真正的 MSE 误差)[1]。返回的函数可用于原始噪声图像或具有相似特征的其他图像。

增加步幅会增加best_denoise_function的性能

以增加其运行时间为代价。它对校准的运行时间没有影响。

参考

1

J. Batson & L. Royer. Noise2Self: Blind Denoising by Self-Supervision, International Conference on Machine Learning, p. 524-533 (2019).

例子

>>> import cupy as cp
>>> from cucim.skimage import color
>>> from skimage import data
>>> from cucim.skimage.restoration import (denoise_tv_chambolle,
...                                          calibrate_denoiser)
>>> img = color.rgb2gray(cp.array(data.astronaut()[:50, :50]))
>>> noisy = img + 0.5 * img.std() * cp.random.randn(*img.shape)
>>> parameters = {'weight': cp.arange(0.01, 0.5, 0.05)}
>>> denoising_function = calibrate_denoiser(noisy, denoise_tv_chambolle,
...                                         denoise_parameters=parameters)
>>> denoised_img = denoising_function(img)

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cucim.skimage.restoration.calibrate_denoiser。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。