当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.image.non_max_suppression用法及代码示例


贪心地按分数的降序选择边界框的子集。

用法

tf.image.non_max_suppression(
    boxes, scores, max_output_size, iou_threshold=0.5,
    score_threshold=float('-inf'), name=None
)

参数

  • boxes 形状为 [num_boxes, 4] 的二维浮点数 Tensor
  • scores 形状为[num_boxes] 的一维浮点数Tensor,表示对应于每个框(每行框)的单个分数。
  • max_output_size 一个标量整数Tensor,表示非最大抑制要选择的最大框数。
  • iou_threshold 一个 0-D 浮点张量,表示用于决定框相对于 IOU 是否重叠过多的阈值。
  • score_threshold 一个 0-D 浮点张量,表示根据分数决定何时移除框的阈值。
  • name 操作的名称(可选)。

返回

  • selected_indices 形状为 [M] 的一维整数 Tensor 表示从框张量中选择的索引,其中 M <= max_output_size

修剪掉与先前选择的框重叠的 intersection-over-union (IOU) 高的框。边界框以 [y1, x1, y2, x2] 的形式提供,其中 (y1, x1)(y2, x2) 是任何对角框角对的坐标,并且坐标可以以标准化(即位于区间 [0, 1] 中)或绝对坐标的形式提供。请注意,此算法与原点在坐标系中的位置无关。请注意,该算法对坐标系的正交变换和平移是不变的;因此,坐标系的平移或反射会导致算法选择相同的框。此操作的输出是一组整数,索引到表示所选框的边界框的输入集合中。然后可以使用tf.gather 操作获得与所选索引对应的边界框坐标。例如:

selected_indices = tf.image.non_max_suppression(
      boxes, scores, max_output_size, iou_threshold)
  selected_boxes = tf.gather(boxes, selected_indices)

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.image.non_max_suppression。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。