CANN/ops-cv NMS掩码算子

📅 2026/7/15 1:52:31 👁️ 阅读次数 📝 编程学习
CANN/ops-cv NMS掩码算子

NMSWithMask

【免费下载链接】ops-cv本项目是CANN提供的图像处理、目标检测相关的算子库,实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-cv

产品支持情况

产品是否支持
Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品×
Atlas A2 训练系列产品/Atlas A2 推理系列产品
Atlas 200I/500 A2 推理产品×
Atlas 推理系列产品×
Atlas 训练系列产品×

功能说明

  • 算子功能:对边界框进行非极大值抑制(NMS)处理,输出经过NMS后的选中的框、索引以及掩码。用于目标检测后处理,去除重复检测的框。

参数说明

参数名输入/输出/属性描述数据类型数据格式
box_scores输入二维 Tensor,其 shape 为 (num_boxes, 5),其中 5 表示 [y1, x1, y2, x2, score],num_boxes不超过39936。FLOAT16、FLOAT、BF16ND
iou_threshold属性浮点数,表示用于判断候选框是否在 IoU(交并比)上重叠过多的阈值。默认值为 0.5。FLOAT-
selected_boxes输出二维 Tensor,其 shape 为 (num_boxes, 5),和原输入的box_scores一样。FLOAT16、FLOAT、BF16ND
selected_idx输出一维 Tensor,其 shape 为 (num_boxes),表示0到 num_boxes - 1 的序列数。INT32ND
selected_mask输出一维 Tensor,其 shape 为 (num_boxes),表示目标框的掩码情况。UINT8ND

约束说明

  • 输入的 box_scores 最后一维必须为 5,依次表示 [y1, x1, y2, x2, score]。
  • 输出 selected_boxes、selected_idx、selected_mask 的 batch 维度与输入 box_scores 的 batch 维度保持一致。
  • 在 FLOAT16 或 BF16 场景下,算子进行排序和计算对比标杆可能会引入计算误差。

调用说明

调用方式样例代码说明
图模式-通过算子IR构图方式调用NMSWithMask算子。

【免费下载链接】ops-cv本项目是CANN提供的图像处理、目标检测相关的算子库,实现网络在NPU上加速计算。项目地址: https://gitcode.com/cann/ops-cv

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考