RoiAlign¶
RoiAlign - 22¶
版本¶
域:
main
起始版本:
22
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的运算符自 版本 22 起可用。
摘要¶
Region of Interest (RoI) align 操作,描述于 Mask R-CNN 论文 中。RoiAlign 消耗一个输入张量 X 和感兴趣区域 (rois) 来对每个 RoI 进行池化操作;它产生一个形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。
RoiAlign 的提出是为了避免在从原始图像转换为特征图以及从特征图转换为 RoI 特征的过程中,通过移除量化来实现的错位问题;在每个 RoI bin 中,通过双线性插值直接计算采样位置的值。
属性¶
coordinate_transformation_mode - STRING (默认值为
'half_pixel'
)允许的值为 ‘half_pixel’ 和 ‘output_half_pixel’。使用 ‘half_pixel’ 值将输入坐标向像素偏移 -0.5(推荐行为)。使用 ‘output_half_pixel’ 值来省略输入像素偏移(用于向后兼容行为)。
mode - STRING (默认值为
'avg'
)池化方法。支持两种模式:“avg”(平均)和“max”(最大)。默认值为“avg”。
output_height - INT (默认值为
'1'
)默认值为 1;池化输出 Y 的高度。
output_width - INT (默认值为
'1'
)默认值为 1;池化输出 Y 的宽度。
sampling_ratio - INT (默认值为
'0'
)用于计算每个池化输出 bin 的输出值的插值网格中的采样点数。如果大于 0,则使用 exactly sampling_ratio x sampling_ratio 个网格点。如果等于 0,则使用自适应数量的网格点(计算方式为 ceil(roi_width / output_width),高度同理)。默认值为 0。
spatial_scale - FLOAT (默认值为
'1.0'
)乘法的空间尺度因子,用于将 ROI 坐标从其输入空间尺度转换为池化时使用的尺度,即输入特征图 X 相对于输入图像的空间尺度。例如;默认值为 1.0f。
输入¶
X (异构) - T1
来自上一个算子的输入数据张量;形状为 (N, C, H, W) 的 4-D 特征图,其中 N 是批次大小,C 是通道数,H 和 W 是数据的宽度和高度。
rois (异构) - T1
要进行池化的 RoIs(感兴趣区域);rois 是形状为 (num_rois, 4) 的 2-D 输入,表示为 [[x1, y1, x2, y2], …]。RoIs 的坐标在输入图像的坐标系中。每个坐标集与 ‘batch_indices’ 输入具有 1:1 的对应关系。
batch_indices (异构) - T2
形状为 (num_rois,) 的 1-D 张量,每个元素表示批次中对应图像的索引。
输出¶
Y(异构)- T1
RoI 池化输出,形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。第 r 个批次元素 Y[r-1] 是对应于第 r 个 RoI X[r-1] 的池化特征图。
类型约束¶
T1 在 (
tensor(bfloat16)
,tensor(double)
,tensor(float)
,tensor(float16)
) 中将类型限制为浮点张量。
T2 包含 (
tensor(int64)
)将类型限制为整数张量。
RoiAlign - 16¶
版本¶
域:
main
since_version:
16
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的运算符自 版本 16 起可用。
摘要¶
Region of Interest (RoI) align 操作,描述于 Mask R-CNN 论文 中。RoiAlign 消耗一个输入张量 X 和感兴趣区域 (rois) 来对每个 RoI 进行池化操作;它产生一个形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。
RoiAlign 的提出是为了避免在从原始图像转换为特征图以及从特征图转换为 RoI 特征的过程中,通过移除量化来实现的错位问题;在每个 RoI bin 中,通过双线性插值直接计算采样位置的值。
属性¶
coordinate_transformation_mode - STRING (默认值为
'half_pixel'
)允许的值为 ‘half_pixel’ 和 ‘output_half_pixel’。使用 ‘half_pixel’ 值将输入坐标向像素偏移 -0.5(推荐行为)。使用 ‘output_half_pixel’ 值来省略输入像素偏移(用于向后兼容行为)。
mode - STRING (默认值为
'avg'
)池化方法。支持两种模式:“avg”(平均)和“max”(最大)。默认值为“avg”。
output_height - INT (默认值为
'1'
)默认值为 1;池化输出 Y 的高度。
output_width - INT (默认值为
'1'
)默认值为 1;池化输出 Y 的宽度。
sampling_ratio - INT (默认值为
'0'
)用于计算每个池化输出 bin 的输出值的插值网格中的采样点数。如果大于 0,则使用 exactly sampling_ratio x sampling_ratio 个网格点。如果等于 0,则使用自适应数量的网格点(计算方式为 ceil(roi_width / output_width),高度同理)。默认值为 0。
spatial_scale - FLOAT (默认值为
'1.0'
)乘法的空间尺度因子,用于将 ROI 坐标从其输入空间尺度转换为池化时使用的尺度,即输入特征图 X 相对于输入图像的空间尺度。例如;默认值为 1.0f。
输入¶
X (异构) - T1
来自上一个算子的输入数据张量;形状为 (N, C, H, W) 的 4-D 特征图,其中 N 是批次大小,C 是通道数,H 和 W 是数据的宽度和高度。
rois (异构) - T1
要进行池化的 RoIs(感兴趣区域);rois 是形状为 (num_rois, 4) 的 2-D 输入,表示为 [[x1, y1, x2, y2], …]。RoIs 的坐标在输入图像的坐标系中。每个坐标集与 ‘batch_indices’ 输入具有 1:1 的对应关系。
batch_indices (异构) - T2
形状为 (num_rois,) 的 1-D 张量,每个元素表示批次中对应图像的索引。
输出¶
Y(异构)- T1
RoI 池化输出,形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。第 r 个批次元素 Y[r-1] 是对应于第 r 个 RoI X[r-1] 的池化特征图。
类型约束¶
T1 在 (
tensor(double)
,tensor(float)
,tensor(float16)
) 中将类型限制为浮点张量。
T2 包含 (
tensor(int64)
)将类型限制为整数张量。
RoiAlign - 10¶
版本¶
域:
main
since_version:
10
函数:
False
支持级别:
SupportType.COMMON
形状推断:
True
此版本的操作符已在 版本 10 中提供。
摘要¶
Region of Interest (RoI) align 操作,描述于 Mask R-CNN 论文 中。RoiAlign 消耗一个输入张量 X 和感兴趣区域 (rois) 来对每个 RoI 进行池化操作;它产生一个形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。
RoiAlign 的提出是为了避免在从原始图像转换为特征图以及从特征图转换为 RoI 特征的过程中,通过移除量化来实现的错位问题;在每个 RoI bin 中,通过双线性插值直接计算采样位置的值。
属性¶
mode - STRING (默认值为
'avg'
)池化方法。支持两种模式:“avg”(平均)和“max”(最大)。默认值为“avg”。
output_height - INT (默认值为
'1'
)默认值为 1;池化输出 Y 的高度。
output_width - INT (默认值为
'1'
)默认值为 1;池化输出 Y 的宽度。
sampling_ratio - INT (默认值为
'0'
)用于计算每个池化输出 bin 的输出值的插值网格中的采样点数。如果大于 0,则使用 exactly sampling_ratio x sampling_ratio 个网格点。如果等于 0,则使用自适应数量的网格点(计算方式为 ceil(roi_width / output_width),高度同理)。默认值为 0。
spatial_scale - FLOAT (默认值为
'1.0'
)乘法的空间尺度因子,用于将 ROI 坐标从其输入空间尺度转换为池化时使用的尺度,即输入特征图 X 相对于输入图像的空间尺度。例如;默认值为 1.0f。
输入¶
X (异构) - T1
来自上一个算子的输入数据张量;形状为 (N, C, H, W) 的 4-D 特征图,其中 N 是批次大小,C 是通道数,H 和 W 是数据的宽度和高度。
rois (异构) - T1
要进行池化的 RoIs(感兴趣区域);rois 是形状为 (num_rois, 4) 的 2-D 输入,表示为 [[x1, y1, x2, y2], …]。RoIs 的坐标在输入图像的坐标系中。每个坐标集与 ‘batch_indices’ 输入具有 1:1 的对应关系。
batch_indices (异构) - T2
形状为 (num_rois,) 的 1-D 张量,每个元素表示批次中对应图像的索引。
输出¶
Y(异构)- T1
RoI 池化输出,形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。第 r 个批次元素 Y[r-1] 是对应于第 r 个 RoI X[r-1] 的池化特征图。
类型约束¶
T1 在 (
tensor(double)
,tensor(float)
,tensor(float16)
) 中将类型限制为浮点张量。
T2 包含 (
tensor(int64)
)将类型限制为整数张量。