megengine.functional.vision.roi_align

roi_align(inp, rois, output_shape, mode='average', spatial_scale=1.0, sample_points=2, aligned=True)[源代码]

对输入进行 roi align。

参数
  • inp – 表示输入特征的张量,形状为 (N, C, H, W)

  • rois(N, 5) 的小方框。第一列为方框的索引,其余四列的格式是 xyxy

  • output_shape – 输出的 rois 特征的形状 (height, width)

  • mode – “max” 或者 “average”,如同最大值/平均池化一样使用最大值/平均 align。默认:”average”

  • spatial_scale – 使用这个数值放缩输入框。默认:1.0

  • sample_points – 每个输出样本要采取的输入样本数。0 表示密集采样。默认:2

  • aligned – 是否对齐输入特征,如果 aligned=True,首先选取合适的参数放缩 ROI 然后以 -0.5 的偏移量进行偏移。默认:True

返回

输出张量。

例如:

import numpy as np
from megengine import tensor
import megengine.functional as F

np.random.seed(42)
inp = tensor(np.random.randn(1, 1, 128, 128))
rois = tensor(np.random.random((4, 5)))
y = F.vision.roi_align(inp, rois, (2, 2))
print(y.numpy()[0].round(decimals=4))

输出:

[[[0.175  0.175 ]
  [0.1359 0.1359]]]