RandomIoUCrop¶
- class torchvision.transforms.v2.RandomIoUCrop(min_scale: float = 0.3, max_scale: float = 1.0, min_aspect_ratio: float = 0.5, max_aspect_ratio: float = 2.0, sampler_options: Optional[list[float]] = None, trials: int = 40)[源代码]¶
来自 “SSD: Single Shot MultiBox Detector” 的随机 IoU 裁剪变换。
此变换需要图像或视频数据以及输入中的
tv_tensors.BoundingBoxes
。警告
为了正确移除低于 IoU 阈值的边界框,RandomIoUCrop 之后必须紧跟
SanitizeBoundingBoxes
,可以紧随其后,也可以在变换管道中的稍后位置。如果输入是
torch.Tensor
或TVTensor
(例如Image
、Video
、BoundingBoxes
等),它可以具有任意数量的前导批次维度。例如,图像可以具有[..., C, H, W]
形状。边界框可以具有[..., 4]
形状。- 参数:
min_scale (float, optional) – 缩放输入尺寸的最小因子。
max_scale (float, optional) – 缩放输入尺寸的最大因子。
min_aspect_ratio (float, optional) – 裁剪后的图像或视频的最小纵横比。
max_aspect_ratio (float, optional) – 裁剪后的图像或视频的最大纵横比。
sampler_options (list of python:float, optional) – 所有边界框与裁剪后的图像或视频之间的最小 IoU (Jaccard) 重叠列表。默认值
None
,对应于[0.0, 0.1, 0.3, 0.5, 0.7, 0.9, 1.0]
trials (int, optional) – 针对给定的最小 IoU (Jaccard) 重叠值找到裁剪的尝试次数。默认值为 40。
使用
RandomIoUCrop
的示例