Shortcuts

ScaleJitter

class torchvision.transforms.v2.ScaleJitter(target_size: Tuple[int, int], scale_range: Tuple[float, float] = (0.1, 2.0), interpolation: Union[InterpolationMode, int] = InterpolationMode.BILINEAR, antialias: Optional[bool] = True)[source]

根据“Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation”对输入执行大规模抖动。

如果输入是torch.TensorTVTensor(例如Image视频BoundingBoxes等), 它可以有任意数量的前导批次维度。例如, 图像可以有[..., C, H, W]形状。边界框可以有[..., 4]形状。

Parameters:
  • target_size (python:int的元组) – 目标大小。此参数定义了抖动的基准比例, 例如 min(target_size[0] / width, target_size[1] / height)

  • scale_range (python:float 的元组, 可选) – 比例范围的最小值和最大值。默认值为 (0.1, 2.0)

  • 插值 (InterpolationMode, 可选) – 由 torchvision.transforms.InterpolationMode 定义的所需插值枚举。默认值为 InterpolationMode.BILINEAR。 如果输入是张量,则仅支持 InterpolationMode.NEAREST, InterpolationMode.NEAREST_EXACT, InterpolationMode.BILINEARInterpolationMode.BICUBIC。 也接受相应的 Pillow 整数常量,例如 PIL.Image.BILINEAR

  • antialias (bool, optional) –

    是否应用抗锯齿。 它只影响具有双线性或双三次模式的张量,否则会被忽略:在PIL图像上,双线性或双三次模式总是应用抗锯齿;在其他模式(对于PIL图像和张量)上,抗锯齿没有意义,此参数会被忽略。 可能的值为:

    • True (默认): 将对双线性或双三次模式应用抗锯齿。 其他模式不受影响。这可能是你想要使用的。

    • False: 不会对任何模式的张量应用抗锯齿。PIL 图像在双线性或双三次模式下仍然应用抗锯齿,因为 PIL不支持无抗锯齿。

    • None: 对于张量等同于False,对于 PIL图像等同于True。此值存在是为了兼容旧版本,除非你确实知道自己在做什么,否则你可能不想使用它。

    默认值在v0.17版本中从None更改为True,以使PIL和Tensor后端保持一致。