ps_roi_align¶
- torchvision.ops.ps_roi_align(input: Tensor, boxes: Tensor, output_size: int, spatial_scale: float = 1.0, sampling_ratio: int = - 1) Tensor [源]¶
执行 Light-Head R-CNN 中提到的位置敏感区域(RoI)对齐(Align)操作。
- 参数:
input (Tensor[N, C, H, W]) – 输入张量,即包含
N
个元素的批次。每个元素包含维度为H x W
的C
个特征图。boxes (Tensor[K, 5] 或 List[Tensor[L, 4]]) – 边界框坐标,格式为 (x1, y1, x2, y2),表示将从中提取区域的位置。坐标必须满足
0 <= x1 < x2
和0 <= y1 < y2
。如果传入单个 Tensor,则第一列应包含批次中相应元素的索引,即介于[0, N - 1]
之间的数字。如果传入 Tensor 列表,则每个 Tensor 对应批次中元素 i 的边界框。output_size (int 或 Tuple[int, int]) – 池化操作后的输出尺寸(以 bin 或像素为单位),格式为 (height, width)。
spatial_scale (float) – 将边界框坐标映射到输入坐标的缩放因子。例如,如果您的边界框是基于 224x224 图像定义的,而您的输入是 112x112 的特征图(由原始图像缩放 0.5 倍得到),您会希望将此值设置为 0.5。默认值:1.0
sampling_ratio (int) – 插值网格中的采样点数量,用于计算每个池化输出 bin 的输出值。如果 > 0,则每个 bin 恰好使用
sampling_ratio x sampling_ratio
个采样点。如果 <= 0,则使用自适应数量的网格点(计算方式为ceil(roi_width / output_width)
,高度同理)。默认值:-1
- 返回值:
池化后的 RoI
- 返回类型:
Tensor[K, C / (output_size[0] * output_size[1]), output_size[0], output_size[1]]