昇腾社区首页
中文
注册
开发者
下载

(beta)torch_npu.contrib.module.ROIAlign

产品支持情况

产品 是否支持
[object Object]Atlas A3 训练系列产品[object Object]
[object Object]Atlas A2 训练系列产品[object Object]
[object Object]Atlas 推理系列产品[object Object]
[object Object]Atlas 训练系列产品[object Object]

功能说明

使用NPU API进行ROIAlign。

函数原型

[object Object]

参数说明

计算参数

  • output_size (Tuple): (height, width),表示输出的高和宽。

  • spatial_scale (float): 按此参数值缩放输入框。

  • sampling_ratio (int): 为每个输出样本采集的输入样本数。0表示密集采样。

  • aligned (bool): 如果值为False,使用Detectron中的原实现方式。如果值为True,可更准确地对齐结果。

    说明:[object Object] aligned=True含义: 给定一个连续坐标c,使用floor(c - 0.5)和ceil(c - 0.5)对它的两个相邻像素索引(像素模型中)进行计算。例如,c=1.3具有离散索引为[0]和[1] (从连续坐标0.5到1.5的底层信号采样)的像素邻域。但原始ROIAlign(aligned=False)在计算相邻像素索引时不会减去0.5,因此在执行双线性插值时,它使用的是未完全对齐的像素(相对于我们的像素模型有一点不对齐)。当aligned=True,首先适当缩放ROI,然后在调用ROIAlign之前将其移动-0.5。这样可以生成正确的邻域。相关验证请参见。如果ROIAlign与conv层一起使用,差异也不会对模型的性能产生影响。

计算输入

  • input_tensor(Tensor): 输入张量,格式为NCHW。
  • rois(Tensor): roi框,2D张量,第二个维度size为5,第一列表示roi框的索引,其余4列为roi框的坐标。

返回值说明

Tensor

ROIAlign计算结果。

调用示例

[object Object]