nvidia.dali.fn.gaussian_blur#
- nvidia.dali.fn.gaussian_blur(__input, /, *, bytes_per_sample_hint=[0], dtype=None, preserve=False, sigma=[0.0], window_size=[0], device=None, name=None)#
对输入应用高斯模糊。
高斯模糊通过应用具有高斯核的卷积来计算,可以使用 windows_size 和
sigma
进行参数化。如果仅指定 sigma,则高斯核的半径默认为ceil(3 * sigma)
,因此核窗口大小为2 * ceil(3 * sigma) + 1
。如果仅提供窗口大小,则 sigma 通过使用以下公式计算
radius = (window_size - 1) / 2 sigma = (radius - 1) * 0.3 + 0.8
sigma 和核窗口大小可以指定为所有数据轴的一个值,也可以为每个数据轴指定一个值。
当为每个轴指定 sigma 或窗口大小时,轴的提供方式与布局相同,从最外层到最内层。
注意
通道
C
和帧F
维度不被视为数据轴。如果存在通道,则仅支持通道优先或通道最后的输入。例如,对于
HWC
输入,您可以提供sigma=1.0
或sigma=(1.0, 2.0)
,因为有两个数据轴 H 和 W。可以按每个样本张量提供相同的输入。
此操作符允许序列输入并支持体积数据。
- 支持的后端
‘cpu’
‘gpu’
- 参数:
__input¶ (TensorList) – 操作符的输入。
- 关键词参数:
bytes_per_sample_hint¶ (int 或 list of int, 可选, 默认 = [0]) –
输出大小提示,以字节/样本为单位。
如果指定,则操作符的输出(位于 GPU 或页锁定主机内存中)将被预先分配以容纳此大小的样本批次。
dtype¶ (
nvidia.dali.types.DALIDataType
, 可选) –输出数据类型。
支持的类型:FLOAT。如果未设置,则使用输入类型。
preserve¶ (bool, 可选, 默认 = False) – 阻止操作符从图中删除,即使其输出未使用。
sigma¶ (float 或 list of float 或 TensorList of float, 可选, 默认 = [0.0]) –
高斯核的 Sigma 值。
支持
per-frame
输入。window_size¶ (int 或 list of int 或 TensorList of int, 可选, 默认 = [0]) –
内核的直径。
支持
per-frame
输入。
另请参阅