文件最后提交记录最后更新时间
10 天前
10 天前
10 天前
2 个月前
2 个月前
21 天前
README.md

RoiAlignV2

产品支持情况

产品 是否支持
Atlas A2 训练系列产品/Atlas A2 推理系列产品

功能说明

  • 算子功能:对输入特征图执行ROI Align操作,对每个感兴趣区域(ROI)进行双线性插值采样,输出固定大小的特征图。
  • 输入ROI坐标格式为 <batch_index, x1, y1, x2, y2>(左上角和右下角坐标),在代码中以一维数组形式存储([numRois, 5] 维度展开为长度numRois*5的一维数据)。
  • 计算公式:
    • 输入节点:

      • features (shape[N, C, H, W], FLOAT32) - 输入特征图
      • rois (shape[numRois, 5], FLOAT32) - 感兴趣区域坐标(batch_index, x1, y1, x2, y2)
    • 计算节点:

      • Step1: 将ROI坐标乘以spatial_scale进行缩放,并转换为(x, y, w, h)格式;
      • Step2: 根据pooled_height和pooled_width将ROI区域划分为均匀的bin,计算每个bin的宽高(bin_w, bin_h);
      • Step3: 根据sampling_ratio确定每个bin内的采样网格大小(grid_h, grid_w),若sampling_ratio > 0则固定为该值,否则自适应计算(ceil(roi_h / pooled_height), ceil(roi_w / pooled_width));
      • Step4: 对每个bin内的每个采样点,计算其在特征图上的坐标,通过双线性插值获取特征值;
      • Step5: 对每个bin内所有采样点的特征值取平均,作为该位置的输出值;
      • 重复上述步骤直至所有ROI的所有通道处理完成。
    • 输出节点:

      • output (shape[numRois, C, pooled_height, pooled_width], FLOAT32) - 对齐后的ROI特征图

参数说明

参数名 输入/输出/属性 描述 数据类型 数据格式
features 输入 输入特征图,shape [N, C, H, W]。 FLOAT32 ND
rois 输入 感兴趣区域坐标,shape [numRois, 5],每行为(batch_index, x1, y1, x2, y2)。 FLOAT32 ND
output 输出 对齐后的ROI特征图,shape [numRois, C, pooled_height, pooled_width]。 FLOAT32 ND
pooled_height 属性(可选) 输出特征图的高度。 INT32 -
pooled_width 属性(可选) 输出特征图的宽度。 INT32 -
spatial_scale 属性(可选) 空间缩放因子,用于将ROI坐标映射到特征图尺度。 FLOAT -
sampling_ratio 属性(可选) 每个bin的采样点数。大于0时固定为该值,否则自适应计算。 INT32 -

约束说明

  • 目前只支持float32输入
  • 目前只支持ascend910b

调用说明

调用方式 调用样例 说明
aclnn调用 test_aclnn_roi_align_v2 通过aclnnRoiAlignV2接口方式调用RoiAlignV2算子。