接口功能:对输入特征图按 ROI(感兴趣区域)进行池化,在每个 ROI 内按空间划分为
[object Object]个格子,对每个格子做最大池化,并输出池化结果及最大值在通道内的一维索引(argmax)。计算公式:
输入特征图 的 shape 为 ,ROI 张量 的 shape 为 ,每行表示 。标量参数为 、(spatial_scale)以及 、。下标 表示 ROI 索引, 表示通道, 表示池化格点。
ROI 映射到特征图:将 ROI 坐标乘以 spatial_scale 得到特征图上的浮点区间:
若 或 ,该 ROI 的 全为 0, 全为 -1。
Bin 步长与区间:每个池化格 (ph, pw) 对应 ROI 内一个 bin,步长与浮点区间为:
取整并裁剪到 :
其中 。若 或 ,该 bin 为空:,。
池化输出与 Argmax:记 ,bin 区域 ,则
(空 时为 0。)
为 bin 内最大值位置(多解取第一个);空 为 -1。
输出 Shape:
[object Object]undefined
每个算子分为,必须先调用“aclnnRoiPoolingWithArgMaxGetWorkspaceSize”接口获取计算所需 workspace 大小以及包含了算子计算流程的执行器,再调用“aclnnRoiPoolingWithArgMax”接口执行计算。
[object Object]
[object Object]
- 确定性计算:
- aclnnRoiPoolingWithArgMax 默认确定性实现。
示例代码如下,仅供参考,具体编译和执行过程请参考。实际调用时需先通过 opgen 生成 [object Object],若生成的头文件或接口签名不同,请以生成接口为准。
[object Object]