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” 對輸入執行大規模抖動 (Large Scale Jitter)。
如果輸入是
torch.Tensor或TVTensor(例如Image,Video,BoundingBoxes等),它可以有任意數量的批處理維度前導。例如,影像的形狀可以是[..., C, H, W]。邊界框的形狀可以是[..., 4]。- 引數:
target_size (tuple of python:int) – 目標尺寸。此引數定義了抖動的基礎尺度,例如
min(target_size[0] / width, target_size[1] / height)。scale_range (tuple of python:float, optional) – 尺度範圍的最小值和最大值。預設值:
(0.1, 2.0)。interpolation (InterpolationMode, optional) – 所需的插值模式,由
torchvision.transforms.InterpolationMode定義。預設值為InterpolationMode.BILINEAR。如果輸入是 Tensor,僅支援InterpolationMode.NEAREST,InterpolationMode.NEAREST_EXACT,InterpolationMode.BILINEAR和InterpolationMode.BICUBIC。相應的 Pillow 整數常量(例如PIL.Image.BILINEAR)也接受。antialias (bool, optional) –
是否應用抗鋸齒。它僅影響使用雙線性或雙三次模式的 tensors,否則將被忽略:對於 PIL 影像,在雙線性或雙三次模式下總是應用抗鋸齒;對於其他模式(PIL 影像和 tensor),抗鋸齒沒有意義,此引數將被忽略。可能的值為
True(預設值):對雙線性或雙三次模式應用抗鋸齒。其他模式不受影響。這可能是您希望使用的值。False:對任何模式下的 tensor 都不應用抗鋸齒。PIL 影像在雙線性或雙三次模式下仍然應用抗鋸齒,因為 PIL 不支援不抗鋸齒。None:對於 tensor 相當於False,對於 PIL 影像相當於True。此值出於歷史原因存在,除非您清楚自己在做什麼,否則可能不希望使用它。
預設值在 v0.17 中從
None更改為True,以使 PIL 和 Tensor 後端保持一致。