快捷方式

torch.nn.functional.upsample

torch.nn.functional.upsample(input, size=None, scale_factor=None, mode='nearest', align_corners=None)[source][source]

上采样输入。

提供的张量将被上采样到给定的 size 或给定的 scale_factor

警告

此函数已被弃用,推荐使用 torch.nn.functional.interpolate()。这等同于 nn.functional.interpolate(...)

注意

当在 CUDA 设备上给定张量时,此操作可能会产生非确定性梯度。有关更多信息,请参阅 可重复性

上采样使用的算法由 mode 决定。

目前支持时间、空间和体积上采样,即预期的输入形状为 3-D、4-D 或 5-D。

输入维度以以下形式解释:小批量大小 x 通道数 x [可选深度] x [可选高度] x 宽度

可用于上采样的模式有:nearestlinear (仅限 3D)、bilinearbicubic (仅限 4D)、trilinear (仅限 5D)

参数
  • input (Tensor) – 输入张量

  • size (intTuple[int] 或 Tuple[int, int] 或 Tuple[int, int, int]) – 输出空间大小。

  • scale_factor (floatTuple[float]) – 空间大小的乘数。如果是元组,则必须与输入大小匹配。

  • mode (str) – 用于上采样的算法:'nearest' | 'linear' | 'bilinear' | 'bicubic' | 'trilinear'。默认值:'nearest'

  • align_corners (bool, optional) – 从几何角度来看,我们将输入和输出的像素视为正方形而不是点。如果设置为 True,则输入和输出张量通过其角像素的中心点对齐,从而保留角像素的值。如果设置为 False,则输入和输出张量通过其角像素的角点对齐,并且插值对超出边界的值使用边缘值填充,当 scale_factor 保持相同时,此操作独立于输入大小。仅当 mode'linear''bilinear''bicubic''trilinear' 时才有效。默认值:False

注意

使用 mode='bicubic',可能会导致过冲,换句话说,它可能会为图像生成负值或大于 255 的值。如果您想减少显示图像时的过冲,请显式调用 result.clamp(min=0, max=255)

警告

使用 align_corners = True,线性插值模式(linearbilineartrilinear)不会成比例地对齐输出和输入像素,因此输出值可能取决于输入大小。这是 0.3.1 版本之前这些模式的默认行为。从那时起,默认行为是 align_corners = False。有关这如何影响输出的具体示例,请参阅 Upsample

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得问题解答

查看资源