RoiAlign

RoiAlign - 22

版本

  • 名称: RoiAlign (GitHub)

  • 域名: main

  • since_version: 22

  • 函数: False

  • support_level: SupportType.COMMON

  • 形状推断: True

此版本的运算符自版本22起可用。

摘要

Mask R-CNN论文中描述的兴趣区域(RoI)对齐操作。 RoiAlign消耗一个输入张量X和兴趣区域(rois)以在每个RoI上应用池化;它生成一个形状为(num_rois, C, output_height, output_width)的4-D张量。

RoiAlign 被提出来以避免在从原始图像转换为特征图和从特征图转换为 RoI 特征时的量化导致的对齐错误;在每个 ROI 区域中,采样位置的值通过双线性插值直接计算。

属性

  • coordinate_transformation_mode - 字符串 (默认值为 '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'):

    用于计算每个池化输出箱的输出值的插值网格中的采样点数。如果 > 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维特征图,其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。

  • rois (异构) - T1:

    RoIs(感兴趣区域)用于池化;rois 是一个形状为 (num_rois, 4) 的二维输入,格式为 [[x1, y1, x2, y2], …]。RoIs 的坐标位于输入图像的坐标系中。每个坐标集与 'batch_indices' 输入有一一对应的关系。

  • batch_indices (异构) - T2:

    形状为 (num_rois,) 的一维张量,每个元素表示批次中对应图像的索引。

输出

  • 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

  • support_level: SupportType.COMMON

  • 形状推断: True

此版本的运算符自版本16起可用。

摘要

Mask R-CNN论文中描述的兴趣区域(RoI)对齐操作。 RoiAlign消耗一个输入张量X和兴趣区域(rois)以在每个RoI上应用池化;它生成一个形状为(num_rois, C, output_height, output_width)的4-D张量。

RoiAlign 被提出来以避免在从原始图像转换为特征图和从特征图转换为 RoI 特征时的量化导致的对齐错误;在每个 ROI 区域中,采样位置的值通过双线性插值直接计算。

属性

  • coordinate_transformation_mode - 字符串 (默认值为 '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'):

    用于计算每个池化输出箱的输出值的插值网格中的采样点数。如果 > 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维特征图,其中N是批量大小,C是通道数,H和W是数据的高度和宽度。

  • rois (异构) - T1:

    RoIs(感兴趣区域)用于池化;rois 是一个形状为 (num_rois, 4) 的二维输入,格式为 [[x1, y1, x2, y2], …]。RoIs 的坐标在输入图像的坐标系中。每个坐标集与 'batch_indices' 输入有一一对应的关系。

  • batch_indices (异构) - T2:

    形状为 (num_rois,) 的一维张量,每个元素表示批次中对应图像的索引。

输出

  • 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

  • support_level: SupportType.COMMON

  • 形状推断: True

此版本的运算符自版本10起可用。

总结

Mask R-CNN论文中描述的兴趣区域(RoI)对齐操作。 RoiAlign消耗一个输入张量X和兴趣区域(rois)以在每个RoI上应用池化;它生成一个形状为(num_rois, C, output_height, output_width)的4-D张量。

RoiAlign 被提出来以避免在从原始图像转换为特征图和从特征图转换为 RoI 特征时的量化导致的对齐错误;在每个 ROI 区域中,采样位置的值通过双线性插值直接计算。

属性

  • mode - STRING (默认是 'avg'):

    池化方法。支持两种模式:'avg' 和 'max'。默认为 'avg'。

  • output_height - INT (默认值为 '1'):

    默认值为1;池化输出Y的高度。

  • output_width - INT (默认值为 '1'):

    默认值为1;池化输出Y的宽度。

  • sampling_ratio - INT (默认值为 '0'):

    用于计算每个池化输出箱的输出值的插值网格中的采样点数。如果 > 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维特征图,其中 N 是批量大小,C 是通道数,H 和 W 是数据的高度和宽度。

  • rois (异构) - T1:

    RoIs(感兴趣区域)用于池化;rois 是一个形状为 (num_rois, 4) 的二维输入,格式为 [[x1, y1, x2, y2], …]。RoIs 的坐标位于输入图像的坐标系中。每个坐标集与 'batch_indices' 输入有一一对应的关系。

  • batch_indices (异构) - T2:

    形状为 (num_rois,) 的一维张量,每个元素表示批次中对应图像的索引。

输出

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

    将类型限制为整数张量。