RoiAlign

RoiAlign - 22

版本

  • 名称: RoiAlign (GitHub)

  • : main

  • 起始版本: 22

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

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

摘要

Mask R-CNN 论文中描述的感兴趣区域 (RoI) 对齐操作。RoiAlign 接收一个输入张量 X 和感兴趣区域 (rois),并对每个 RoI 进行池化;它生成一个形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。

RoiAlign 旨在通过消除从原始图像到特征图以及从特征图到 RoI 特征转换过程中的量化,从而避免错位;在每个 ROI bin 中,采样位置的值通过双线性插值直接计算。

属性

  • coordinate_transformation_mode - 字符串(默认为 'half_pixel'

    允许值为 'half_pixel' 和 'output_half_pixel'。使用值 'half_pixel' 将输入坐标的像素偏移量设为 -0.5(推荐行为)。使用值 'output_half_pixel' 忽略输入的像素偏移量(用于向后兼容行为)。

  • mode - 字符串(默认为 'avg'

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

  • output_height - 整型(默认为 '1'

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

  • output_width - 整型(默认为 '1'

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

  • sampling_ratio - 整型(默认为 '0'

    用于计算每个池化输出 bin 的输出值的插值网格中的采样点数量。如果 > 0,则精确使用 sampling_ratio x sampling_ratio 个网格点。如果 == 0,则使用自适应数量的网格点(计算方式为 ceil(roi_width / output_width),高度同理)。默认为 0。

  • spatial_scale - 浮点型(默认为 '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' 输入一一对应。

  • 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 起可用。

摘要

Mask R-CNN 论文中描述的感兴趣区域 (RoI) 对齐操作。RoiAlign 接收一个输入张量 X 和感兴趣区域 (rois),并对每个 RoI 进行池化;它生成一个形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。

RoiAlign 旨在通过消除从原始图像到特征图以及从特征图到 RoI 特征转换过程中的量化,从而避免错位;在每个 ROI bin 中,采样位置的值通过双线性插值直接计算。

属性

  • coordinate_transformation_mode - 字符串(默认为 'half_pixel'

    允许值为 'half_pixel' 和 'output_half_pixel'。使用值 'half_pixel' 将输入坐标的像素偏移量设为 -0.5(推荐行为)。使用值 'output_half_pixel' 忽略输入的像素偏移量(用于向后兼容行为)。

  • mode - 字符串(默认为 'avg'

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

  • output_height - 整型(默认为 '1'

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

  • output_width - 整型(默认为 '1'

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

  • sampling_ratio - 整型(默认为 '0'

    用于计算每个池化输出 bin 的输出值的插值网格中的采样点数量。如果 > 0,则精确使用 sampling_ratio x sampling_ratio 个网格点。如果 == 0,则使用自适应数量的网格点(计算方式为 ceil(roi_width / output_width),高度同理)。默认为 0。

  • spatial_scale - 浮点型(默认为 '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' 输入一一对应。

  • 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 中提供。

摘要

Mask R-CNN 论文中描述的感兴趣区域 (RoI) 对齐操作。RoiAlign 接收一个输入张量 X 和感兴趣区域 (rois),并对每个 RoI 进行池化;它生成一个形状为 (num_rois, C, output_height, output_width) 的 4-D 张量。

RoiAlign 旨在通过消除从原始图像到特征图以及从特征图到 RoI 特征转换过程中的量化,从而避免错位;在每个 ROI bin 中,采样位置的值通过双线性插值直接计算。

属性

  • mode - 字符串(默认为 'avg'

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

  • output_height - 整型(默认为 '1'

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

  • output_width - 整型(默认为 '1'

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

  • sampling_ratio - 整型(默认为 '0'

    用于计算每个池化输出 bin 的输出值的插值网格中的采样点数量。如果 > 0,则精确使用 sampling_ratio x sampling_ratio 个网格点。如果 == 0,则使用自适应数量的网格点(计算方式为 ceil(roi_width / output_width),高度同理)。默认为 0。

  • spatial_scale - 浮点型(默认为 '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' 输入一一对应。

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

    将类型限制为整型张量。