非最大抑制

非最大抑制 - 11

版本

  • 名称: NonMaxSuppression (GitHub)

  • 域名: main

  • since_version: 11

  • 函数: False

  • support_level: SupportType.COMMON

  • 形状推断: True

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

摘要

过滤掉与先前选择的框具有高交并比(IOU)重叠的框。 得分低于score_threshold的边界框将被移除。边界框格式由属性center_point_box指示。 请注意,该算法对坐标系中原点的位置不敏感,并且更一般地,对坐标系的正交变换和平移是不变的;因此,坐标系的平移或反射会导致算法选择相同的框。 selected_indices输出是一组整数,索引到表示所选框的边界框输入集合中。 然后可以使用Gather或GatherND操作获取与所选索引对应的边界框坐标。

属性

  • center_point_box - INT (默认值为 '0'):

    整数表示框数据的格式。默认值为0。0 - 框数据以[y1, x1, y2, x2]的形式提供,其中(y1, x1)和(y2, x2)是框角任意对角对的坐标,坐标可以归一化(即位于区间[0, 1]内)或绝对提供。主要用于TF模型。1 - 框数据以[x_center, y_center, width, height]的形式提供。主要用于Pytorch模型。

输入

介于2到5个输入之间。

  • boxes(异构) - tensor(float):

    一个形状为 [num_batches, spatial_dimension, 4] 的输入张量。单个框的数据格式由 center_point_box 指示。

  • scores (异构) - tensor(float):

    一个形状为 [num_batches, num_classes, spatial_dimension] 的输入张量

  • max_output_boxes_per_class (可选, 异构) - tensor(int64):

    表示每批次每类最多可选择的框数的整数。它是一个标量。默认为0,表示没有输出。

  • iou_threshold(可选,异构) - tensor(float):

    表示用于决定框是否相对于IOU重叠过多的阈值的浮点数。它是标量。取值范围[0, 1]。默认为0。

  • score_threshold (可选, 异构) - tensor(float):

    表示基于分数决定何时移除框的阈值的浮点数。它是一个标量。

输出

  • selected_indices (异构) - tensor(int64):

    从boxes张量中选择的索引。[num_selected_indices, 3],所选索引格式为[batch_index, class_index, box_index]。

非最大抑制 - 10

版本

  • 名称: NonMaxSuppression (GitHub)

  • 域名: main

  • since_version: 10

  • 函数: False

  • support_level: SupportType.COMMON

  • 形状推断: True

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

摘要

过滤掉与先前选择的框具有高交并比(IOU)重叠的框。 得分低于score_threshold的边界框将被移除。边界框格式由属性center_point_box指示。 请注意,该算法对坐标系中原点的位置不敏感,并且更一般地,对坐标系的正交变换和平移是不变的;因此,坐标系的平移或反射会导致算法选择相同的框。 selected_indices输出是一组整数,索引到表示所选框的边界框输入集合中。 然后可以使用Gather或GatherND操作获取与所选索引对应的边界框坐标。

属性

  • center_point_box - INT (默认值为 '0'):

    整数表示框数据的格式。默认值为0。0 - 框数据以[y1, x1, y2, x2]的形式提供,其中(y1, x1)和(y2, x2)是框角任意对角对的坐标,坐标可以归一化(即位于区间[0, 1]内)或绝对提供。主要用于TF模型。1 - 框数据以[x_center, y_center, width, height]的形式提供。主要用于Pytorch模型。

输入

介于2到5个输入之间。

  • boxes(异构) - tensor(float):

    一个形状为 [num_batches, spatial_dimension, 4] 的输入张量。单个框的数据格式由 center_point_box 指示。

  • scores (异构) - tensor(float):

    一个形状为 [num_batches, num_classes, spatial_dimension] 的输入张量

  • max_output_boxes_per_class (可选, 异构) - tensor(int64):

    表示每批次每类最多可选择的框数的整数。它是一个标量。默认为0,表示没有输出。

  • iou_threshold (可选, 异构) - tensor(float):

    表示用于决定框是否相对于IOU重叠过多的阈值的浮点数。它是标量。值范围[0, 1]。默认为0。

  • score_threshold (可选, 异构) - tensor(float):

    表示基于分数决定何时移除框的阈值的浮点数。它是一个标量。

输出

  • selected_indices (异构) - tensor(int64):

    从boxes张量中选择的索引。[num_selected_indices, 3],所选索引的格式为[batch_index, class_index, box_index]。