sanitize_bounding_boxes¶
- torchvision.transforms.v2.functional.sanitize_bounding_boxes(bounding_boxes: Tensor, format: Optional[BoundingBoxFormat] = None, canvas_size: Optional[Tuple[int, int]] = None, min_size: float = 1.0, min_area: float = 1.0) Tuple[Tensor, Tensor] [source]¶
移除退化/无效的边界框,并返回相应的索引掩码。
这会移除以下边界框:
低于给定的
min_size
或min_area
:默认情况下,这也将移除退化框,例如 X2 <= X1。任何坐标超出其对应图像范围。您可能需要先调用
clamp_bounding_boxes()
,以避免不必要的移除。
建议在流水线末尾调用它,在将输入传递给模型之前。如果调用了
RandomIoUCrop
,则必须调用此转换。如果您想格外小心,可以在所有可能修改边界框的转换之后调用它,但在大多数情况下,在末尾调用一次就足够了。- 参数:
bounding_boxes (Tensor 或
BoundingBoxes
) – 要清理的边界框。format (str 或
BoundingBoxFormat
, 可选) – 边界框的格式。如果bounding_boxes
是BoundingBoxes
对象,则必须保留为 None。canvas_size (*python:int 元组*, *可选*) – 边界框的 canvas_size(对应图像/视频的大小)。如果
bounding_boxes
是BoundingBoxes
对象,则必须保留为 None。min_size (float, 可选) –
min_area (float, 可选) –
- 返回:
有效边界框的子集,以及相应的索引掩码。然后,该掩码可用于子集化与边界框关联的其他张量(例如,标签)。
- 返回类型:
out (Tensors 元组)