RoiAlign

RoiAlign - 22

版本

  • 名称: RoiAlign (GitHub)

  • : 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

版本

  • 名称: RoiAlign (GitHub)

  • : 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

版本

  • 名称: RoiAlign (GitHub)

  • : 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) )

    将类型限制为整数张量。