| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 1 个月前 |
AnchorResponseFlags
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR/Ascend 950DT | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | × |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | × |
| Atlas 200I/500 A2 推理产品 | × |
| Atlas 推理系列产品 | × |
| Atlas 训练系列产品 | × |
功能说明
-
算子功能:在目标检测网络中生成锚框(anchor)的响应标志。根据真值框(ground truth bounding boxes)的中心点位置,确定哪些锚框网格位置负责检测目标,并生成对应的标志位。
-
计算公式:
cxi=(x1i+x2i)×0.5cx_i = (x1_i + x2_i) \times 0.5
cyi=(y1i+y2i)×0.5cy_i = (y1_i + y2_i) \times 0.5
grid_xi=⌊cxi/stride_h⌋grid\_x_i = \lfloor cx_i / stride\_h \rfloor
grid_yi=⌊cyi/stride_w⌋grid\_y_i = \lfloor cy_i / stride\_w \rfloor
grid_idxi=grid_yi×feat_w+grid_xigrid\_idx_i = grid\_y_i \times feat\_w + grid\_x_i
responsible_grid[grid_idxi]=1responsible\_grid[grid\_idx_i] = 1
output=repeat(responsible_grid,num_base_anchors)output = repeat(responsible\_grid, num\_base\_anchors)
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| gt_bboxes | 输入 | 真值框坐标,shape为[N, 4],格式为[x1, y1, x2, y2]。 | FLOAT、FLOAT16 | ND |
| flags | 输出 | 锚框响应标志,shape为[feat_h * feat_w * num_base_anchors],值为0或1。 | UINT8 | ND |
| featmap_size | 属性 | 特征图大小,长度为2的列表[feat_h, feat_w]。 | ListInt | - |
| strides | 属性 | 步长,长度为2的列表[stride_h, stride_w],值必须为正整数。 | ListInt | - |
| num_base_anchors | 属性 | 每个网格位置的锚框数量,正整数。 | Int | - |
约束说明
- 输入 gt_bboxes 必须为 2D tensor,第二维必须为 4。
- featmap_size 和 strides 必须为长度为 2 的列表。
- strides 中的值必须为正整数(不包含 0)。
- num_base_anchors 不能为负数。
- 输出 dtype 固定为 uint8,不随输入 dtype 变化。
- 当 gt_bboxes 为空(N=0)时,输出全零 tensor。
- 中心点映射后超出特征图范围时,grid 索引会被裁剪到有效范围内。
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| 图模式调用 | test_geir_anchor_response_flags | 参见算子调用完成算子编译和验证。 |